はじめに

AWS を活用したシステムの可用性向上や災害対策 (DR) は非常に重要です。特に、EC2 インスタンスの AMI を別リージョンへコピーしておくことは、リージョン障害から保護するための有効な手段の一つです。

この記事では、AWS Backup を利用して AMI を別リージョンへ簡単に複製し、その動作を検証する手順を解説します。

AWS Backup による AMI クロスリージョンコピーの概要

なぜ AMI のクロスリージョンコピーが必要か

  • 災害対策 (DR): 主要リージョンで大規模障害が発生した場合でも、別リージョンへ AMI をコピーしておくことで迅速なシステム復旧が可能です!
  • コンプライアンス要件: 特定地域でのデータ保管義務に対応できます。
  • データ主権: データを特定の地理的境界内に保持できます。

AWS Backup を利用するメリット

  • 集中管理: 複数の AWS サービスのバックアップを一元的に管理できます。
  • 自動化: バックアップスケジュールやライフサイクル管理、コピープロセスを自動化できます。
  • コスト効率: ストレージ階層化によりコストを最適化できます。
  • 簡単な設定: コンソールから数クリックでクロスリージョンコピーを設定可能です!

検証環境の準備

今回の検証では以下の環境を想定します。

項目 内容
ソースリージョン 東京 (ap-northeast-1)
ターゲットリージョン 大阪 (ap-northeast-3)
バックアップ対象 東京リージョンにある EC2 インスタンスの AMI

前提条件

  • バックアップの対象となるEC2が作成されていること

1: バックアップボールトの作成

AMI のバックアップとコピーを保存するバックアップボールトを、ソースリージョンとターゲットリージョンの両方に作成します。

1-1. ソースリージョン (東京) でのボールト作成:

  1. AWS Backup コンソールへ移動します。
  2. ナビゲーションペインで「ボールト」を選択します。
  3. 「ボールトを作成」をクリックします。
  4. ボールト名を入力し、必要に応じて KMS キーによる暗号化を設定します。
  5. 「ボールトを作成」をクリックします。

1-2. ターゲットリージョン (大阪) でのボールト作成:

  1. AWS コンソール右上のリージョンセレクタで大阪リージョンへ切り替えます。
  2. AWS Backup コンソールへ移動します。
  3. ナビゲーションペインで「ボールト」を選択します。
  4. 「ボールトを作成」をクリックします。
  5. ボールト名を入力し、必要に応じて KMS キーを設定します。
  6. 「ボールトを作成」をクリックします。

    上記手順でソースリージョンとターゲットリージョンの両方にバックアップボールトが作成されたことが確認できます!

2: バックアッププランの設定 (ソースリージョン: 東京)

次に AMI をバックアップしターゲットリージョンへコピーするためのバックアッププランをソースリージョンで設定します。

2-1. バックアッププランの作成

  1. AWS コンソール右上のリージョンセレクタで東京リージョンへ切り替えます。
  2. AWS Backup コンソールへ移動します。
  3. ナビゲーションペインで「バックアッププラン」を選択します。
  4. 「バックアッププランを作成」をクリックします。
  5. 「新しいプランを開始」を選択しバックアッププラン名を入力します。

2-2. バックアップルールの設定

バックアッププラン内でバックアップのルールを定義します。

  1. 「バックアップルール名」を入力します。
  2. 「バックアップボールト」で東京リージョンに作成したボールトを選択します。
  3. 「バックアップ頻度」「バックアップウィンドウ」「ライフサイクル」を適切に設定します。今回は検証のため、バックアップの開始時間を直近の時間に設定します。

2-3. リージョン間コピーの設定

ここが重要なポイントです!作成した AMI をターゲットリージョンへコピーする設定を行います。

  1. 「コピー先にコピー」セクションから、「リージョン」で大阪を選択します。
  2. 「送信先ボールト」で大阪リージョンに作成したボールトを選択します。
  3. (オプション) 「詳細設定」でコピーのライフサイクルや IAM ロールを設定できます。
  4. 「プランを作成」をクリックします。

2-4. リソースの割り当て

作成したバックアッププランにバックアップ対象の EC2 インスタンスを割り当てます。

  1. 「リソース割り当て名」を入力します。
  2. 「IAM ロール」はデフォルトを選択します。
  3. 「リソースを含める」で「特定のリソースタイプを含める」を選択し「リソースタイプを選択」で EC2 を選択します。
  4. 「選択した EC2 インスタンス ID を含める」を選び事前に準備した EC2 インスタンスの ID を指定します。
  5. 「リソースを割り当てる」をクリックします。

3: バックアップの確認

バックアッププランで設定したスケジュールに従ってバックアップが実行され、コピーが正しく行われるか確認します。

3-1. バックアップジョブのモニタリング (ソースリージョン: 東京)

バックアッププランのバックアップルールで設定した時刻になると、自動的にバックアップジョブが開始されます。

  1. AWS Backup コンソールのナビゲーションペインで「バックアップジョブ」を選択します。
  2. 作成されたバックアップジョブのステータスが「作成中」から「完了」になるまで待ちます。これにはEC2インスタンスのサイズによって数分から数十分かかる場合があります。

3-2. コピージョブのモニタリング

バックアップが完了すると自動的にターゲットリージョンへのコピージョブが開始されます。

  1. 「バックアップジョブ」のリストでタイプが「コピー」となっているジョブを探します。これはソースリージョンまたはターゲットリージョンのコンソールで確認可能です。
  2. コピージョブのステータスが「作成中」から「完了」になるまで待ちます。リージョン間コピーには時間がかかる場合があります。

4: コピーされた AMI の確認 (ターゲットリージョン: 大阪)

コピージョブが完了したら実際にターゲットリージョンで AMI が利用可能になっているか確認します。

4-1. AWS Backup コンソールでの確認

  1. AWS コンソール右上のリージョンセレクタで大阪リージョンへ切り替えます。
  2. ナビゲーションペインで「ボールト」を選択します。
  3. ターゲットのボールトを選択します。
  4. ボールト内の「バックアップ」または「復旧ポイント」のリストにコピーされた AMI が表示されステータスが「完了」になっていることを確認します。

4-2. EC2 コンソールでの確認

AWS Backup 経由だけでなく EC2 コンソールからも AMI が見えるか確認します。

  1. 大阪リージョンの EC2 コンソールへ移動します。
  2. ナビゲーションペインの「AMI」を選択します。
  3. 「所有者」フィルターで「自己所有」を選択します。
  4. バックアップによって作成された AMI が存在することを確認します。

    上記手順で EC2 コンソールからもコピーされた AMI が利用可能な状態であることが確認できます!

まとめ

AWS Backup を利用することで AMI のクロスリージョンコピーを簡単に自動化でき災害対策やコンプライアンス要件への対応を強化できます。本記事で解説した手順を参考にぜひご自身の環境でも設定と検証を行ってみてください。

特に以下の点が重要です。

  • IAM ロールの適切な権限設定
  • ソースとターゲット双方のバックアップボールト作成
  • バックアッププランにおける正確なリージョン間コピー設定
  • コピージョブ完了の確認
  • 復元テストによる確実な動作検証

これにより万が一の事態にも迅速に対応できる信頼性の高いシステム運用が実現できます。

参考ドキュメント

AWS Backup
https://docs.aws.amazon.com/ja\_jp/aws-backup/latest/devguide/whatisbackup.html

バックアップとコピー
https://docs.aws.amazon.com/ja_jp/aws-backup/latest/devguide/recov-point-create-a-copy.html