Amazon Data Lifecycle Managerで古い世代のAMIを非推奨に出来るようになりました

2021.08.26

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

いわさです。

少し前にAMIに非推奨有効期限の概念が導入されました。

そして先日のアップデートで、DLM(Amazon Data Lifecycle Manager)でも非推奨期限の設定が出来るようになりました。
従来まで登録解除の自動化は出来ていましたが、その前段で「非推奨」期間を設けることが出来るようになりました。

やってみた

ライフサイクルのスケジュール設定オプションに「AMIの非推奨化」が追加されています。

ここでは、1以上でライフサイクルルールで保持するように設定したAMIの数(時間)より小さいものを設定することが出来ます。

上記設定例では、以下のようになります。

  • 1時間に1回AMIを取得する
  • AMIは5世代まで保持する
  • 5世代のうち、3~5世代前のものは非推奨化する

3時間後

9時、10時、11時のAMIが取得されていますね。
3世代前の9時のAMIが非推奨化されているはずが、されていません。

これはAMI作成直後のキャプチャだったのですが、AMI作成直後すぐに古いAMIの非推奨化がされるわけではなく、少し時間差があるようです。
私の確認環境ではAMIの作成後20~30分後に非推奨時間の設定がされていました。

5時間後

5世代分のAMIが作成され、また新たにAMIが作成されようとしていますね。

そして、9時〜11時の3世代分のAMIを見てみてください。
Deprecation Timeが設定されています。これが非推奨の開始日時です。

冒頭で触れたチバユキさんの記事ではマネジメントコンソール上は表示されていなかったようなのですが、今はDeprecation timeが表示されるようになってます。

その後

最新のAMIが作成された20〜30分後くらいに12時のAMIに非推奨時間が設定されました。

そしてそこから更に10分後くらいでしょうか、9時のAMIが登録解除されました。

さらに10~15分後にスナップショットも削除されました。

まとめ

  • DLM (Data Lifecycle Manager)を使って、簡単にAMI非推奨の自動化が出来る。
  • ライフサイクルイベントのそれぞれの反映は結構時間差がある。

参考