【AWS】EC2インスタンス削除前に確認すべき8つのポイント|課金トラブル・データ消失を防ぐ

ITナレッジ

今回は、AWS EC2インスタンスを削除する際に確認すべきポイントについて解説します。

EC2インスタンスの削除は一見シンプルな操作に思えますが、事前確認を怠ると「必要なデータが消えてしまった」「削除したはずなのに課金が続いている」といったトラブルに発展することがあります。

本記事では、AWS初級者から運用担当者まで幅広い方を対象に、EC2インスタンス削除前に確認すべき8つのポイントを網羅的に解説します。記事の最後には実務で使えるチェックリストも用意していますので、ぜひご活用ください。


1. 終了保護(Termination Protection)の確認

EC2インスタンスには「終了保護(Termination Protection)」という機能があります。この機能が有効になっているインスタンスは、AWSマネジメントコンソールやAPIからの削除操作を受け付けません。本番環境のインスタンスでは、誤削除防止のためにこの機能を有効にしていることが多いです。

確認方法

  1. AWSマネジメントコンソールで「EC2」サービスを開く
  2. 対象のインスタンスを選択
  3. 「アクション」→「インスタンスの設定」→「終了保護を変更」を選択
  4. 現在の設定状態を確認

終了保護が有効な場合、意図的に削除する際は一度この設定を無効化する必要があります。逆に、終了保護が有効なインスタンスを削除しようとしてエラーが出た場合は、本当に削除して良いインスタンスか再確認するきっかけになります。


2. EBSボリュームの設定確認

EC2インスタンスを削除する際、最も注意が必要なのがEBS(Elastic Block Store)ボリュームの扱いです。EBSボリュームには「DeleteOnTermination」という属性があり、この設定によってインスタンス削除時の動作が異なります。

DeleteOnTermination属性の動作

設定値 インスタンス削除時の動作
true(有効) インスタンスと一緒にEBSボリュームも削除される
false(無効) EBSボリュームは削除されず残る

確認方法

  1. EC2コンソールで対象インスタンスを選択
  2. 「ストレージ」タブを開く
  3. 各ボリュームの「終了時に削除」列を確認

ルートボリュームはデフォルトで「true」、追加ボリュームはデフォルトで「false」に設定されていることが多いですが、インスタンス作成時の設定によって異なります。重要なデータが格納されているボリュームは、削除前に必ずスナップショットを取得するか、DeleteOnTerminationを「false」に変更しておくことを推奨します。


3. Elastic IP(EIP)の確認

Elastic IPがインスタンスに関連付けられている場合、インスタンスを削除してもElastic IP自体は解放されません。関連付けが外れた状態のElastic IPは、1時間あたり約0.005ドルの課金が発生します。月額に換算すると約3.6ドル(約500円程度)となり、放置すると無駄なコストが積み重なります。

確認方法

  1. EC2コンソールの左メニューから「Elastic IP」を選択
  2. 対象インスタンスに関連付けられているEIPを確認
  3. インスタンス削除後、不要なEIPは「アクション」→「Elastic IPアドレスの解放」で解放

注意点

Elastic IPを解放すると、そのIPアドレスは他のAWSアカウントに割り当てられる可能性があります。将来的に同じIPアドレスが必要な場合は、解放せずに保持しておくことも検討してください(ただし課金は継続します)。


4. AMI・スナップショットの確認

EC2インスタンスから作成したAMI(Amazon Machine Image)やEBSスナップショットは、インスタンスを削除しても自動的には削除されません。これらのリソースもストレージ料金が発生するため、不要になった場合は整理が必要です。

AMIの確認方法

  1. EC2コンソールの左メニューから「AMI」を選択
  2. 「自己所有」でフィルタリング
  3. 対象インスタンスから作成したAMIを確認

スナップショットの確認方法

  1. EC2コンソールの左メニューから「スナップショット」を選択
  2. 対象インスタンスのボリュームIDで検索
  3. 関連するスナップショットを確認

削除時の注意点

AMIを削除(登録解除)する場合、先にAMIの登録を解除してから、関連するスナップショットを削除する順序で行います。スナップショットを先に削除しようとすると、AMIが参照しているためエラーになります。


5. 関連リソースの確認

EC2インスタンスは、さまざまなAWSリソースと関連付けられています。インスタンス削除後も残り続けるリソースがあるため、整理が必要か確認しましょう。

セキュリティグループ

セキュリティグループはインスタンス削除後も残ります。他のリソースで使用されていない場合は削除を検討してください。ただし、デフォルトのセキュリティグループは削除できません。

確認方法: EC2コンソール →「セキュリティグループ」→ 対象のセキュリティグループを選択 →「関連付けられたリソース」タブで使用状況を確認

ENI(Elastic Network Interface)

インスタンス作成時に自動生成されたプライマリENIは、インスタンス削除時に一緒に削除されます。ただし、手動でアタッチした追加のENIは残るため、不要であれば削除が必要です。

確認方法: EC2コンソール →「ネットワークインターフェイス」→ 対象インスタンスIDでフィルタリング

キーペア

キーペアはインスタンスを削除しても残ります。同じキーペアを他のインスタンスで使用している場合もあるため、削除の際は慎重に判断してください。


