概要
Cloud Automatorではバックアップ用のアクションのジョブを実行することで、AWSリソースのバックアップを作成できます。
またこれらのバックアップ用のアクションには「世代管理」のオプションがあり、指定した世代数のAWSリソースを保持しておき、指定の世代数を超えて古くなったAWSリソースは削除する、という運用が可能です。
ですが、何らかの事情により、ジョブで作成した特定世代のAWSリソースを世代管理から外して、削除せずに保持したいときがあると思います。
本記事ではCloud Automatorのジョブで作成したバックアップ用のAWSリソースを保持する方法を紹介します。
特定の世代のAWSリソースを保持する方法
今回は以下のバックアップ用のアクションのジョブで作成した、特定世代のAWSリソースを保持する際の2つの方法を紹介します。
- EC2: AMIを作成
- EC2: EBSスナップショットを作成
- RDS: DBスナップショットを作成
- RDS(Aurora): DBクラスタースナップショットを作成
- Redshift: クラスタースナップショットを作成
【方法1】保持したいAWSリソースをコピーする
1つ目の方法として、AWSマネジメントコンソールやAWS CLIで対象のAWSリソースをコピーすることで、特定の世代のAWSリソースを保持できます。こちらの方法はジョブの次回以降の実行にも影響する可能性が低いため、特定の世代のAWSリソースを保持する場合、こちらの方法を推奨いたします。
コピー元のAWSリソースはCloud Automator世代管理により削除されますが、手動でコピーしたAWSリソースは世代管理の対象ではないので削除されません。
バックアップ用のAWSリソースをコピーする方法は以下のドキュメントをご参照ください。
AMIコピー時の注意事項
Cloud AutomatorがAMI作成時に自動的に付与する世代管理用のタグがAMIに残ってしまうと、そのAMIは世代管理対象と判定され、自動削除されてしまいます。
そのため、AMIコピーの際は下図の「タグをコピー」のチェックボックスを外した状態でコピーする必要があります。
【方法2】保持したいAWSリソースから世代管理用のタグを外す
もう1つの方法として、AWSマネジメントコンソールやAWS CLIで対象のAWSリソースから世代管理用のタグを外すことで、特定の世代のAWSリソースを保持できます。Cloud Automatorではバックアップ用のAWSリソースに対して、世代管理のためのタグを付与しています。このタグを外すことで、対象のAWSリソースが世代管理から外れます。
各アクションで作成したAWSリソースを保持したい場合に、外す必要があるタグは以下の表のとおりです。
注意事項1
Cloud Automatorで作成したAWSリソースのうち、一番新しく作成された世代のリソースから世代管理用のタグを外すと、次回のジョブ実行が失敗します。
最新世代のAWSリソースを世代管理から外したい場合は、次回のジョブ実行を待つか、ジョブを「今すぐ実行」して、保持したいAWSリソースを2番目以降に新しい世代としてから世代管理用のタグを外してください。
注意事項2
世代管理のオプションを設定した「EC2: AMIを作成」アクションのジョブを実行すると、バックアップ用のAMIとそれに紐づくEBSスナップショットが、世代管理用のタグが付与された状態で作成されます。
特定世代のAMIを保持したい場合、AMIに付与されている世代管理用のタグを外せば、対象のAMIとそれに紐づくEBSスナップショットは削除されなくなります。
ですが、この場合はEBSスナップショットに付与された世代管理用のタグは残ったままになってしまいます。 リソースを識別しやすくするためにも、特定世代のAMIを保持したい場合は、対象のAMIとそれに紐づくEBSスナップショットから世代管理用のタグを外すことをオススメします。
特定世代のAWSリソースを保持したいとき、外す必要があるタグ
アクション名 | 世代管理用のタグ(キー) |
---|---|
EC2: AMIを作成 |
|
EC2: EBSスナップショットを作成 |
|
RDS: DBスナップショットを作成 |
|
RDS(Aurora): DBクラスタースナップショットを作成 |
|
Redshift: クラスタースナップショットを作成 |
|
加えて、AWSリソースを識別しやすくするためにも、タグを外したあとに、保持するAWSリソースの用途などがわかるような識別用のタグを付与することをオススメします。
以上となります。