移行を作成する

VM の移行を開始するには、移行を作成します。これにより、移行プラン オブジェクトが作成されます。通常、移行を実行する前に、生成されたプランをさらに確認してカスタマイズする必要があります。

移行は、移行処理の実行と、migctlGoogle Cloud Console での移行アクティビティとステータスのモニタリングに使用する中心的なオブジェクトです。移行オブジェクトは Kubernetes カスタム リソース定義(CRD)として実装され、Kubernetes PersistentVolumeClaim などの追加リソースとともに移行計画に含まれています。

始める前に

Compute Engine

VMware

  • vmId - ソース プラットフォームで認識されている、移行する VM の ID または名前。次のいずれかの値を使用できます。

    • VM 名。各 VM 名が VMware デプロイ全体で一意であることが確実であれば、簡単な VM 名を使用できます。VM 名が重複している可能性がある場合は、以下で説明する VM ID を使用します。

      次の画像に示すように、vSphere ウェブ クライアントから VM 名を取得できます。

    • vSphere の VM ID(MoRef とも呼ばれます)。これは VM を選択すると、vSphere ウェブ クライアントの URL から表示できます。

      MoRef は、vSphere の URL の中にあります。

      MoRef は PowerCLI を使用して確認することもできます。

AWS

Amazon EC2 コンソールのインスタンス ID

Azure

  • vmId - ソース VM の Azure VM リソース ID。この値を取得する方法は次のとおりです。

    1. Azure Portal にアクセスしてログインします。
    2. 左側のナビゲーション パネルで [仮想マシン] をクリックします。
    3. [仮想マシン] ページで、VM の名前をクリックします。
    4. VM のページのナビゲーション パネルで、[プロパティ] をクリックします。
    5. [プロパティ] ページでリソース ID の値を探します。

      Azure Portal のリソース ID

    6. リソース ID の値を使用します。

移行の作成

migctl ツールまたは Google Cloud Console を使用して移行を作成します。

次の例では、intent フラグに Image 値を使用しています。ただし、intent フラグの値はワークロードと必要な移行結果に基づいて選択します。詳細については、このトピックの後半をご覧ください。

Google Cloud の migctl

Compute Engine

  1. Compute Engine VM を停止します。移行を作成するには、VM を停止する必要があります。移行が完了したら、VM を再起動できます。

  2. 移行を作成します。

    migctl migration create my-migration --source my-ce-src --vm-id my-id --intent Image

    ここで、--vm-id は Google Cloud Console に表示される Compute Engine インスタンスの名前を指定します。

VMware

migctl migration create my-migration --source my-vmware-src --vm-id My_VMware_VM --intent Image

ここで、--vm-id は VM インスタンスの名前を指定します。VM 名(MyVM2 など)または VM MoRef ID(Managed Object Reference ID、vm-14 など)のいずれかを指定できます。VM ID の決定について詳しくは、始める前にをご覧ください。

AWS

migctl migration create my-migration --source my-aws-src --vm-id i-1234567890abcdef0 --intent Image

ここで、--vm-id は VM インスタンスの名前を指定します。VM インスタンスの名前は AWS UI に表示され、i-########## の形式で表示されます。VM ID の決定について詳しくは、始める前にをご覧ください。

Azure

migctl migration create my-migration --source my-azure-src --vm-id /subscriptions/a1b5c3d4-c3d9-a1a2-e5f6-a1t2c3d4k5f6/resourceGroups/MyResourceGroup/providers/Microsoft.Compute/virtualMachines/my-virtual-machine --intent Image

ここで、--vm-id は VM インスタンスの名前を指定します。Azure UI に VM インスタンスの名前が表示されます。VM ID の決定について詳しくは、始める前にをご覧ください。

VMware の migctl

migctl migration create my-migration --source local-vmware-src --vm-id My_VMware_VM --intent Image

ここで、--vm-id は VM インスタンスの名前を指定します。VM 名(MyVM2 など)または VM MoRef ID(Managed Object Reference ID、vm-14 など)のいずれかを指定できます。VM ID の決定について詳しくは、始める前にをご覧ください。

AWS の migctl

migctl migration create my-migration --source local-aws-src --vm-id My_AWS_VM --intent Image

--vm-id は AWS インスタンスの名前を指定します。VM ID の決定について詳しくは、始める前にをご覧ください。

Console

  1. 移行元が Compute Engine VM の場合、Compute Engine VM を停止します。移行を作成するには、VM を停止する必要があります。移行が完了したら、VM を再起動できます。

  2. Cloud Console で Migrate for Anthos ページを開きます。

    [コンテナへの移行] ページに移動

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

  4. [移行を作成] をクリックします。

  5. 移行名を入力します。

  6. 移行元の追加で作成した移行元を選択します。

  7. [VM OS の種類] を Linux に設定します。

  8. ソースの VM ID を入力します。VM ID の決定について詳しくは、始める前にをご覧ください。

  9. 後述のように、移行インテントを設定します。

  10. [移行を作成] をクリックします。

    移行の作成が完了すると、[ステータス] 列に [移行計画の生成完了] と表示されます。