6. タグ・ドキュメントによる管理状況の確認

インスタンスを削除する前に、そのインスタンスがどのような目的で使用されていたか、タグやドキュメントで確認することが重要です。

確認すべき情報

  • Name タグ: インスタンスの用途や環境(本番/検証など)
  • Owner タグ: 管理者や担当チームの情報
  • Project タグ: 関連するプロジェクト名
  • Environment タグ: 環境種別(Production/Staging/Developmentなど)

確認方法

  1. EC2コンソールで対象インスタンスを選択
  2. 「タグ」タブでタグ情報を確認
  3. 社内のドキュメント(構成管理表、Wiki等)と照合

タグ情報が不十分な場合は、関係者に確認を取ってから削除を進めることを推奨します。「誰が何のために使っているか分からないインスタンス」を安易に削除すると、思わぬトラブルに繋がります。


7. 本番環境での事故防止策

本番環境でEC2インスタンスを削除する際は、より慎重な対応が求められます。以下の事故防止策を実施することを推奨します。

事前対策

  1. 終了保護の有効化: 本番インスタンスには必ず終了保護を設定する
  2. IAMポリシーによる制限: 本番環境のリソース削除権限を限定したユーザーのみに付与する
  3. 命名規則の徹底: 環境が一目で分かる命名規則を採用する(例:prod-web-server-01)

削除実施時の対策

  1. ダブルチェック: 複数人で対象インスタンスを確認する
  2. 事前バックアップ: 削除前にAMIまたはスナップショットを取得する
  3. 削除前の停止確認: いきなり削除せず、まず停止して影響がないか確認する
  4. 作業記録: いつ、誰が、何を削除したかを記録に残す

8. 削除後の確認事項

インスタンスを削除した後も、以下の点を確認しておくことでトラブルを未然に防げます。

課金状況の確認

削除後、AWS Cost Explorerやコスト配分タグで課金状況を確認します。想定外の課金が続いている場合は、関連リソースが残っている可能性があります。

CloudWatchアラームの整理

削除したインスタンスに設定されていたCloudWatchアラームは、対象がなくなっても残り続けます。不要なアラームは削除して、アラームの管理を整理しておきましょう。

Auto Scaling グループの確認

対象インスタンスがAuto Scalingグループに属していた場合、新しいインスタンスが自動的に起動される可能性があります。意図しない動作を防ぐため、Auto Scalingの設定も確認してください。


まとめ

EC2インスタンスの削除は単純な操作ですが、関連するリソースや設定を考慮しないと、データ消失や予期せぬ課金といったトラブルに繋がります。本記事で解説した8つのポイントを事前に確認することで、安全かつ確実にインスタンスを削除できます。

特に本番環境では、終了保護の活用、複数人でのダブルチェック、事前バックアップの取得を徹底することが重要です。以下のチェックリストを活用して、抜け漏れのない削除作業を実施してください。


【付録】EC2インスタンス削除前チェックリスト

No. 確認項目 確認内容 チェック
1 終了保護 Termination Protectionの状態を確認したか
2 EBSボリューム DeleteOnTermination属性を確認したか
3 EBSボリューム 必要なデータのバックアップ(スナップショット)を取得したか
4 Elastic IP 関連付けられたEIPを確認したか
5 Elastic IP 削除後にEIPを解放するか判断したか
6 AMI インスタンスから作成したAMIを確認したか
7 スナップショット 関連するスナップショットを確認したか
8 セキュリティグループ 関連するセキュリティグループの使用状況を確認したか
9 ENI 手動アタッチしたENIがないか確認したか
10 タグ情報 インスタンスの用途・管理者を確認したか
11 ドキュメント 構成管理表等の社内ドキュメントと照合したか
12 関係者確認 削除について関係者に確認を取ったか
13 事前バックアップ AMIまたはスナップショットを取得したか
14 停止確認 削除前にインスタンスを停止して影響確認したか
15 CloudWatch 関連するCloudWatchアラームを確認したか
16 Auto Scaling Auto Scalingグループに属していないか確認したか

本記事が、EC2インスタンス削除時のトラブル防止に役立てば幸いです。

【注意】

このブログは技術に関する知識や経験を共有することを目的としており、情報の正確性に努めていますが、その内容の正確性や完全性を保証するものではありません。ブログの情報を利用する場合は、自己の責任において行動してください。ブログの内容に基づいて行った行動や決定によって生じた損害や被害について、筆者は一切の責任を負いません。

 

記事の内容の一部は、生成AIで作成しています。

ITナレッジAWS
この記事の作者
StarTeller

30歳で異業種からITエンジニアへ転身し、10年以上にわたりインフラエンジニアとして様々な現場でシステム構築・運用に携わってきました。
得意分野はLinux/Windowsのサーバー構築・運用で、ネットワークやAWSなども実務で活用しています。このブログでは、これまでの業務で培った経験を基に、日々の業務で遭遇した問題の解決方法や、システム構築の具体的な手順を解説。現場のエンジニアが実際に「困ったとき」に参照できる情報を意識して投稿していこうと思っています。
※サーバ運用費がかかっているので、広告を掲載させて頂いてます。

StarTellerをフォローする
シェアする
StarTellerをフォローする

コメント

タイトルとURLをコピーしました