操作ミスによるEC2インスタンスの削除を防ぐ!終了保護の設定方法

テクニカルサポートノート。サービス名:Amazon EC2 誤操作によるEC2インスタンスの削除(終了)を防止する「終了保護」の有効化方法です
2020.11.28

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

困っていた内容

重要なデータを保持したEC2インスタンスを、操作ミスにより終了(削除)してしまいました。
バックアップを保管していたため、保持していたデータを復旧することはできましたが、今後のために対策を講じたいと思っています。
操作ミスによるEC2インスタンスの削除を、AWS側の仕組みで防ぐ方法はあるでしょうか?

どう対応すればいいの?

EC2インスタンスの終了保護を有効化することで、EC2コンソールやAWS CLIからの操作ミスによるEC2インスタンスの削除を防ぐことが可能です。

終了保護を有効化する方法(EC2コンソール)

作成済みのインスタンスの終了保護を有効化する場合
対象のインスタンスを選択した状態で、[アクション]-[インスタンスの設定]-[終了保護を変更]をクリックします。

[有効化]にチェックを入れ、[保存]をクリックします。

新規作成するインスタンスの終了保護を有効化する場合
[ステップ 3: インスタンスの詳細の設定]画面で設定可能です。
[終了保護の有効化]項目の、[誤った終了を防止します]にチェックを入れて作成します。

終了保護を有効化する方法(AWS CLI)

作成済みのインスタンスの終了保護を有効化する場合
modify-instance-attribute コマンドで、disable-api-terminationオプションを指定します。

aws ec2 modify-instance-attribute --disable-api-termination --instance-id <インスタンスID>

新規作成するインスタンスの終了保護を有効化する場合
run-instances コマンド実行時に、disable-api-terminationオプションを指定します。

aws ec2 run-instances \
--image-id <AMI ID> \
--instance-type <インスタンスタイプ> \
--security-group-ids <セキュリティグループID> \
--subnet-id <サブネットID> \
--region <リージョンコード> \
--count 1\
--disable-api-termination


注意事項

この操作では、スポットインスタンスの終了保護を有効にすることはできません。スポットインスタンスは終了保護の有効/無効にかかわらず、予め設定したスポット料金よりも、スポットインスタンスの価格が高くなると終了します。

参考情報

インスタンスの終了 [終了保護の有効化] - Amazon Elastic Compute Cloud

modify-instance-attribute — AWS CLI 2.1.4 Command Reference

run-instances — AWS CLI 2.1.4 Command Reference