Amazon Elastic Block Store

【EBS】終了時に削除の設定を変更する

こんにちは、ディーネットの山田です。

EC2を作成する際に、ルートボリュームに『終了時に削除する』設定を忘れてしまったので、CLI経由で設定を変更してみました。

比較的簡素な内容となりますが、ブログ化してみました。

また、終了時に削除する設定の有効・無効を切り替えることができるので、EC2を誤って終了してしまいEBSが消えるのを防ぎたいなど設定忘れとは別のユースケースでも利用することができます。

はじめに

終了時に削除する設定について

インスタンスが終了すると、『終了時に削除する』設定が有効で、EC2にアタッチされたEBSボリュームは削除されます。
『終了時に削除する』設定が無効であれば、EC2にアタッチされたEBSボリュームは保持されます。

設定方法について

AWSマネジメントコンソールから行う場合

こちらの設定方法は、EC2を新規に起動するタイミングでのみ設定可能な方法になりますので、今回の記事では割愛いたします。

AWS CLIから行う場合

CLI実行に必要なパラメータを調査する

インスタンスIDを調べる

EBSのボリュームIDを調べる

アタッチするEBSのデバイス名を調べる

CLI実行可能な環境でコマンドを実行する

CloudShellから実行すれば、CLI環境を用意することがなく実行できるので便利です。

AWS CLIで『modify-instance-attribute』を実行する
target="i-XXXXXXXXXXXXXXXXX" # 対象となるEC2のインスタンスIDを入力
VolumeId="vol-XXXXXXXXXXXXXXXXX" # 終了時に削除する設定を有効化するEBSのボリュームIDを入力
DeviceName="/dev/XXXX" # EC2インスタンスにアタッチされているデバイス名を入力

aws ec2 modify-instance-attribute --instance-id ${target} --block-device-mappings "
{
  \"DeviceName\":\"${DeviceName}\",
  \"Ebs\":
    {
      \"DeleteOnTermination\":true,
      \"VolumeId\":\"${VolumeId}\"
    }
}
"

対象のEBSで『終了時に削除する』設定が有効化されたことを確認する

参考サイト

https://aws.amazon.com/jp/premiumsupport/knowledge-center/deleteontermination-ebs/
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#delete-on-termination-running-instance
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#preserving-volumes-on-termination

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA