Google クラウドストレージを使用した AWS DataSync 転送の設定 - AWS DataSync

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Google クラウドストレージを使用した AWS DataSync 転送の設定

次のチュートリアルでは、 AWS DataSync を使用して Google Cloud Storage バケットから Amazon S3 バケットにオブジェクトを移行する方法を示します。

概要

DataSync は Google クラウドストレージ XML API と統合されているため、コードを記述しなくてもオブジェクトを Amazon S3 にコピーできます。この仕組みは、転送を容易にする DataSync エージェントをどこにデプロイするかによって異なります。

Agent in Google Cloud
  1. Google クラウド環境に DataSync エージェントをデプロイします。

  2. エージェントは、Hash-based Message Authentication Code (HMAC) キーを使用して Google クラウドストレージバケットを読み取ります。

  3. Google Cloud Storage バケットのオブジェクトは、パブリックエンドポイント AWS クラウド を使用して TLS 1.3 を介して に安全に転送されます。

  4. DataSync サービスによって S3 バケットにデータが書き込まれます。

以下の図は 転送について解説しています。

DataSync 転送の例は、オブジェクトデータが Google クラウドストレージバケットから S3 バケットにどのように転送するかを示しています。まず、DataSync エージェントを Google クラウド環境にデプロイします。次に、DataSync エージェントは Google クラウドストレージバケットを読み取ります。データはパブリックエンドポイントを介して に安全に移動し AWS、DataSync は DataSync を使用している AWS リージョン のと同じ の S3 DataSync バケットにオブジェクトを書き込みます。
Agent in your VPC
  1. DataSync エージェントを、 AWS 環境内の仮想プライベートクラウド (VPC) にデプロイします。

  2. エージェントは、Hash-based Message Authentication Code (HMAC) キーを使用して Google クラウドストレージバケットを読み取ります。

  3. Google Cloud Storage バケットのオブジェクトは、プライベート VPC エンドポイント AWS クラウド を使用して TLS 1.3 を介して に安全に転送されます。

  4. DataSync サービスによって S3 バケットにデータが書き込まれます。

以下の図は 転送について解説しています。

DataSync 転送の例は、オブジェクトデータが Google クラウドストレージバケットから S3 バケットにどのように転送するかを示しています。まず、DataSync エージェントは AWSの VPC にデプロイされます。次に、DataSync エージェントは Google クラウドストレージバケットを読み取ります。データは VPC エンドポイントを介して に安全に移動し AWS、DataSync は VPC AWS リージョン と同じ 内の S3 バケットにオブジェクトを書き込みます。

コスト

この移行に関連する料金には以下が含まれます。

前提条件

開始する前に、まだ行っていない場合は、以下を実行します。

Google クラウドストレージバケット用の HMAC キーを作成します。

DataSync は、Google サービスアカウントに関連付けられた HMAC キーを使用して、データ転送元のバケットを認証して読み取ります。(HMAC キーの作成方法の詳細については、「Google クラウドストレージのドキュメント」を参照してください。)

HMAC キーを作成するには
  1. Google サービスアカウント用の HMAC キーを作成します。

  2. Google サービスアカウントに少なくとも Storage Object Viewer のアクセス許可があることを確認してください。

  3. HMAC キーのアクセス ID とシークレットは安全な場所に保存します。

    これらのアイテムは、後で DataSync ソースの場所を設定する際に必要になります。

ステップ 2: ネットワークの構成

この移行のネットワーク要件は、DataSync エージェントをどのようにデプロイするかによって異なります。

DataSync エージェントを Google クラウドでホストする場合は、パブリックエンドポイント経由の DataSync 転送を許可するようにネットワークを構成します。

でエージェントをホストする場合は AWS、インターフェイスエンドポイントを持つ VPC が必要です。DataSync は VPC エンドポイントを使用して転送を容易にします。

VPC エンドポイント用にネットワークを構成するには
  1. 持っていない場合は、S3 バケット AWS リージョン と同じ に VPC を作成します

  2. VPC のプライベートサブネットを作成します

  3. DataSync の VPC サービスエンドポイントを作成します

  4. VPC サービスエンドポイント経由で転送するのを DataSync に許可するようにネットワークを設定します。

    これを行うには、VPC サービスエンドポイントに関連付けられているセキュリティグループを変更します。

ステップ 3:DataSync エージェントの作成

Google クラウドストレージバケットにアクセスして読み取ることができる DataSync エージェントが必要です。

