EC2インスタンスのバックアップ完全ガイド:AWSスナップショットとAMIの比較
Amazon Web Services(AWS)では、AWS EC2インスタンスのバックアップに利用できる2つのネイティブ機能、すなわち"AWS EBSスナップショット"と"Amazon Machine Image(AMI)"を提供しています。本ブログ記事では、これら2つのバックアップ手法の違いと、それぞれの方法が最適なケースについて解説します。
EC2のバックアップオプションについて
EC2インスタンスのバックアップに使用される2つのAWS標準ツールを確認し、その違いをより深く理解しましょう。
AWS EBS スナップショット
AWS EBS スナップショットは、EBS ボリュームの特定の時点でのコピーであり、EBS ボリュームのバックアップと見なすことができます。EBS スナップショットは Amazon S3ですが、これらはAmazon S3バケットから直接アクセスすることはできず、新しいEBSボリュームの作成にのみ使用できます。最初のスナップショットはデータの完全なコピーであり、それ以降の各スナップショットは 段階的に 前回のスナップショット以降のデータ変更分のみを書き込む。この増分方式により、ストレージ容量の消費を抑え、コストを削減できます。
EBSスナップショットは、EC2インスタンスのEBSボリュームのみを復元するために使用できます。インスタンス構成、ブート設定、ネットワーク構成などを含むインスタンス全体を復元するには、手動の手順に従う必要があります。
詳細はこちら AWS EC2のスナップショットを設定する方法 AWS EC2インスタンスのバックアップ用。
Amazon Machine Image(AMI)
Amazon Machine Images(AMI)は、EC2 EBSボリュームのデータだけでなく、EC2インスタンスを完全に復元したり、新しいインスタンスを作成したりするために必要なその他のデータも含む、あらかじめ構成済みのイメージです。AMIはインスタンス全体の完全なバックアップとして使用され、AWS EC2インスタンスの完全な復旧を行うために利用できます。AMIには、ルートボリュームを含むEBSボリューム、オペレーティングシステム、インスタンス構成、およびメタデータ(つまり、インスタンスを完全に復旧するために必要なすべての要素)が含まれています。
AMIはAmazon S3に保存され、異なるインスタンス、リージョン、さらにはアカウント間で再利用できます。既存のEC2インスタンスを使用して、カスタムAmazon Machine Imageを作成することも可能です。AMIは、複数の同一のEC2インスタンスを展開するための"ゴールドイメージ"を作成するのに最適です。
AWSスナップショットとAMI:主な違い
AWS EC2のEBSスナップショットとAmazon Machine Image(AMI)は、ユースケース、目的、機能において異なります。これらが、AWSスナップショットとAMIの違いの主な要因です。
- スナップショットはEBSボリュームレベルのデータのみをキャプチャしますが、AMIはAWS EC2インスタンスのすべてのデータをキャプチャします。たとえば、データベースがEBSボリューム上に配置されている場合、スナップショットにはそのボリュームとデータベースが含まれます。一方、AMIには、OS、アプリケーションデータ、ファイル、インスタンス設定を含む、すべてのアタッチされたボリュームが含まれます。スナップショットはEC2インスタンスの設定をキャプチャしません。
- AMIは常にインスタンス全体のバックアップです( 完全バックアップ タイプ)であり、インスタンスを復元するために必要なすべての情報が含まれています。EBSスナップショットは増分形式であるため、前回のスナップショット以降の変更のみが保存されます。
- EBSスナップショットは、既存のEC2インスタンスのボリュームを作成または復元するために使用されますが、AMIは、あらかじめ設定された環境用の新しいEC2インスタンスを起動するために使用されます。
- EBSスナップショットは、EBSボリュームおよびEC2インスタンス(手動でインスタンスを設定した場合)のデータバックアップと復旧に使用されます。Amazon Machine Image(AMI)は、環境の複製や事前設定済みのデプロイメントに使用されます。
以下に、EBSスナップショットとAmazon Machine Imageの主な特徴を比較した表を示します。
定義
| 特集 | AWS EBS スナップショット | Amazon Machine Image(AMI) |
| 目的 | EBSボリュームのデータの特定時点でのバックアップ | EC2インスタンスの完全なイメージ(OS、データ、設定など) |
| 適用範囲 | EBSボリューム(データ層)のみをキャプチャします | OS、データ、設定を含め、インスタンス全体をキャプチャします |
機能
| 特集 | AWS EBS スナップショット | Amazon Machine Image(AMI) |
| 目次 | 単一のEBSボリューム上のデータのみ | OS、インストール済みのソフトウェア、データ、および接続されたボリュームを含みます |
| 増分バックアップ | 最初のスナップショット作成後の増分バックアップに対応しています | 増分バックアップには対応していません(毎回フルイメージのバックアップが行われます) |
| 設定 | インスタンスレベルの設定は含まれません | インスタンスの種類、ネットワーク、権限などのインスタンスレベルの設定が含まれます |
| 移植性 | 別の地域にコピーできます | 別の地域にコピーできます |
| ネットワーク転送 | 変更されたブロックのみのデータ転送が必要 | インスタンスイメージ全体を転送します |
使用方法
| 特集 | AWS EBS スナップショット | Amazon Machine Image(AMI) |
| 主な利用シーン | EBSボリュームのバックアップまたは復元 | EC2インスタンスを起動するための事前設定済みテンプレートを作成する |
| 粒度 | ボリューム単位のバックアップ(例:データベース・ボリューム) | インスタンス全体のバックアップ(例:アプリケーションサーバー) |
| 災害復旧 | 個々のボリュームを復元する | フェイルオーバーリージョンで事前構成済みのインスタンスを起動する |
| テスト | テスト用のデータのみのバックアップ | 完全な設定を含む環境の複製 |
費用
| AWS EBS スナップショット | Amazon Machine Image(AMI) | |
| 取得原価 | スナップショットのサイズに基づくストレージ費用(増分) | AMIおよび関連するスナップショットのストレージ費用 |
| 費用対効果 | 頻繁かつ段階的なバックアップを行う場合に、よりコスト効率が良い | インスタンスの設定が含まれるため、コストが高くなります |
復元オプション
| 特集 | AWS EBS スナップショット | AMI |
| 回復目標 | スナップショットから新しいEBSボリュームを作成します | AMI に基づいて新しい EC2 インスタンスを起動します |
| 復旧の粒度 | 個々のボリュームを復元できます | アタッチされたボリュームを含め、インスタンス全体を復元します |
自動化
| 特集 | AWS EBS スナップショット | AMI |
| 自動化ツール | AWS Backup またはライフサイクルルールを使用して自動化できます | スクリプト、AWS CLI、またはAWS Lambdaなどのツールを使用して自動化できます |
| 周波数 | 頻繁な増分バックアップに適しています | 通常、定期的なバックアップや導入前のバックアップに使用されます |
AWSスナップショットとAMI、どちらを使うべきか?
AWSスナップショットとAmazon Machine Image(AMI)のどちらを選択するかは、具体的な利用シーンや、必要なデータまたはインスタンスのバックアップのレベルによって異なります。前のセクションでは、AWS EC2スナップショットとAmazon Machine Imageの違いについて説明しました。ここでは、それぞれの主な利用シーンを見ていきましょう。
EBSスナップショットの利用シーン:
- スナップショットは、EBSボリュームに保存されたデータを対象としたボリューム単位のバックアップや、EBSボリュームの復元による災害復旧に最適です。
- 災害復旧を目的として、スナップショットを別のリージョンにコピーする。
- 元のインスタンスに影響を与えることなく、スナップショットを使用してEBSボリュームを複製するテスト。
- EBSスナップショットはスケーラビリティの面で有効です。ただし、多数のAMIを並行して作成する場合、問題や障害が発生する可能性があります。
Amazon Machine Image の活用例:
- オペレーティングシステム、アプリケーションデータ、その他のファイルを含む、EC2インスタンス全体のバックアップを作成します。
- AWSで同一のEC2インスタンスを起動し、同じ構成のインスタンスを複数デプロイすることでワークロードをスケールさせます。これは、大規模なアップデートを実行したり、インスタンスの設定変更を実施したりする前の最適なアプローチです。また、ロードバランシングのシナリオでも有用です。
- 事前設定済みの環境を使用してEC2インスタンスを展開するためのテンプレートを作成する。
- AMIを作成し、そのイメージから新しいインスタンスをデプロイすることで、アカウント内のEC2インスタンスを別のAWSリージョンへ移行する。
以下の表では、バックアップ目的に適したAWSネイティブ機能を選択する際の一般的なシナリオと推奨事項を確認できます。
| シナリオ | 使用 AWSスナップショット | AMIを使用する |
| 特定のEBSボリュームのバックアップ(データのみ) | はい | いいえ |
| EC2インスタンスの完全バックアップ(OS + データ) | いいえ | はい |
| 頻繁な増分バックアップ | はい | いいえ |
| 同一のインスタンスを用いたスケーリング | いいえ | はい |
| 個々のボリュームに対する災害復旧 | はい | いいえ |
| インスタンス全体の災害復旧 | いいえ | はい |
| EBSボリュームのリージョン間レプリケーション | はい | いいえ |
| リージョン間またはアカウント間のインスタンス移行 | いいえ | はい |
| 事前設定済みのインスタンステンプレート | いいえ | はい |
| コスト効率の良い頻繁なバックアップ | はい | いいえ |
適切なオプションの選択は、必要なバックアップの粒度と復旧速度によって異なります:
- AWSスナップショットは、データのみを対象としたボリューム単位のバックアップや、コスト効率に優れた頻繁なバックアップに活用できます。
- AMIは、インスタンス全体のバックアップ、同一環境のスケーリング、およびインスタンス全体の復元を必要とする災害復旧に活用してください。
EBSスナップショットとAMIを併用できる場合があります。以下に、これら2つの機能を組み合わせる方法の例を示します:
- 定期的なデータバックアップとインスタンス全体のバックアップの作成:
- 重要なデータボリューム(データベースストレージなど)のバックアップを頻繁に行うには、スナップショットを使用してください。
- 設定やアプリケーションを含め、インスタンス全体をバックアップするために、定期的にAMIを使用してください。
- AWSの災害復旧:
- インスタンス全体の復旧にはAMIを、ボリューム単位の復元にはスナップショットを組み合わせて使用します。
- スナップショットでは特定のボリュームを復元できますが、AMIを使用すればインスタンス全体を再作成できます。
- テストと開発:
- AMIを使用して、本番環境の完全なレプリカを作成し、テストに活用します。
- スナップショットを使用して、特定の開発タスクに集中できるよう、データ層のみを複製します。
EC2インスタンスのバックアップに関するベストプラクティス
データにはEBSスナップショットを、インスタンスの完全な構成にはAMIを使用することで、堅牢なバックアップと 災害復旧戦略 AWS EC2インスタンスについて。以下に、EC2インスタンスのバックアップに関するベストプラクティスを示します。
- 適切なバックアップ方法を選択してくださいデータバックアップ用のスナップショットと、インスタンス全体のバックアップ用のAMI。
- バックアップの自動化. AWS Backup またはカスタムスクリプトを使用して、スナップショットや AMI の作成を自動化します。
- コストの監視と管理. 古いスナップショットやAMIを定期的に確認し、削除して、ストレージコストを最小限に抑えてください。
- 保存ポリシーを実装する. ストレージコストの過剰な増加を防ぐため、スナップショットとAMIの保持期間を設定してください。ライフサイクルポリシーを使用して、設定された期間が経過した古いバックアップを自動的に削除するようにします。重要なバックアップ(例:コンプライアンス対応のための四半期ごとのバックアップ)は、より長期間保持するようにしてください。
- バックアップの一貫性を確保する. データベースなどのアプリケーションでは、必ず アプリケーションの一貫性 バックアップ中は、書き込みを一時停止するか、アプリケーション固有のAPI(例:MySQLのFLUSH TABLES WITH READ LOCK)を使用してください。データベースボリュームには、AWS Application Consistent Snapshotsを使用してください。
- 安全なバックアップ スナップショットとAMIを暗号化します。AWS Key Management Service (KMS) を使用してバックアップを暗号化します。データセキュリティを強化するために、暗号化を有効にしてください。
- テスト復旧ワークフロー. スナップショットからの復元やAMIからのインスタンス起動を定期的にテストし、復旧プロセスが(想定どおりに)正しく機能することを確認してください。 災害復旧テスト これにより、障害が発生した場合でもデータを確実に復元できるようになります。
- AWSのバックアップ用に専用のバックアップソリューションを導入する. 以下のようなプロフェッショナルなデータ保護ソリューション、例えば NAKIVO Backup & ReplicationAWS EC2のバックアップに対応したソリューションを利用すれば、バックアップと復旧のプロセスをより効率的かつスムーズに行うことができます。
NAKIVOによるEC2バックアップの簡素化
NAKIVO Backup & Replication AWS EC2のバックアップをAmazon S3やその他のクラウドストレージ、およびローカルストレージへ保存できます。NAKIVOのソリューションは、AWS EC2のバックアップ自動化をサポートしており、 バックアップの暗号化、バックアップ検証、災害復旧テスト、アプリケーション対応型バックアップ、 バックアップの不変性 そして数多くの その他の機能. NAKIVOソリューションは、EBSボリュームやメタデータを含むインスタンス設定など、EC2インスタンス全体のフルバックアップおよび増分バックアップを作成し、迅速かつ便利な復旧を実現します。これにより、AWS EC2のバックアップを簡素化し、災害復旧戦略を強化することができます。
AWS EC2のバックアップジョブを作成する前に、前提条件を確認しておきましょう。
NAKIVOソリューションでのAWS EC2バックアップ設定には、以下が必要です インベントリにAWSアカウントを追加する. これを行うには、 Settings > Inventory をクリックして + "+"ボタンをタップし、表示される指示に従ってください。

