Amazon Data Lifecycle Manager でマルチボリュームスナップショットを取得したときに CloudWatch Events をトリガーする方法

複数の EBS がアタッチされているインスタンスに対して、Amazon Data Lifecycle Manager でスナップショットを取得すると、マルチボリュームスナップショットを取得する挙動となります。そのため、CloudWatch Events のイベントパターンには、マルチボリュームスナップショットを取得したことをトリガーと設定する必要があります。
2020.10.06

困っていた内容

Amazon Data Lifecycle Manager でインスタンスを対象にスナップショット取得をスケジュールしています。

スナップショットが取得されたことを、CloudWatch Events でトリガーしたいと考えています。

CloudWatch Events ルールを作成し、イベントソースに以下のイベントパターン JSON を設定しましたが、スナップショットが正常に取得されても CloudWatch Events がトリガーされません。

{
  "source": [
    "aws.ec2"
  ],
  "detail-type": [
    "EBS Snapshot Notification"
  ],
  "detail": {
    "event": [
      "createSnapshot"
    ],
    "result": [
      "succeeded"
    ]
  }
}

どう対応すればいいの?

Amazon Data Lifecycle Manager を用いてインスタンスを対象にスナップショットを取得した場合、 インスタンスに複数の EBS がアタッチされていると、マルチボリュームスナップショットを取得する挙動となります。

マルチボリュームスナップショットを取得が正常に行われた際に、CloudWatch Events をトリガーする場合は、以下の JSON を入力します。

{
  "source": [
    "aws.ec2"
  ],
  "detail-type": [
    "EBS Multi-Volume Snapshots Completion Status"
  ],
  "detail": {
    "event": [
      "createSnapshots"
    ],
    "result": [
      "succeeded"
    ]
  }
}

参考資料

Amazon EBS スナップショット - Amazon Elastic Compute Cloud

Amazon EBS での Amazon CloudWatch Events - Amazon Elastic Compute Cloud

テクニカルサポートノートとは?

クラスメソッドのカルチャー(CLP) の「情報発信を通じて、全ての人々の創造活動に貢献し続ける」という考えから、クラスメソッド メンバーズをご利用のお客様よりいただいたお問い合わせより、他の AWS ユーザーにとっても 有益な情報を一般的な TIPS としてご紹介しています。