AWS DataSync でオンプレミスと AWS 間のデータ転送を自動化する
記事の「実践」を 1 項目ずつ進めるためのページです。AWS マネジメントコンソールで操作したら、右の一覧にチェックを入れてください。チェックはこのブラウザに保存されます。
準備 7 項目中 1 番目
前提条件
- リージョン:
ap-northeast-1(東京) - AWS マネジメントコンソールにログイン済み
- 転送元の S3 バケットが作成済みで、1つ以上のオブジェクトが格納されていること
- 転送先の S3 バケットが作成済みであること(空の状態)
| リソース種別 | リソース名 | 用途 |
|---|---|---|
| S3 バケット(転送元) | datasync-source-<アカウントID> | 転送元バケット |
| S3 バケット(転送先) | datasync-dest-<アカウントID> | 転送先バケット |
| DataSync ロケーション(転送元) | — | 転送元 S3 の定義 |
| DataSync ロケーション(転送先) | — | 転送先 S3 の定義 |
| DataSync タスク | s3-to-s3-transfer | S3 間データ転送タスク |
| IAM ロール | (自動作成) | DataSync が S3 にアクセスするための権限 |
手順 7 項目中 2 番目
転送タスクを作成する
- AWS マネジメントコンソールにログインし、リージョンが
ap-northeast-1(東京)であることを確認します - 上部の検索バーに
DataSyncと入力し、表示された「DataSync」を選択します - 左側ナビゲーションの「タスク」を選択します
- 「タスクを作成する」をクリックします。タスクの作成は「送信元ロケーションを設定」→「送信先ロケーションを設定」→「設定」→「レビュー」の 4 ステップのウィザードで、転送元・転送先のロケーションもこの中で作ります
手順 7 項目中 3 番目
転送元ロケーションを設定する
- 「新しいロケーションを作成」を選択し、「ロケーションタイプ」で「Simple Storage Service (Amazon S3)」を選択します
- 以下を設定します
- S3 URI:
s3://datasync-source-<アカウントID>/と入力します(バケット全体が対象になります) - S3 バケット所有者: 「This AWS account」のまま
- IAM ロール: 「自動生成する」をクリックします。DataSync がこのバケットにアクセスするための IAM ロールとポリシーが作られ、
AWSDataSyncS3BucketAccess-datasync-source-…のような名前のロールが選択されます
- S3 URI:
- 「次へ」をクリックします
手順 7 項目中 4 番目
転送先ロケーションを設定する
- 「新しいロケーションを作成」を選択し、「ロケーションタイプ」で「Simple Storage Service (Amazon S3)」を選択します
- 以下を設定します
- S3 URI:
s3://datasync-dest-<アカウントID>/と入力します - S3 ストレージクラス: 「標準」のまま(送信先にだけある項目です)
- IAM ロール: 「自動生成する」をクリックします
- S3 URI:
- 「次へ」をクリックします
手順 7 項目中 5 番目
タスクの設定を行う
- 「タスクモード」で「拡張」を選択します。拡張モードは、データの一覧表示・転送・検証を並行して行うため、基本モードより高速です。S3 間の転送はどちらのモードでもできますが、タスクモードはタスクを作成したあとで変更できません
- 「名前」に
s3-to-s3-transferと入力します - その他の設定はデフォルトのままにします
- スキャンするコンテンツ: すべて
- 転送モード: 変更されたデータのみを転送
- 検証: 転送されたデータのみを検証
- 「次へ」をクリックします
- レビュー画面で設定内容を確認し、「タスクを作成する」をクリックします
タスクの詳細画面に「タスクが作成されました」と表示され、ステータスが「利用可能」になっていることを確認します。
手順 7 項目中 6 番目
タスクを実行する
- タスクの詳細画面で「開始」をクリックし、「デフォルトから開始する」を選択します。確認画面は無く、すぐに実行が始まります
手順 7 項目中 7 番目
転送結果を確認する
- タスクの詳細画面で「Task executions」タブを選択します
- タスク実行のステータスが「成功」になるまで待ちます。今回は、実行の準備に 4 分ほどかかり、転送そのものは 30 秒ほどで終わりました
- 実行 ID をクリックすると、転送されたファイル数やデータ量の詳細を確認できます
- 転送先の S3 バケットを開き、転送元のオブジェクト(
sample.txtとdata/配下の 2 ファイル)がコピーされていることを確認します