2つ目の前提条件は AWSへのNAKIVO Transporterの導入 バックアップおよびリカバリジョブの実行時のデータ処理について。次のページへ Settings > Nodes、をクリックして + 新しいものを追加するボタン トランスポーター AWS上で。

新しいAWSバックアップジョブの設定は、 NAKIVO Backup & Replication 数回クリックするだけで完了します。
- 移動
Data Protection、クリック+そしてクリックBackup for Amazon EC2.
- バックアップしたいAWS EC2インスタンスを選択してください。事前にAWSにTransporterをデプロイしていない場合は、"Transporterが必要です"というメッセージが表示されます。選択が完了したら、[クリック]
Proceed~できるようにする NAKIVO Backup & Replication トランスポーターを適切なAWSリージョン内のEC2インスタンスとして自動的にデプロイします。その後、[クリック]Next.
- AWS EC2のバックアップを保存する保存先を選択してください。サポートされている任意の場所を選択できます。 バックアップリポジトリ NAKIVOのインベントリに追加されました。この例では、ローカルのバックアップリポジトリとAmazon S3上のバックアップリポジトリがあります。

- 設定 スケジュール管理と顧客維持 Amazon EC2 バックアップジョブの設定。複数のルールを設定して、複雑なスケジュールや保存期間の仕組みを実装できます。有効にする バックアップの不変性 ランサムウェアからの保護を確保するため。