CRD

  1. 移行my-migration.yaml ファイルを作成して、移行を定義します。

    このファイルでは、sourceProvider は前に作成された SourceProvider の名前を指定し、sourceId は Compute Engine インスタンスの名前を指定します。

    apiVersion: anthos-migrate.cloud.google.com/v1beta2
    kind: Migration
    metadata:
     name: my-migration
     namespace: v2k-system
     annotations:
       anthos-migrate.cloud.google.com/initial-intent: Image
    spec:
     osType: Linux
     sourceSnapshot:
      sourceProvider: my-ce-src
      sourceId: my-id
  2. Compute Engine VM を移行する場合は、VM を停止します。移行を作成するには、VM を停止する必要があります。移行が完了したら、VM を再起動できます。

  3. 次のファイルを適用します。

    kubectl apply -f my-migration.yaml

移行インテントの設定

移行を作成するときは、ワークロードの性質に基づいて intent フラグ値を指定します。フラグの値は、移行プランの内容を決定します。

インテント フラグの値 使うタイミング
Image ステートレス ワークロードで使用します。
ImageAndData アプリケーションとユーザーモードのシステムがコンテナ イメージに抽出され、データが永続ボリュームに抽出されるステートフル ワークロードで使用します。 また、ImageAndData を使用すればステートフル ワークロードの画像のみ抽出が可能で、データの個別での抽出や同期ができます。ImageAndData の使用でワークフローは広範囲に及びます。結果として処理するアーティファクトが増え、delete アクションの考慮事項にも影響します。
Data 永続ボリュームに抽出されるのは移行プランのデータ部分のみとなるステートフル ワークロードで使用します。 同じソース VM と移行プランを使用してこの intent 値を繰り返し実行すると、前回のデータ同期以降の差分処理変更がターゲット永続ディスクに同期されます。

移行の作成のモニタリング

migctl ツールまたは Google Cloud Console を使用して移行の作成の進行状況をモニタリングします。

Google Cloud の migctl

  1. 移行が完了するまで待ちます。

    migctl migration status my-migration
    
    NAME           CURRENT-OPERATION      PROGRESS   STEP                   STATUS   AGE
    my-migration   GenerateMigrationPlan  [1/3]      CreateSourceSnapshots  Running  13s 
  2. Compute Engine VM を移行する場合は、それから再起動します。移行を作成するには、VM を停止する必要があります。

VMware の migctl

移行が完了するまで待ちます。

migctl migration status my-migration

NAME           CURRENT-OPERATION      PROGRESS STEP                   STATUS   AGE
my-migration   GenerateMigrationPlan  [1/3]    CreateSourceSnapshots  Running  13s

AWS の migctl

移行が完了するまで待ちます。

migctl migration status my-migration

NAME           CURRENT-OPERATION      PROGRESS STEP                   STATUS   AGE
my-migration   GenerateMigrationPlan  [1/3]    CreateSourceSnapshots  Running  13s

Console

移行ステータスに、移行の作成が完了したことが表示されたら、次のステップに進みます。

  1. Cloud Console で Migrate for Anthos ページを開きます。

    [コンテナへの移行] ページに移動

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

  3. 次の方法で移行のステータスを表示します。

    • 移行の行について [ステータス] 列を表示します。

    • 移行名をクリックします。[移行の詳細] ページが開きます。[モニタリング] タブをクリックして詳細なステータスを確認するか、[イベント] をクリックして移行イベントを確認します。

  4. 移行の作成が完了すると、[ステータス] に [移行計画の生成完了] と表示されます。

  5. Compute Engine VM を移行する場合は、それから再起動します。移行を作成するには、VM を停止する必要があります。

CRD

kubectl を使用して、必要なフィールドに JSONPath を指定し、移行情報とステータスを取得します。

  1. 移行オペレーションを取得します。

    kubectl get migrations.anthos-migrate.cloud.google.com -n v2k-system  my-migration -o jsonpath={.status.currentOperation}

    GenerateMigrationPlan を返します。

  2. 移行ステータスを取得します。

    kubectl get migrations.anthos-migrate.cloud.google.com -n v2k-system my-migration -o jsonpath={.status.status}

    ステータスがオペレーションの完了を示したら、次の手順に進みます。

  3. Compute Engine VM を移行する場合は、それから再起動します。移行を作成するには、VM を停止する必要があります。

次のステップ