안녕하세요, 베스핀글로벌 클라우드 기술지원팀입니다 ?
이번 아티클에서는 AWS Chatbot을 이용하여 Slack 채널에서 Amazon EventBridge의 이벤트를 모니터링하는 방법에 대하여 소개하고자 합니다.
Slack 채널을 통해 알람을 받는 과정은 아래와 같습니다!
- EventBridge → SNS topic → AWS Chatbot → Slack
아래는 본인이 테스트를 진행하면서 참고하였던 AWS 링크입니다.
해당 링크는 ECS 클러스터의 이벤트 구독에 대한 내용이지만
본인은 RDS 이벤트 구독에 대한 테스트를 진행하였으며, 이를 위해 EventBridge에서 수신하고자 하는 리소스 이벤트를 RDS로 변경하였습니다.
? AWS Chatbot을 사용하여 Slack 채널에서 Amazon EventBridge 이벤트 모니터링 -
1단계: Amazon SNS 주제 생성
EventBridge와 AWS Chatbot을 연결할 SNS 주제를 생성합니다.
이미 SNS 주제가 있는 경우에는 이 단계를 건너뛸 수 있습니다.
2단계: RDS 상태 변경 이벤트에 대한 Amazon EventBridge 규칙 구성
Amazon EventBridge 콘솔에서 규칙을 생성합니다.
본인은 이벤트를 수신할 서비스를 Relational Database Service (RDS)로 선택하였고, 이벤트 유형을 RDS DB Instance에 대한 모든 이벤트로 지정하였습니다.
마지막으로 이벤트가 트리거될 때 호출할 대상을 위에서 생성한 SNS 주제 "sohyun_chatbot"으로 설정합니다.
3단계: AWS Chatbot 구성 생성
이제 채팅 클라이언트로 AWS Chatbot을 구성합니다.
AWS Chatbot 콘솔에 접속하여 "새 클라이언트 구성"을 선택하고, 아래와 같이 클라이언트 유형에서 Slack을 선택하여 구성합니다.
그러면 아래와 같이 AWS Chatbot이 Slack 워크스페이스에 대한 액세스를 요청합니다.
허용을 하게 되면 아래와 같이 Slack 채널 구성으로 redirection하게 됩니다.
알림을 받을 채널을 선택하고, drop down 목록에서 공개 채널을 선택하거나 비공개 채널의 URL 또는 ID를 복사하여 붙여넣기 합니다.
(비공개 Slack 채널의 URL을 찾으려면 Slack의 왼쪽 사이드 바에서 채널 이름에 대한 컨텍스트 메뉴를 열고 링크 복사를 선택합니다.)
❗ AWS Chatbot은 AWS Chatbot 앱 (@aws)을 Slack 채널에 추가한 경우에만 채널에서 작동할 수 있습니다.
AWS Chatbot 앱이 추가되지 않은 경우 채널의 세부 정보 페이지에서 앱 추가를 선택하여 추가합니다.
4단계: RDS DB Instance 이벤트에 대한 알람 테스트
RDS DB 인스턴스를 수동으로 중지하여 위 설정을 테스트할 수 있습니다.
그러면 아래와 같이 알림이 트리거되고 Slack 채널에 알림이 전송됩니다 :)
chatbot을 사용하지 않더라도, SNS를 연계하여 e-mail이나 SMS를 통해서도 알람을 받으실 수 있습니다.
아래 AWS 공식 문서 참고 부탁 드립니다.
참고자료 :
AWS Document : Amazon RDS 이벤트 알림 서비스 사용
위 내용 관련하여 궁금증이 해결되지 않으셨거나,
추가 문의 사항이 있으시면 저희 고객 지원 포털에 문의 남겨주시기 바랍니다.