以前のバージョンの Migrate for Compute Engine(旧称 Velostrata)のドキュメントが表示されています。引き続きこのバージョンを使用するか、現在のバージョンを使用してください。

Migrate for Compute Engine の Google Cloud の構成

Google Cloud Migrate for Compute Engine(旧称 Velostrata)を使用してアプリケーションを移行する前に、Google Cloud 組織を構成する必要があります。この構成により、Migrate for Compute Engine が移行を管理し、関連する他のコンポーネントと通信できるようになります。

Google Cloud の構成には、次に挙げるものが含まれます。

  1. 組織レベルの権限や、Migrate for Compute Engine が独自のインフラストラクチャに使用するプロジェクトを含む、GCP アカウント、組織、プロジェクトを設定します
  2. Migrate for Compute Engine、Google Cloud、ソース環境など、移行に使用するコンポーネントが Google Cloud Virtual Private Cloud でファイアウォールを介して互いに通信できるように、GCP のネットワークを設定します。
  3. Migrate for Compute Engine がリソースを作成し、移行の際に使用される API を管理できるように、Cloud Shell を使用して GCP の役割とサービス アカウントを作成し、権限を設定します。

始める前に

  • Google Cloud を構成する Migrate for Compute Engine スクリプトを実行する Google Cloud 組織管理者アカウントを指定しておく必要があります。
  • Google Cloud Virtual Private Cloud を設定しておく必要があります。Migrate for Compute Engine は Virtual Private Cloud を使用して Google Cloud とソース環境間の通信をサポートします。
  • GCP 組織は移行の一部であるいくつかのコンポーネントの 1 つです。それぞれで構成タスクが実行されます。詳しくは、Migrate for Compute Engine アーキテクチャの説明をご覧ください。

GCP のアカウント、組織、プロジェクトの設定

Google Cloud に移行するには、Google Cloud 組織が必要です。組織ができたら、Migrate for Compute Engine スクリプトに役割とサービス アカウントで GCP を設定する権限を割り当てます。Velostrata Manager をホストする Migrate for Compute Engine インフラストラクチャ プロジェクトを作成します。

  1. Google Cloud Console に移動してログインします。 まだアカウントをお持ちでない場合は、登録してアカウントを作成してください。
  2. 組織を設定するには、組織の作成と管理をご覧ください。詳細については、エンタープライズ企業のベスト プラクティスをご覧ください。
  3. アカウントと役割を作成するスクリプトを実行する管理者に、次の権限を割り当てます。

    • 組織の役割の管理者
    • 組織管理者
    • Compute 管理者
    • プロジェクト所有者

    Google Cloud アカウント、サービス アカウント、役割などの IAM のコンセプトについては、IAM の概要をご覧ください。

  4. Google Cloud に Migrate for Compute Engine インフラストラクチャをホストする Google Cloud プロジェクトを作成します。以降、このドキュメントではこのプロジェクトをインフラストラクチャ プロジェクトと呼びます。

GCP でのネットワークの設定

Migrate for Compute Engine は、Google Cloud Virtual Private Cloud ネットワークと VPN 接続をソース環境に使用します。また、移行が完了する前に特定のネットワーキング ルールを設定する必要があります。デプロイのファイアウォール、ルーティング、ネットワーク タグの詳細情報については、ネットワーク アクセスの要件をご覧ください。

ネットワーク構成タスクでは、Google Cloud Virtual Private Cloud がすでにあり、ユーザーが Virtual Private Cloud ファイアウォール ルールに精通していることを前提としています。詳細については、Google Cloud Virtual Private Cloud をご覧ください。

Cloud Shell を使用した GCP の役割とサービス アカウントの作成

Migrate for Compute Engine が Google Cloud リソースの作成と Cloud Storage API の管理に使用できる Google Cloud の役割サービス アカウントを作成する必要があります。Migrate for Compute Engine には、これらの変更を行うための Cloud Shell スクリプトが含まれています。

複数の Google Cloud プロジェクトに移行する場合を除き、このスクリプトにより、インフラストラクチャ プロジェクトに役割とサービス アカウントが作成されます。Velostrata Manager の役割を組織レベルで作成し、それ以外の役割とサービス アカウントをインフラストラクチャ プロジェクトに作成します。

