AWS

[AWS] CloudWatch → Slack 알람 전송 체계 구축1 : Slack 웹훅 설정

Kishi 2022. 7. 20. 15:01

주제: CloudWatch → Slack 알람 전송

1. CloudWatch를 통해 실시간으로 AWS 자원을 모니터링합니다.

2. CloudWatch에서 설정한 알람이 “정상 → 경보” 상태로 변경되면 연결된 Slack 채널로 알람이 전송되어            24*365 관제할 수 있습니다.

      1) CloudWatch 알람 설정

      2) Slack으로 알람 전송

 

 

 


 

 

CloudWatch → Slack 알람 전송

 

 

시스템 구성

 

1. Slack - 채널 기반 메시징 플랫폼. Channel 고유의 WebHook url을 통해 알람 수신

2. CloudWatch - AWS 리소스 및 실행중인 어플리케이션 모니터링

3. SNS - Publisher ↔ Subscriber 간 통신 채널. 지원되는 프로토콜을 이용해 클라이언트에 메시지 발송

4. Lambda – 서버리스 컴퓨팅 서비스. 서버를 관리하지 않아도 코드를 실행할 수 있게 하는 컴퓨팅 서비스

5. KMS - 데이터 암호화에서 사용되는 암호화 키. 인터넷 전송 시 암호화 통신에 사용

 

 

 

Slack 설정

Slack이란?

1. 협업 메신저 툴

2. 채널 기반 메시징 플랫폼

3. 최초 회원가입 없이 Workspace별 계정 사용

4. Workspace 내에 Project 채널생성 → Webhook을 이용해 CloudWatch 알람 수신

5. 채널 – Workspace 내의 채팅 방. 채널 별로 계정 view 권한 제한 가능

 

Web hook 이란?

1. 서버에서 이벤트가 발생했을 때 클라이언트를 호출하는 메커니즘 제공

2. 외부 시스템에서 Slack으로 post message 발송

3. 외부 시스템에서 이벤트 발생 → 클라이언트에서 제공하는 Webhook Trigger → Action 수행(슬랙 채널에 메세지 발송) Webhook 내부에서 슬랙의 Webhook endpoint로 post 요청

 

 

 

 

slack 로그인 & 워크스페이스 생성

 

1. Slack 홈페이지 접속 https://slack.com/intl/ko-kr/

2. 로그인 - Workspace에서 사용할 이메일 계정으로 로그인

 

 

 

3. 워크스페이스 생성 

4. 채널 생성 - project

 

 

 

 

web hook 설정

 

1. 워크스페이스 > 설정 및 관리 > 앱 관리 > 앱

 

 

 

2. Web hook 검색 > 수신 웹후크 Slack 에 추가

 

 

 

 

3. Project 채널 선택 > 수신 웹후크 통합 앱 추가

 

 

 

 

4. 설정 저장 > 웹후크 복사(키 암호화에 사용)

 

kms 키 암호화에 사용할거니 따로 보관

 

 

5. cURL 복사 > EC2 인스턴스에 붙여넣기 > Slack 메시지 수신 확인

 

 

이 cURL 요청을 복사해서 PUTTY open! ec2-user로 로그인하여 붙여넣기한다.

 

 

slack 메시지가 잘 도착했다

 

 

 

사전준비 끝!