このシナリオでは、DataSync エージェントは Google Cloud 環境で実行されます。

始める前にGoogle クラウド CLI をインストールしてください

Google クラウド 用のエージェントを作成するには
  1. https://console.aws.amazon.com/datasync/ で AWS DataSync コンソールを開きます。

  2. 左側のナビゲーションペインから、[エージェント] を選択し、[エージェントの作成] を選択します。

  3. [Hypervisor] の場合は、[VMware ESXi] を選択し、[イメージのダウンロード] を選択して、エージェントを含む .zip ファイルをダウンロードします。

  4. ターミナルを開きます。次のコマンドを実行して、イメージを解凍します。

    unzip AWS-DataSync-Agent-VMWare.zip
  5. 以下のコマンドを実行して、aws-datasync で始まるエージェントの .ova ファイルの内容を抽出します。

    tar -xvf aws-datasync-2.0.1655755445.1-x86_64.xfs.gpt.ova
  6. 次の Google クラウド CLI コマンドを実行して、エージェントの .vmdk ファイルを Google クラウドにインポートします。

    gcloud compute images import aws-datasync-2-test \ --source-file INCOMPLETE-aws-datasync-2.0.1655755445.1-x86_64.xfs.gpt-disk1.vmdk \ --os centos-7
    注記

    .vmdk ファイルのインポートには最長で 2 時間かかることがあります。

  7. インポートしたエージェントイメージの VM インスタンスを作成して起動します。

    インスタンスには、エージェント用に以下の設定が必要です。(インスタンスを作成する方法の詳細については、「Google クラウドコンピューティングエンジンのドキュメント」を参照してください。)

    • マシンタイプで、以下のいずれかを選択します。

      • e2-standard-8:最大 2,000 万個のオブジェクトを扱う DataSync タスク実行用。

      • e2-standard-16:2,000 万個を超えるオブジェクトを扱う DataSync タスク実行用。

    • ブートディスクの設定については、カスタムイメージセクションを参照してください。次に、インポートした DataSync エージェントイメージを選択します。

    • サービスアカウントの設定では、Google サービスアカウント (ステップ 1 で使用したのと同じアカウント) を選択します。

    • ファイアウォール設定では、HTTP (ポート 80)トラフィックを許可するオプションを選択します。

      DataSync エージェントをアクティブ化するには、エージェントのポート 80 が開いている必要があります。ポートがパブリックにアクセス可能である必要はありません。アクティブ化されると、DataSync はポートを閉じます。

  8. VM インスタンスを実行したら、パブリック IP アドレスを書き留めておきます。

    この IP アドレスは、エージェントをアクティブ化するために必要です。

  9. DataSync コンソールに戻ります。エージェントイメージをダウンロードした [エージェントの作成] 画面で、次の操作を行ってエージェントをアクティブ化します。

    • [エンドポイントタイプ] には、パブリックサービスエンドポイントのオプション (たとえば、米国東部(オハイオ)のパブリックサービスエンドポイント) を選択します。

    • [アクティベーションキー] には、[エージェントからアクティベーションキーを自動的に取得] を選択します。

    • [エージェントアドレス] には、作成したエージェント VM インスタンスのパブリック IP アドレスを入力します。

    • [キーを取得] を選択します。

  10. エージェントに名前を付けて、[エージェントを作成] を選択します。

エージェントはオンラインであり、データを転送する準備ができています。

このシナリオでは、エージェントは に関連付けられている VPC 内の Amazon EC2 インスタンスとして実行されます AWS アカウント。

始める前にAWS Command Line Interface (AWS CLI) を設定します

