移行元の追加

移行を開始する前に、移行を実施する対象のソース プラットフォームを表す移行元を作成します。このソースは移行計画に追加されます。

このトピックでは、サポートされている各ソースプラットフォームのソースを作成する方法について説明します。

始める前に

移行元の命名要件

Migrate to Containers に移行元を追加するときに、移行元に名前を割り当てます。この名前は次の要件を満たす必要があります。

  • 最大文字数は 63 文字とする。
  • 小文字の英数字またはハイフン(-)のみを使用する。
  • 先頭が英数字である。
  • 末尾が英数字である。

移行元の追加

migctl source create コマンドを実行するか、Google Cloud コンソールを使用して、移行元を定義します。このプロセスは、指定した移行元(VMware または Compute Engine)からの移行に必要な詳細情報を追加します。

Google Cloud の migctl

Compute Engine

  1. 移行元として Compute Engine を使用するためサービス アカウントを作成します。サービス アカウントの構成の説明に従って、JSON キーファイルをダウンロードします。

  2. サービス アカウントを使用して移行元を作成します。

    migctl source create ce SOURCE_NAME --project PROJECT_ID --json-key=COMPUTE_KEY.json

    次のように置き換えます。

    • SOURCE_NAME: 移行元に付ける名前
    • PROJECT_ID: プロジェクト ID
    • COMPUTE_KEY.json: Compute Engine サービスに使用されるサービス アカウントの JSON キーのパス

VMware

  1. Migrate to Virtual Machines のターゲット プロジェクトのサービス アカウントを指定するの説明に沿って、サービス アカウントを作成し、Compute Engine JSON キーファイルをダウンロードします。

  2. Migrate to Virtual Machines サービス アカウントを指定するの説明に沿って、サービス アカウントを作成し、Migrate to Virtual Machines の JSON キーファイルをダウンロードします。

  3. 移行元を作成するには、次のコマンドを実行します。

    migctl source create m2vm SOURCE_NAME --project PROJECT_ID --json-key M2VM_KEY.json --target-json-key COMPUTE_KEY.json --location LOCATION --m2vm-source M2VM_SOURCE
    

    次のように置き換えます。

    • SOURCE_NAME: 移行元に付ける名前
    • PROJECT_ID: Migrate to Virtual Machines プロジェクトの ID。
    • M2VM_KEY.json: Migrate to Virtual Machines サービスに使用されるサービス アカウントの JSON キーのパス。
    • COMPUTE_KEY.json: Compute Engine サービスに使用されるサービス アカウントの JSON キーのパス
    • LOCATION: Migrate to Virtual Machines サービスのロケーション。例: us-central1
    • M2VM_SOURCE: Migrate to Virtual Machines のソース名

Google Distributed Cloud Virtual for Bare Metal の migctl

VMware

migctl source create local-vmware local-vmware-src --vc 'VC' --username 'USERNAME' --dc VM_DC

次のように置き換えます。

  • VC: vCenter の DNS 名または vCenter の IP アドレス。例: 1.2.3.4
  • USERNAME: vCenter へのアクセス権限を持つユーザー。例: adminユーザーのパスワードの入力を求められます。
  • VM_DC: local-vmware ソースの vSphere データセンター。マルチ DC 環境では必須です。

CRD

Compute Engine

  1. Compute Engine を使用したサービス アカウントの作成の説明に従って、サービス アカウントを作成し、JSON キーファイルをダウンロードします。

  2. 次のコマンドを使用してシークレットを作成します。

    kubectl create secret generic COMPUTE_SECRET -n v2k-system --from-file=cloud-platform-service-account-key=COMPUTE_KEY.json

    次のように置き換えます。

    • COMPUTE_SECRET: Compute Engine のシークレットに付ける名前
    • COMPUTE_KEY.json: Compute Engine JSON ファイルの名前
  3. 移行元を作成するには、my-source-provider.yaml という SourceProvider ファイルを作成します。

    apiVersion: anthos-migrate.cloud.google.com/v1beta2
    kind: SourceProvider
    metadata:
      name: SOURCE_NAME
    spec:
      gce:
        project: PROJECT_ID
        serviceAccount:
          secretRef:
              name: COMPUTE_SECRET
              namespace: v2k-system
    

    次のように置き換えます。

    • SOURCE_NAME: 移行元に付ける名前
    • PROJECT_ID: プロジェクト ID
    • COMPUTE_SECRET: シークレットの名前。
  4. ファイルを適用します。

      kubectl apply -f my-source-provider.yaml

