CloudFormationスタックとは?
スタック = 家の設計図 + 建築プロジェクト
CloudFormationスタックは、AWSリソース(EC2、S3、RDSなど)を一括管理する「家の設計図」のようなものです。
テンプレート
設計図
スタック
建築プロジェクト
リソース
実際の部屋・設備
DeletionPolicy - 解体時のルール
DeletionPolicy は、家(スタック)を解体する時に、各部屋や設備をどう扱うかを決めるルールです。
Delete(削除)
家と一緒にすべて解体。デフォルトの動作で、一般的な設備に使用。
Retain(保持)
貴重品は残しておく。重要なデータベースやファイルに使用。
Snapshot(スナップショット)
写真に残してから解体。データベースのバックアップに使用。
💡 例:家族の思い出の部屋
大切な家族写真やアルバムが保管された部屋は「Retain」に設定。家を解体しても、この部屋だけは残しておきます。AWS では重要なS3バケットやRDSデータベースに相当します。
UpdateReplacePolicy - リノベーション時のルール
UpdateReplacePolicy は、家をリノベーション(更新)する時に、古い設備を新しいものに交換する際のルールです。
Delete(削除)
古い設備は処分して新しいものに交換。
Retain(保持)
古い設備も倉庫に保管しておく。
Snapshot(スナップショット)
古い設備の状態を記録してから交換。
⚠️ 注意:DeletionPolicy vs UpdateReplacePolicy
DeletionPolicyは「家全体の解体時」、UpdateReplacePolicyは「部分的なリノベーション時」に適用されます。両方設定することで、どんな場面でも大切なデータを守れます。
Termination Protection - 家全体の解体防止
スタック全体を誤って削除することを防ぐ安全装置
重要な本番環境などで、うっかり家全体を解体してしまわないようにする「解体禁止ロック」です。
保護ON
解体不可
保護解除
解体許可
削除実行
安全に解体
🎯 使用場面
本番環境
:顧客が使用している重要なシステム
共有リソース
:チーム全体で使用するデータベースやネットワーク
高価なリソース
:作成に時間とコストがかかるリソース
🎉 まとめ:3つの安全対策で大切なものを守ろう
🗑️ DeletionPolicy
スタック削除時の各リソースの扱い方
🔄 UpdateReplacePolicy
リソース交換時の旧リソースの扱い方
🛡️ Termination Protection
スタック全体の誤削除防止
これらの機能を適切に設定することで、AWSの重要なリソースを安全に管理できます!