クロスアカウントバックアップと復元用の AWS Backup を使用してテーブルを移行する
前提条件
-
ソースおよびターゲットの AWS アカウントは、AWS Organizations サービスの同じ組織に属していること
-
AWS Backup ボールトを作成し使用するための有効な AWS Identity and Access Management (IAM) アクセス許可があること
詳細については、「Creating backup copies across AWS accounts」を参照してください。
料金情報
AWS では、バックアップ (テーブルサイズに基づく)、AWS リージョン間のデータコピー (データ量に基づく)、復元 (データ量に基づく)、および進行中のストレージ料金に対する費用が発生します。継続的な費用の発生を避けるために、復元後にバックアップが必要ない場合は、バックアップを削除できます。
料金の詳細については、「AWS Backup の料金
ステップ 1: DynamoDB の高度な機能とクロスアカウントバックアップを有効にする
-
ソースおよびターゲットの AWS アカウントの両方で、AWS マネジメントコンソールにアクセスして、AWS バックアップコンソールを開きます。
-
[設定] オプションを選択します。
-
[Amazon DynamoDB バックアップの高度な機能] で、[高度な機能] が有効になっていることを確認します。有効でない場合は、[有効化] を選択します。
-
[クロスアカウント管理] の下の [クロスアカウントバックアップ] で、[オンにする] を選択します。
ステップ 2: ソースアカウントとターゲットアカウントにバックアップボールトを作成する
-
ソース AWS アカウントで、AWS バックアップコンソールを開きます。
-
[バックアップボールト] を選択します。
-
バックアップ保管庫を作成 を選択します。
-
作成したバックアップボールトとターゲット AWS アカウントの [Amazon リソースネーム (ARN)] をコピーして保存します。
-
アカウント間で DynamoDB テーブルバックアップをコピーする際は、ソースバックアップボールトとターゲットバックアップボールトの両方の ARN が必要です。
ステップ 3: ソースアカウントで、DynamoDB テーブルバックアップを作成する
-
[AWS バックアップダッシュボード] ページで、[オンデマンドバックアップを作成] を選択します。
-
[設定] セクションの [リソースタイプ] で [DynamoDB] を選択して、テーブル名を選択します。
-
[バックアップボールト] ドロップダウンリストで、ソースアカウントで作成したバックアップボールトを選択します。
-
希望する [保持期間] を選択します。
-
[オンデマンドバックアップを作成] を選択します。
-
[AWS バックアップジョブ] ページの [バックアップジョブ] タブで、バックアップジョブのステータスをモニタリングします。
ステップ 4: DynamoDB テーブルのバックアップをソースアカウントからターゲットアカウントにコピーする
-
バックアップジョブが完了したら、ソースアカウントで AWS Backup コンソールを開き、[バックアップボールト] を選択します。
-
バックアップで、DynamoDB テーブルのバックアップを選択します。[アクション]、[コピー] の順に選択します。
-
ターゲットアカウントの AWS リージョンを入力します。
-
[外部ボールトの ARN] に、ターゲットアカウントで作成したバックアップボールトの ARN を入力します。
-
ターゲットアカウントのバックアップボールトで、ソースアカウントからのアクセスを有効にしてバックアップのコピーを許可します。
ステップ 5: ターゲットアカウントに DynamoDB テーブルのバックアップを復元する
-
ターゲット AWS アカウントで AWS Backup コンソールを開き、[バックアップボールト] を選択します。
-
[バックアップ]で、ソースアカウントからコピーしたバックアップを選択します。[アクション]、[復元] の順に選択します。
-
新しい DynamoDB テーブルの名前、新しいテーブルで使用する暗号化、復元の暗号化に使用するキー、およびその他のオプションを入力します。
-
復元が完了すると、テーブルのステータスは [アクティブ] と表示されます。