EC2 インスタンスの状態が変化したときに、カスタマイズした E メール通知を受信するにはどうすればよいですか?
最終更新日: 2022 年 3 月 1 日
Amazon Elastic Compute Cloud (Amazon EC2) インスタンスの状態が変化したときに、E メール通知を受信したいと考えています。これを行うにはどうすればよいですか?
簡単な説明
EC2 インスタンスの状態が変化したときに E メール通知を受信するには、以下の手順を実行します。
- Amazon Simple Notification Service (Amazon SNS) のトピックを作成します。SNS トピックがサブスクライブしているエンドポイントまたはクライアントにメッセージを送信します。
- EC2 インスタンスの状態変更通知イベントタイプを使用して、Amazon EventBridge を作成します。
解決方法
SNS トピックを作成する
1. Amazon SNS コンソールを開き、ナビゲーションペインで [Topics] (トピック) を選択します。
2. [Create topic] (トピックの作成) を選択します。
3. [Type] (タイプ) で、[Standard] (標準) を選択します。
4. [Name] (名前) にトピックの名前を入力します。
5. [Display name] (表示名) にトピックの表示名を入力します。
6. [Create topic] (トピックの作成) を選択します。
7. [Subscriptions] (サブスクリプション) タブで、[Create subscription] (サブスクリプションの作成) を選択します。
8. [Protocol] (プロトコル) で、[Email] (E メール) を選択します。
9. [Endpoint] (エンドポイント) では通知を受信する E メールアドレスを入力します。
10. [Create subscription] (サブスクリプションの作成) を選択します。
サブスクリプションの確認メールが入力したアドレスに送信されます。E メールで [Confirm subscription] (サブスクリプションを確認) を選択します。作成した SNS トピックを書き留めます。このトピックは、EventBridge ルールを作成するときに使用します。
EventBridge イベントを作成する
1. EventBridge コンソールを開き、ナビゲーションペインで [Events] (イベント) を選択します。
2. [Create rule] (ルールを作成) を選択します。
3. ルールの [Name] (名前) を入力します。必要に応じて [Description] (説明) を入力できます。
4. [Define pattern] (パターン定義) で、[Event pattern] (イベントパターン) を選択します。
5. [Event matching pattern] (イベント一致パターン) で、[Pre-defined pattern by service] (サービスごとの事前定義パターン) を選択します。
6. [Service provider] (サービスプロバイダー) で、[AWS] を選択します。
7. [Service name] (サービス名) で、[EC2] を選択します。
8. [Event Type] (イベントタイプ) で [EC2 Instance State-change Notification] (EC2 インスタンスの状態変更通知) を選択します。
9. [Any state] (任意の状態) を選択します。
10. [Any instance] (任意のインスタンス) を選択します。
11. [Select targets] (ターゲットを選択) で、[Target] (ターゲット) ドロップダウンリストから [SNS topic] (SNS トピック) を選択します。
12. [Topic] (トピック) で、前に作成したトピック名を選択します。
13. [Configure input] (入力の設定) で [Input Transformer] (入力トランスフォーマー) を選択します。
14. [Input Path] (入力パス) に以下を入力します。
{"instance-id":"$.detail.instance-id", "state":"$.detail.state", "time":"$.time", "region":"$.region", "account":"$.account"}
15. [Input Template] (入力テンプレート) に以下を入力します。
"At <time>, the status of your EC2 instance <instance-id> on account <account> in the AWS Region <region> has changed to <state>."
注意: 入力テンプレートでは、カスタム入力も可能です。
16. [Create rule] (ルールを作成) を選択します。
注: 作成したルールは単一の AWS リージョンに適用されます。
インスタンスを開始または停止して、ルールをテストできます。このルールは、停止を含めて、インスタンスが何らかの状態に変化するたびに E メール通知を生成します。