VMware

  1. Compute Engine を使用したサービス アカウントの作成の説明に従って、サービス アカウントを作成し、Compute Engine JSON キーファイルをダウンロードします。

  2. 次のコマンドを使用して Compute Engine のシークレットを作成します。

    kubectl create secret generic COMPUTE_SECRET -n v2k-system --from-file=cloud-platform-service-account-key=COMPUTE_KEY.json

    次のように置き換えます。

    • COMPUTE_SECRET: Compute Engine のシークレットに付ける名前
    • COMPUTE_KEY.json: Compute Engine JSON ファイルの名前
  3. Migrate to Virtual Machines サービス アカウントを指定するの説明に沿って、サービス アカウントを作成し、Migrate to Virtual Machines の JSON キーファイルをダウンロードします。

  4. 次のコマンドを使用して Migrate to Virtual Machines のシークレットを作成します。

    kubectl create secret generic M2VM_SECRET -n v2k-system --from-file=cloud-platform-service-account-key=M2VM_KEY.json

    次のように置き換えます。

    • M2VM_SECRET: Migrate to Virtual Machines のシークレットに付ける名前
    • M2VM_KEY.json: Migrate to Virtual Machines の JSON ファイルの名前
  5. 移行元を作成するには、my-source-provider.yaml という SourceProvider ファイルを作成します。

    apiVersion: anthos-migrate.cloud.google.com/v1beta2
    kind: SourceProvider
    metadata:
      name: SOURCE_NAME
    spec:
      gce:
        project: PROJECT_ID
        serviceAccount:
          secretRef:
            name: COMPUTE_SECRET
            namespace: v2k-system
      remoteSourceSpec:
        migrateForCEService:
          location: LOCATION
          project: PROJECT_ID
          serviceAccount:
            secretRef:
              name: M2VM_SECRET
              namespace: v2k-system
          sourceName: M2VM_SOURCE
    

    次のように置き換えます。

    • SOURCE_NAME: 移行元に付ける名前
    • PROJECT_ID: プロジェクト ID
    • COMPUTE_SECRET: Compute Engine のシークレットの名前
    • LOCATION: プロジェクトのロケーション
    • M2VM_SECRET: Migrate to Virtual Machines のシークレットの名前
    • M2VM_SOURCE: Migrate to Virtual Machines のソース名
  6. ファイルを適用します。

  kubectl apply -f my-source-provider.yaml

コンソール

  1. Google Cloud コンソールで [Migrate to Containers] ページを開きます。

    [Migrate to Containers] ページに移動

  2. リモート GKE Enterprise クラスタを使用している場合、つまり Bare Metal 向け Google Distributed Cloud Virtual を使用していて、まだクラスタにログインしていない場合は、ここでログインします。

    リモート クラスタへのアクセスの詳細については、Google Cloud コンソールからクラスタへのログインをご覧ください。

  3. [ソース] タブをクリックして、使用可能なソースを含むテーブルを表示します。

  4. [ソースを追加] をクリックします。

  5. プルダウン リストから、Migrate to Containers コンポーネントをすでにインストールしているクラスタを選択します。

  6. [次へ] をクリックします。

  7. 移行元の名前を指定します。

  8. [ソースタイプ] を選択します。

  9. [次へ] をクリックします。

  10. [ソースの種類] での選択に基づいてソースを構成します。

    1. Compute Engine の場合:

      1. 移行する VM が含まれているプロジェクトを選択します。

      2. サービス アカウントを選択します。次のいずれかを行います。

        1. 新しいサービス アカウントを作成します。新しいサービス アカウントの名前の入力を求められます。
        2. Compute Engine を移行元として使用するためのサービス アカウントの作成の説明に沿ってサービス アカウントを作成した場合は、既存のサービス アカウントを使用します。このオプションを選択すると、そのサービス アカウントに関連付けられた JSON キーファイルの内容を入力するように求められます。
  11. [次へ] をクリックします。

  12. [ソースを追加] を選択します。

