インスタンスの状態変更イベント - Amazon Elastic Compute Cloud

インスタンスの状態変更イベント

インスタンスの状態が変化すると、Amazon EC2 は Amazon EventBridge に EC2 Instance State-change Notification イベントを送信します。

以下はこのイベントのサンプルデータです。この例では、インスタンスは pending 状態に入りました。

{ "id":"7bf73129-1428-4cd3-a780-95db273d1602", "detail-type":"EC2 Instance State-change Notification", "source":"aws.ec2", "account":"123456789012", "time":"2021-11-11T21:29:54Z", "region":"us-east-1", "resources":[ "arn:aws:ec2:us-east-1:123456789012:instance/i-abcd1111" ], "detail":{ "instance-id":"i-abcd1111", "state":"pending" } }

state に指定できる値は、次のとおりです。

  • pending

  • running

  • stopping

  • stopped

  • shutting-down

  • terminated

インスタンスを起動または開始した場合、インスタンスは pending 状態に移行してから、running 状態になります。インスタンスを停止した場合、インスタンスは stopping 状態に移行してから、stopped 状態になります。インスタンスを終了した場合、インスタンスは shutting-down 状態に移行してから、terminated 状態になります。

インスタンスの状態が変化したらメール通知を受け取る

インスタンスの状態が変化したときに E メール通知を受け取るには、Amazon SNS トピックを作成してから、EC2 Instance State-change Notification イベントの EventBridge ルールを作成します。

SNS トピックを作成するには
  1. Amazon SNS コンソール (https://console.aws.amazon.com/sns/v3/home ) を開きます。

  2. ナビゲーションペインで、[トピック] を選択します。

  3. [Create topic] (トピックの作成) を選択します。

  4. [Type (タイプ)] で、[Standard (標準)] を選択します。

  5. [Name] (名前) で、トピックの名前を入力します。

  6. [Create topic] (トピックの作成) を選択します。

  7. [サブスクリプションを作成] を選択します。

  8. [Protocol (プロトコル)] として [Email (E メール)] を選択します。

  9. [Endpoint] (エンドポイント) で、通知を受信するメールアドレスを入力します。

  10. [サブスクリプションを作成] を選択します。

  11. 次の件名の E メールメッセージが届きます: AWS Notification - Subscription Confirmation。指示に沿って操作し、登録を確認します。

EventBridge ルールを作成するには
  1. Amazon EventBridge コンソール (https://console.aws.amazon.com/events/) を開きます。

  2. [Create rule] を選択します。

  3. [Name] (名前) に、ルールの名前を入力します。

  4. ルールタイプ では、イベントパターンを持つルール] を選択します。

  5. [Next] を選択します。

  6. [Event pattern] (イベントパターン) の場合は、次のいずれかを実行します。

    1. イベントソースAWS のサービス を選択します。

    2. [AWS のサービス] で、[EC2] を選択します。

    3. [イベントタイプ] に、[EC2 インスタンスの状態変更通知] を選択します。

    4. デフォルトでは、すべてのインスタンスの状態変更に関する通知が送信されます。必要に応じて、特定の状態またはインスタンスを選択できます。

  7. [Next] を選択します。

  8. 次のようにターゲットを指定します。

    1. [Target types] (ターゲットタイプ) には、[AWS のサービス] を選択します。

    2. [Select a target] (ターゲットの選択) には、[SNS topic] (SNS トピック) を選択します。

    3. [Topic] (トピック) で、前の手順で作成した SNS トピックを選択します。

  9. [Next] を選択します。

  10. (オプション) ルールにタグを追加します。

  11. [Next] を選択します。

  12. [‬ルールを作成]‭ を選択します。

  13. ルールをテストするには、状態変更を開始します。例えば、停止されたインスタンスを開始したり、実行中のインスタンスを停止したり、インスタンスを起動したりします。次の件名の E メールメッセージが届きます: AWS Notification Message。E メールの本文には、イベントデータが含まれます。