- バックアップジョブのオプションを設定します。ジョブ名を入力し、アプリケーション認識モード、変更追跡方法、暗号化などを指定します。 完全バックアップ モードやその他の設定。クリック
Finish & Run設定を保存してジョブを実行します。
結論
EBSスナップショットは、新しいスナップショットが増分形式であるため、EBSボリュームを頻繁に、かつストレージを節約しながらバックアップするのに最適です。EBSスナップショットからEC2インスタンス全体を復元するには、EC2インスタンスを手動で作成して構成するか、既存のEC2インスタンスを使用してEBSボリュームを復元する必要があります。 Amazon Machine Images (AMI) は、EC2 インスタンスの完全なイメージ(EBS ボリューム、ブートオプション、インスタンス構成、メタデータなどを含む)を作成するために使用され、インスタンスの完全な復旧、同一構成のインスタンスの一括デプロイ、および移行を行うことができます。
EBS スナップショットや AMI のネイティブバックアップ機能に加え、数多くの高度なバックアップ機能やオプションを組み合わせた、専用の Amazon EC2 バックアップソリューションの利用をご検討ください。 NAKIVO Backup & Replication EC2インスタンス全体のフルバックアップおよび増分バックアップを、高い信頼性と使いやすいユーザーインターフェースでサポートします。これにより、ネイティブ方式の利点と、データ保護の効率を高める幅広いカスタマイズ機能とを兼ね備えています。