VPC のエージェントを作成するには
  1. ターミナルを開きます。S3 バケットに関連付けられているアカウントを使用するように AWS CLI プロファイルを設定してください。

  2. 次の コマンドをコピーします。vpc-region を VPC が存在する AWS リージョン (たとえば us-east-1) に置き換えてください。

    aws ssm get-parameter --name /aws/service/datasync/ami --region vpc-region
  3. コマンドを実行します。出力内の "Value" プロパティをメモしておきます。

    この値は、指定したリージョンの DataSync Amazon マシンイメージ (AMI) ID です。たとえば、AMI ID は ami-1234567890abcdef0 のようになります。

  4. 以下の URL をコピーします。再度、vpc-region を VPC が存在する AWS リージョン に置き換えてください。その後 ami-id を、以前のステップで書き留めた AMI ID に置き換えます。

    https://console.aws.amazon.com/ec2/v2/home?region=vpc-region#LaunchInstanceWizard:ami=ami-id
  5. ブラウザに URL を貼り付けます。

    の Amazon EC2 インスタンスの起動ページ AWS Management Console が表示されます。

  6. [インスタンスタイプ] で、[DataSync エージェントに推奨される Amazon EC2 インスタンス] を選択します。

  7. [キーペア] で、既存のキーペアを選択するか、新しいキーペアを作成します。

  8. [ネットワーク設定] で、エージェントをデプロイする VPC とサブネットを選択します。

  9. Launch instance (インスタンスの起動) を選択します。

  10. Amazon EC2 インスタンスが実行を開始したら、VPC エンドポイントを選択します

  11. エージェントをアクティブ化します

ステップ 4:Google クラウドストレージバケットの DataSync ソース場所を作成します

Google クラウドストレージバケットに DataSync の場所を設定するには、ステップ 1 で作成した HMAC キーのアクセス ID とシークレットが必要です。

DataSync ソース場所を作成するには
  1. https://console.aws.amazon.com/datasync/ で AWS DataSync コンソールを開きます。

  2. 左側のナビゲーションペインで [データ転送] を展開し、[場所] と [場所を作成する] を選択します。

  3. 場所タイプで、オブジェクトストレージを選択します。

  4. [エージェント] で、ステップ 3 で作成したロールを選択します。

  5. [サーバー] には、storage.googleapis.com と入力します。

  6. [バケット名] には、Google クラウドストレージバケットの名前を入力します。

  7. [追加の設定] を展開します。[サーバープロトコル][HTTPS] を選択します。[サーバーポート] には [443] を選択します。

  8. [認証] セクションまでにスクロールします。[認証情報が必要です] チェックボックスが選択されていることを確認し、次の操作を行います。

    • [アクセスキー] で、HMAC キーのアクセス ID を入力します。

    • [シークレットキー] には、HMAC キーのシークレットを入力します。

  9. [ロケーションを作成] を選択します。

ステップ 5:S3 バケットの DataSync 転送先の場所を作成します

データを保存したい場所には、DataSync の場所が必要です。

DataSync 転送先の場所を作成するには
  1. https://console.aws.amazon.com/datasync/ で AWS DataSync コンソールを開きます。

  2. 左側のナビゲーションペインで [データ転送] を展開し、[ロケーション][ロケーションの作成] を選択します。

  3. S3 バケット用の DataSync 場所を作成します

    DataSync エージェントを VPC にデプロイした場合、このチュートリアルでは、S3 バケットが VPC および DataSync エージェント AWS リージョン と同じ にあることを前提としています。

ステップ 6:DataSync タスクを作成して開始します

送信元と送信先のロケーションを設定すると、データの移動を開始できます AWS。

DataSync タスクを作成して開始するには
  1. https://console.aws.amazon.com/datasync/ で AWS DataSync コンソールを開きます。

  2. 左側のナビゲーションペインで [データ転送] を展開し、[タスク][タスクの作成] の順に選択します。

  3. [ソースの場所の構成] ページで、次の作業を行います。

    1. [既存の場所を選択] を選択します。

    2. ステップ 4 で作成したソース場所を選択し、[次へ] を選択します。

  4. [転送先の場所の構成] ページで、次の作業を行います。

    1. [既存の場所を選択] を選択します。

    2. ステップ 5 で作成した転送先の場所を選択し、[次へ] を選択します。

  5. [設定の構成] ページで、次の操作を行います。

    1. [データ転送設定][その他の設定] を展開し、[オブジェクトタグのコピー] チェックボックスをオフにします。

      重要

      DataSync は Amazon S3 API を使用して Google クラウドストレージと通信するため、オブジェクトタグをコピーしようとすると DataSync タスクが失敗する可能性があるという制限があります。

    2. 必要なその他のタスク設定を構成し、[次へ] を選択します。

  6. [レビュー] ページで、設定を確認し、[タスクを作成] を選択します。

  7. タスクの詳細ページで、[開始] を選択し、次のいずれかを選択します。

    • 変更せずにタスクを実行するには、[デフォルトで開始] を選択します

    • 実行前にタスクを変更するには、[優先オプションで開始] を選択します。

タスクが完了すると、Google クラウドストレージバケットのオブジェクトが S3 バケットに表示されます。