Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스의 상태가 변경될 때 이메일 알림을 받고 싶습니다.
간략한 설명
EC2 인스턴스의 상태가 변경될 때 이메일 알림을 받으려면 다음 작업을 수행하십시오.
- Amazon Simple Notification Service(Amazon SNS) 주제를 생성하여 구독 엔드포인트 또는 클라이언트에 메시지를 전송합니다.
- EC2 인스턴스 상태 변경 알림 이벤트 유형을 사용하여 Amazon EventBridge를 생성합니다.
참고: Amazon SNS 및 EventBridge에 대한 요금은 별도로 부과됩니다.
해결 방법
SNS 주제 생성
인스턴스의 상태가 변경될 때 이메일 알림을 보내는 Amazon SNS 주제를 생성하려면 다음 단계를 완료하십시오.
- Amazon SNS 콘솔을 엽니다.
- 탐색 창에서 주제를 선택한 후 주제 생성을 선택합니다.
- 유형에서 표준을 선택합니다.
- 이름에 주제 이름을 입력합니다.
- 표시 이름에 주제의 표시 이름을 입력합니다.
- 주제 생성을 선택합니다.
- 구독 탭에서 구독 생성을 선택합니다.
- 프로토콜에서 이메일을 선택합니다.
- 엔드포인트에 알림을 받을 이메일 주소를 입력합니다.
- 구독 생성을 선택합니다.
- 입력한 이메일 주소로 구독 확인 이메일이 전송됩니다. 해당 이메일에서 구독 확인을 선택합니다.
EventBridge 이벤트 생성
인스턴스의 상태가 변경될 때 이메일 알림을 보내는 EventBridge 이벤트를 생성하려면 다음 단계를 완료하십시오.
- EventBridge 콘솔을 엽니다.
- 규칙 생성을 선택합니다. 또는 이벤트 탐색 창에서 규칙을 선택한 다음, 규칙 생성을 선택합니다.
- 규칙의 이름과 설명을 입력합니다.
- 기본값인 이벤트 버스 및 규칙 유형 설정을 유지하고 다음을 선택합니다.
- 이벤트 패턴에서 이벤트 소스를 AWS 서비스로 유지합니다. AWS 서비스에서 EC2를 선택합니다.
- 이벤트 유형에서 EC2 인스턴스 상태 변경 알림을 선택합니다.
- 모든 상태와 모든 인스턴스를 기본 설정으로 유지하고 다음을 선택합니다.
- 대상 선택에서 SNS 주제를 선택합니다.
- 주제에서 사용자가 생성한 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>."
참고: 이전 입력 템플릿에 사용자 지정 입력을 추가할 수 있습니다. 이벤트에서 텍스트를 사용자 지정하는 방법에 대한 자세한 내용은 Amazon EventBridge 입력 변환을 참조하십시오.
다음을 선택합니다.
선택 사항인 태그를 비워 두고 다음을 선택합니다.
규칙 생성을 선택합니다.
참고: 생성한 규칙은 단일 AWS 리전에 적용됩니다.
규칙을 테스트하려면 인스턴스를 시작했다가 중지하십시오. 위 규칙은 인스턴스의 상태가 변경될 때마다 이메일 알림을 생성합니다.