次の表に、Cloud Shell スクリプトによって作成される役割とサービス アカウントを示します。

役割 サービス アカウント 有効な権限
Velostrata Manager(velos_manager_deployment-name velos-manager-deployment-name 移行のリソースすべて(VM、Cloud Storage バケットなど)を作成する権限。
Migrate for Compute Engine Cloud Extension(velos_ce_deployment-name velos-cloud-extension-deployment-name Cloud Storage API を移行用に管理する権限。

必要なサービス アカウントを作成する最も簡単な方法は、Migrate for Compute Engine で使用できる Cloud Shell スクリプトを使用する方法です。

スクリプトは、次の Google Cloud API を有効にします。

  • Cloud Resource Manager API
  • Identity and Access Management(IAM)API
  • Compute Engine API
  • Google Cloud Storage API
  • Stackdriver Logging API
  • Stackdriver Monitoring API

推奨されませんが、Google Cloud を手動で構成することもできます。

前提条件

組織内の複数のプロジェクトへと移行する場合は、数字の組織 ID が必要です。

構成スクリプトの実行

構成スクリプトを実行するには、次の手順に従います。

  1. Cloud Shell を開く
  2. Migrate for Compute Engine スクリプトが含まれているディレクトリに移動します。
        cd /google/migrate/gce
        
  3. サービス アカウントに追加するデプロイ名と役割 ID(例: main)を選択します。
  4. スクリプトを実行します。

          python3 velostrata_sa_roles.py -p project-ID -d deployment-name [-o organization]
        

    詳細については、下に記載の構成スクリプトのリファレンスをご覧ください。

単一プロジェクトの構成の例

この例では、velostrata インフラストラクチャ プロジェクトで、デプロイメント名 main で Google Cloud に役割とサービス アカウントを設定します。

    python3 velostrata_sa_roles.py -p velostrata -d main
    

このコマンドを実行すると、次のものが作成されます。

  • velostrata プロジェクトの velos_manager_main および velos_ce_main 役割。
  • velostrata プロジェクトの velos-manager-main@velostrata.iam.gserviceaccount.com および velos-cloud-extension-main@velostrata.iam.gserviceaccount.com サービス アカウント。

複数プロジェクトの構成の例

この例では、Google Cloud を複数のプロジェクトへの移行に対応する役割とサービス アカウントで設定します。このスクリプトは、velostrata インフラストラクチャ プロジェクトを使用します。

スクリプトを -o フラグで実行すると、組織レベルでマネージャーの役割が作成され、VM を複数のプロジェクトに移行できます。

    python3 velostrata_sa_roles.py -p velostrata -d main -o 12345678
    

このコマンドを実行すると、次のものが作成されます。

  • ID が 12345678 の組織における velos_manager_main 役割。
  • velostrata プロジェクト内の velos_ce_main 役割。
  • velostrata プロジェクトの velos-manager-main@velostrata.iam.gserviceaccount.com および velos-cloud-extension-main@velostrata.iam.gserviceaccount.com サービス アカウント。

構成スクリプトのリファレンス

velostrata_sa_roles.py スクリプトを使用して Migrate for Compute Engine にリソースの作成と Cloud Storage API の管理権限を付与する Google Cloud の役割とサービス アカウントを作成します。

複数の Google Cloud プロジェクトに移行する場合を除き、このスクリプトにより、インフラストラクチャ プロジェクトに役割とサービス アカウントが作成されます。その場合、組織レベルで Velostrata Manager の役割が作成され、インフラストラクチャ プロジェクトで他の役割とサービス アカウントが作成されます。

このスクリプトを正常に完了させるためには、GCP アカウント、組織、プロジェクトの設定で説明されている役割を、スクリプトを実行する管理者に割り当てておく必要があります。

    python3 velostrata_sa_roles.py -p project-ID -d deployment-name [-o organization-ID]
    

パラメータ

パラメータ 説明 必須
-d または --deployment-name デプロイ名を指定します。これはサービス アカウントと役割名に追加されます。8 文字未満で、小文字と数字のみ使用できます。
-p または --project-id 移行をホストする Google Cloud プロジェクトの ID を指定します。
-o または --org-id Google Cloud 組織の ID を数字で指定します。複数の Google Cloud プロジェクトに移行する場合に使用します。 ×

次の手順