
1. 개요
AWS Cloudwatch에서는 AWS 내 Resource에 대한 모니터링 지표의 데이터가 수집되고 있습니다. 이런 모니터링 지표 데이터는 사용자의 필요에 따라 경보를 설정하고 AWS SNS(Simple Notification Service)를 이용하여 다양한 채널로 전달할 수 있습니다.
이번 포스트에서는 AWS Cloudwatch에서 생성된 경보를 AWS SNS를 통하여 최근 가장 보편적으로 사용되고 있는 커뮤니케이션 채널인 SLACK을 통해 받아 볼 수 있도록 구성해 보겠습니다.
2. 관련된 서비스
3. 내용
3.1 아키텍처

3.2 목차
3.3 수행
3.3.1 Amazon SNS(Simple Notification Service) 구성
SLACK으로 경보를 전달하기 위한 Lambda Function이 구독할 수 있는 Topic을 생성합니다.
3.3.1.1 Topic 생성
• Type : Standard
• Name : $$$$

3.3.2 Amazon KMS(Key Management Service) 구성
SLACK Webhook URL을 암호화하기 위해 KMS Key 및 Key Alias를 생성합니다.
3.3.2.1 Key 생성

3.3.2.2 Key Alias 생성

3.3.3 SLACK Web Hook URL 생성
경보를 받고자 하는 SLACK 채널에 수신 웹 후크 앱을 추가하고 Webhook URL을 발급받습니다.
3.3.3.1 앱 추가 메뉴

3.3.3.2 수신 웹 후크 추가

3.3.3.3 Webhook URL 확인

3.3.4 AWS Lambda 구성
SLACK으로 경보를 전송하는 Lambda Function을 구성합니다.
3.3.4.1 Lambda function 생성
AWS에서는 SNS를 통해 Cloudwatch 경보를 전송하는 Lambda function blueprint를 제공합니다.

• Function name : $$$$
• SNS topic : 이전 Step에서 생성한 SNS topic

• 환경변수
o slackChannel : #SLACK 채널명
o kmsEncryptedHookUrl : https://를 제외한 Webhook URL

3.3.4.2 Lambda function IAM Policy 추가
Lambda function에서 Cloudwatch를 읽을 수 있도록 CloudWatch Read 정책을 추가해 줍니다.
또한, 본 Lambda function을 동작하기 위해선 Webhook URL을 암호화하여야 합니다.
이를 위해 Lambda function이 KMS Key를 사용할 수 있도록 IAM Policy 를 추가해 주어야 합니다.
• 추가 Policy
o CloudWatchReadOnlyAccess
o KMS Decrypt Policy

• KMS Decrypt Policy 내용 (이전 Step에서 생성한 KMS Key의 arn을 사용합니다.)

3.3.4.3 Lambda functino 환경 변수 암호화
암호화 구성을 드롭 다운하여 ‘전송 암호화’ 및 이전 Step에서 생성한 KMS Key를 선택합니다.
환경 변수에 kmsEncryptedHookUrl을 암호화합니다.

3.3.5 CloudWatch 경보 생성
경보 생성 시, 이전 Step에서 생성한 SNS 알림을 선택합니다.

3.3.6 동작 확인
임계치 경보가 발생하여 SLACK을 통해 알림을 받아볼 수 있음을 확인합니다.

4. 마무리
이번 포스트를 통해 SLACK을 활용한 AWS 모니터링 구성 방법에 대해 알아볼 수 있었습니다.
Amazon SNS에 E-mail 구독을 구성할 수도 있지만 E-mail을 실시간으로 Push 받아서 확인하는 것보다 최근 보편적으로 사용되는 커뮤니케이션 채널인 SLACK을 통한 구성으로 비싼 모니터링 솔루션 구매가 어려운 프로젝트 혹은 스타트업과 같은 사이트에선 위와 같은 구성을 통해 시스템 모니터링을 강화하여 보다 안정적인 서비스를 제공할 수 있습니다.
일반적으로 대형 사이트나 엔터프라이즈 기업 내에는 모니터링 솔루션이 별도로 존재하여 위와 같은 구성이 필요하지 않을 수 있습니다.
하지만 그러한 사이트도 운영 조직으로 인수인계되기 전 혹은 개발 기간 동안의 모니터링을 위해 위와 같이 간편하고 비용 효율적인 구성을 통해 시스템 모니터링을 구성할 수 있습니다.

기업명을 두 글자 이상 입력해주세요.
소식을 받아 보시려면 마케팅 정보 활용과 마케팅 정보 수신에 모두 동의해 주셔야 합니다.
제출이 완료되었습니다.
제출이 완료되었습니다.
확인 버튼을 누르시면 자사 홈페이지 홈화면으로 이동됩니다.
요청하신 자료가 이메일로 발송되었습니다.
구독 설정이 저장되었습니다.
잘못된 접근입니다. 정상적인 경로를 통해 다시 시도해 주세요.
검색 중 오류가 발생했습니다. 다시 시도해주세요.
제출에 실패하였습니다.
다시 시도해주세요.
사업자등록번호는 10자리를 입력해주세요.
지원하지 않는 파일 형식입니다.
10MB 이하의 파일만 업로드하실 수 있으며, 최대 10개까지 첨부 가능합니다.
10MB 이하의 파일만 업로드하실 수 있습니다.
파일은 최대 10개까지만 첨부하실 수 있습니다.
업로드 중 오류가 발생했습니다. 다시 시도해 주세요.
파일을 교체하시겠습니까?