ソースを追加すると、クラスタに新しい SourceProvider が表示されます。

kubectl get SourceProvider

ソースのリストの表示

移行のソースで環境が正常に構成されたことを確認するために、migctl source list コマンドまたは Google Cloud コンソールでソースのリストを確認できます。

migctl

migctl source list

移行元が READY 状態でない場合、次のコマンドを使用すると、移行元に関する詳細情報(エラー メッセージを含む)を取得できます。

migctl source status SOURCE_NAME

コンソール

  1. Google Cloud コンソールで [Migrate to Containers] ページを開きます。

    [Migrate to Containers] ページに移動

  2. 使用可能なソースを含むテーブルを表示するには、[ソースを管理] をクリックします。

移行元としての Migrate to Virtual Machines の追加

Migrate to Virtual Machines を移行元として準備する

移行元として Migrate for Virtual Machines 5.0 を使用するには、まず次に説明する手順で Migrate for Virtual Machines サービスを有効にし、コネクタをインストールする必要があります。

  1. Migrate to Virtual Machines サービスの有効化
  2. Migrate Connector のインストール

Migrate to Virtual Machines サービス アカウントを指定する

移行元として Migrate to Virtual Machines を使用するには、サービス プロジェクトにバインドされた vmmigration.admin ロールを持つサービス アカウントを作成します。

  1. m2c-m2vm-src-service サービス アカウントを作成します。

    gcloud iam service-accounts create m2c-m2vm-src-service  --project=PROJECT_ID
    

    PROJECT_ID は、実際のプロジェクト ID に置き換えます。

  2. サービス アカウントに vmmigration.admin ロールを付与します。

    gcloud projects add-iam-policy-binding PROJECT_ID  \
    --member="serviceAccount:m2c-m2vm-src-service@PROJECT_ID.iam.gserviceaccount.com" \
    --role="roles/vmmigration.admin"
    

    PROJECT_ID は、実際のプロジェクト ID に置き換えます。

  3. サービス アカウント用のキーファイルをダウンロードします。

    gcloud iam service-accounts keys create m2c-m2vm-src-service.json \
    --iam-account=m2c-m2vm-src-service@PROJECT_ID.iam.gserviceaccount.com \
    --project=PROJECT_ID
    

    PROJECT_ID は、実際のプロジェクト ID に置き換えます。

Migrate to Virtual Machines ターゲット プロジェクトのサービス アカウントを指定する

移行元として Migrate to Virtual Machines を使用するには、ターゲット プロジェクトにバインドされた compute.instanceAdmin.v1compute.storageAdmin のロールを持つサービス アカウントを作成します。

  1. m2c-m2vm-src-gce サービス アカウントを作成します。

    gcloud iam service-accounts create m2c-m2vm-src-gce  --project=PROJECT_ID
    

    PROJECT_ID は、実際のプロジェクト ID に置き換えます。

  2. サービス アカウントに compute.instanceAdmin.v1 ロールを付与します。

    gcloud projects add-iam-policy-binding TARGET_PROJECT_ID  \
    --member="serviceAccount:m2c-m2vm-src-gce@PROJECT_ID.iam.gserviceaccount.com
    --role="roles/compute.instanceAdmin.v1"
    

    PROJECT_ID は、実際のプロジェクト ID に置き換えます。

  3. サービス アカウントに compute.storageAdmin ロールを付与します。

    gcloud projects add-iam-policy-binding TARGET_PROJECT_ID  \
    --member="serviceAccount:m2c-m2vm-src-gce@PROJECT_ID.iam.gserviceaccount.com" \
    --role="roles/compute.storageAdmin"
    

    PROJECT_ID は、実際のプロジェクト ID に置き換えます。

  4. サービス アカウント用のキーファイルをダウンロードします。

    gcloud iam service-accounts keys create m2c-m2vm-src-gce.json \
    --iam-account=m2c-m2vm-src-gce@PROJECT_ID.iam.gserviceaccount.com \
    --project=PROJECT_ID
    

    PROJECT_ID は、実際のプロジェクト ID に置き換えます。

サービス アカウント キーを JSON ファイルとしてダウンロードした後、Migrate to Virtual Machines ワークロードへの移行に使用するソースを作成できます。

次のステップ