EC2 인스턴스 상태가 변경될 때 사용자 지정된 이메일 알림을 받으려면 어떻게 해야 합니까?
최종 업데이트 날짜: 2020년 11월 18일
Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에서 상태가 변경된 경우 이메일 알림을 받으려고 합니다. 어떻게 해야 하나요?
간략한 설명
EC2 인스턴스 상태 변경 시 이메일 알림을 받으려면 다음을 수행합니다.
- Amazon Simple Notification Service(Amazon SNS) 주제를 생성합니다. SNS 주제는 구독하는 엔드포인트 또는 클라이언트로 메시지를 전송합니다.
- EC2 Instance State-change Notification 이벤트 유형을 사용하여 Amazon CloudWatch 이벤트를 생성합니다.
해결 방법
SNS 주제 생성
- Amazon SNS 콘솔을 열고 탐색 창에서 [주제(Topics)]를 선택합니다.
- [주제 생성]을 선택합니다.
[이름]에 주제 이름을 입력합니다.
[표시 이름]에 주제의 표시 이름을 입력합니다. - [주제 생성]을 선택합니다.
- [구독] 탭에서 [구독 생성]을 선택합니다.
[프로토콜]에서 [이메일]을 선택합니다.
[엔드포인트]에 알림을 받으려는 이메일 주소를 입력합니다. - [구독 생성]을 선택합니다.
- 그러면 입력한 주소로 구독 확인 이메일이 전송됩니다. 이메일에서 [구독 확인]을 선택합니다.
CloudWatch 이벤트 생성
- CloudWatch 콘솔을 열고 탐색 창에서 [이벤트]를 선택합니다.
- [Get started(시작하기)]를 선택합니다.
[이벤트 소스]에서 [이벤트 패턴]을 선택합니다.
[서비스 이름]에서 EC2를 선택합니다.
[이벤트 유형]에서 [EC2 Instance State-change Notification]을 선택합니다.
[모든 상태]를 선택합니다.
[모든 인스턴스]를 선택합니다. - [대상 추가]를 선택합니다.
[대상]에서 [SNS 주제]를 선택합니다.
[주제]에서 이전에 생성한 주제 이름을 선택합니다.
입력 구성에서 입력 변환기를 선택합니다.
입력 경로에 다음을 입력합니다.
{"instance-id":"$.detail.instance-id", "state":"$.detail.state", "time":"$.time", "region":"$.region", "account":"$.account"}
입력 템플릿에 다음을 입력합니다.
"At <time>, the status of your EC2 instance <instance-id> on account <account> in the AWS Region <region> has changed to <state>."
참고: 입력 템플릿은 사용자 지정 입력을 허용합니다. - [세부 정보 구성(Configure details)]를 선택합니다.
[이름]에 규칙 이름을 입력합니다.
[설명]에 규칙 설명을 입력합니다. - [규칙 생성]을 선택합니다.
인스턴스를 시작하거나 중지하여 규칙을 테스트할 수 있습니다. 이 규칙은 인스턴스가 중지됨을 포함하여 모든 상태로 변경될 때마다 이메일 알림을 생성합니다.