Prerequisite
- 알림을 수신할 사용 가능한 E-mail이 필요합니다.
-
알림을 수신할 Slack 워크스페이스 및 채널이 필요합니다.
-
SNS 주제 및 구독 생성에 대한 권한이 필요합니다.
-
AWS EventBridge 규칙 생성에 대한 권한이 필요합니다.
-
Chatbot 워크스페이스 및 채널 구성에 대한 권한이 필요합니다.
Process
Amazon SNS 설정
- Amazon SNS Console로 접속 후 [주제 생성]을 클릭합니다.
- 유형에서 [표준]을 선택 후 주제의 이름을 기입하고 하단의 [주제 생성]을 클릭합니다.
- 생성한 주제에서 하단 우측의 [구독 생성]을 클릭합니다.
- 생성한 주제에 대한 ARN을 선택하고 프로토콜에서 이메일을 선택 후 알림을 수신할 이메일 주소를 기입합니다.
- 구독 생성 시 기입하였던 이메일로 확인 메일이 발송되며, [Confirm Subscription]을 클릭하여 확인합니다.
-
구독이 정상적으로 되었는지 확인합니다.
Amazon EventBridge 설정
-
EventBridge Console로 이동 후 좌측 탭에서 [규칙]을 클릭하고, 우측 중간 [규칙 생성]을 클릭합니다.
- 규칙에 대한 이름 및 이벤트 버스를 선택하고 규칙 유형을 선택 후 [다음]을 클릭합니다.
- 이벤트 소스에서 [AWS 이벤트 또는 EventBridge 파트너 이벤트]를 선택합니다.
- 생성 방법에서 [패턴 양식 사용]을 선택합니다.
-
이벤트 패턴에서 이벤트 소스를 [AWS서비스]를 선택, AWS 서비스에서 [Health]를 선택하고 이벤트 유형은
[모든 이벤트] 혹은 [특정 상태 이벤트] 중 선택합니다.-
특정 상태 이벤트를 선택한다면 다음을 선택할 수 있습니다.
-
이벤트 유형 사양 1은 [AWS 모든 서비스] 혹은 [특정 서비스]를 선택할 수 있습니다.
-
이벤트 유형 사양 2는 [모든 이벤트 유형 범주] 혹은 [특정 이벤트 유형 범주]를 선택할 수 있습니다.
-
이벤트 유형 사양 3는 [모든 이벤트 유형 코드] 혹은 [특정 이벤트 유형 코드]를 선택할 수 있습니다.
-
이벤트 유형 사양 4는 [모든 리소스] 혹은 [특정 리소스]를 선택할 수 있습니다.
-
특정 리소스는 해당 리소스의 ID를 기입하며, 하나 이상의 ID를 기입할 수 있습니다.
-
-
이벤트 패턴을 사용자 정의로 필터링이 가능하며, 자세한 사항은 링크를 통해 확인이 가능합니다.[Link]
-
-
-
대상 유형은 [AWS 서비스]를 선택하고 대상을 [SNS 주제]를 선택, 이전에 생성한 [주제]를 선택합니다.
대상 입력 구성을 [입력 변환기]로 변경하고 하단의 [입력 변환기 구성]을 클릭합니다.
-
입력 경로와 템플릿을 통해 이메일 알림 내용을 정의 후 확인을 클릭합니다.
-
입력 경로와 템플릿은 사용자의 요구 사항 및 환경에 따라 정의가 가능합니다.
-
샘플 이벤트를 통해 알림 내용에 대한 정의를 확인할 수 있습니다
-
입력 변환에 관하여 사용자 정의가 가능하며, 링크를 참고하여 주시길 바랍니다.[Link]
-
-
이메일 알림 내용까지 정의하였다면, [다음]을 클릭합니다.
-
재시도 정책을 통해 이벤트 오류가 발생 후 재시도할 최대 시간 및 횟수를 설정할 수 있습니다.
-
처리되지 않은 이벤트를 유지할 최대 시간을 설정할 수 있습니다.(Default : 24Hour)
-
오류로 인한 이벤트 재 전송 최대 횟수를 설정할 수 있습니다. (Default : 185)
-
처리되지 않은 이벤트를 AWS SQS 대기열로 전송 가능합니다.
-
-
필요 시 태그 정보 입력 후 [다음]을 클릭합니다.
-
설정한 내용을 검토 후, 하단의 [규칙 생성]을 클릭하여 규칙을 생성합니다.
- 생성된 EventBridge 규칙을 확인합니다.
Amazon Chatbot 설정
-
Chatbot Console로 이동 후 좌측 탭에서 [구성된 클라이언트]을 클릭, 우측 [새 클라이언트 생성]을 클릭합니다.
- 클라이언트 유형을 [Slack]을 선택하고 [구성]을 클릭합니다.
- Slack에 이미 로그인이 되어 있다면 알림을 수신할 Slack 워크스페이스를 선택 후 [허용]을 클릭합니다.
- Slack에 로그인이 되어 있지 않다면 Slack의 URL을 입력하고 하단의 [계속]을 클릭하고 진행합니다.
-
해당 워크스페이스에 AWS Chatbot이 추가 되었는지 확인합니다.
-
AWS Chatbot이 추가 되어있지 않다면 [앱 추가]를 클릭, [AWS Chatbot]을 검색하여 추가합니다.
-
AWS Chatbot이 정상적으로 초대 되었는지 확인합니다.
-
AWS Chatbot이 추가 되어있지 않다면 [앱 추가]를 클릭, [AWS Chatbot]을 검색하여 추가합니다.
-
알람을 수신할 Slack에서 해당 채널을 [우클릭] 하여 링크를 복사합니다.
-
해당 채널이 공개된 채널이라면 해당 부분을 진행하지 않으셔도 무방합니다.
-
공개되지 않은 비 공개 채널이라면 해당 부분을 통해 채널ID 확인이 필요합니다.
-
-
구성 된 워크스페이스에서 하단의 [새 채널 구성]을 클릭합니다.
-
구성 이름을 기입하고 채널의 유형을 [프라이빗]으로 선택한 후, 앞서 복사한 해당 채널의 ID(링크)를 기입합니다.
-
Chatbot Logging 같은 경우 사용자가 시작한 명령에 대한 감사 이벤트를 자동으로 로깅합니다.
단, 구성에 대한 로깅은 하지 않으므로 해당 부분이 필요하다면 추가 로깅 활성화가 필요합니다. -
알림을 수신할 채널이 공개 채널이라면 채널 유형을 [퍼블릭]을 선택하여 채널 확인이 가능합니다.
-
알림을 수신할 채널이 비공개 채널이라면 채널 유형을 [프라이빗]을 선택, 채널 ID 기입이 필요합니다.
-
-
[채널 역할]을 선택하고 채널 역할은 [템플릿을 사용하여 IAM 역할 생성]을 선택한 후 역할 이름을 기입합니다.
-
정책 템플릿은 기본으로 두시거나 [알림 권한]을 선택합니다.
-
채널 가드 레일 정책은 구성에 따라 정책을 설정할 수 있으므로 필요 시 세부적인 설정이 가능합니다.
기본적으로 [ReadOnlyAccess]가 설정되어 있으며, 테스트 시 [AdministratorAccess]로 진행합니다.
-
-
앞서 생성한 SNS 주제가 있는 리전을 선택하고 SNS 주제를 선택 후 [구성]을 클릭합니다.
- 구성된 채널이 정상적으로 생성 되었는지 확인합니다.
- SNS Console로 이동 후 해당 주제를 클릭합니다.
-
구독에서 Chatbot이 정상적으로 등록 되었는지 확인합니다.
Notification Test
-
AWS Chatbot과 Slack이 정상적으로 통신이 되는 지 [테스트 메시지 전송]을 통해 테스트를 진행합니다.
- 등록한 슬랙의 채널로 이동하여 정상적으로 통신 테스트 알림이 수신 되었는지 확인합니다.
-
AWS SNS Console로 이동 후 해당 주제를 클릭합니다.
- 우측 상단에서 [메시지 게시]를 클릭합니다.
- 샘플 데이터를 메시지에 기입하고 하단의 [메시지 게시]를 클릭합니다.
- 등록한 슬랙의 채널로 이동하여 정상적으로 테스트 알림이 수신 되었는지 확인합니다.
-
등록한 이메일로 이동하여 정상적으로 테스트 알림이 수신 되었는지 확인합니다.
Reference
※스마일샤크가 제공하는 모든 콘텐츠는 관련 법의 보호를 받습니다. 스마일샤크 콘텐츠를 사전허가 없이 무단으로 복사·배포·판매·전시·개작할 경우 민·형사상 책임이 따를 수 있습니다. 콘텐츠 사용과 관련해 궁금한 점이 있으면 전화(☎: 070-4369-2028) 또는 이메일(contact@smileshark.kr)로 문의하기 바랍니다.
댓글
댓글 0개
댓글을 남기려면 로그인하세요.