12.4. 専用の追加ネットワークを介した仮想マシンの移行

ライブマイグレーション専用の Multus ネットワーク を設定できます。専用ネットワークは、ライブマイグレーション中のテナントワークロードに対するネットワークの飽和状態の影響を最小限に抑えます。

12.4.1. 仮想マシンのライブマイグレーション用の専用セカンダリーネットワークの設定

ライブマイグレーション専用のセカンダリーネットワークを設定するには、最初に CLI を使用して openshift-cnv namespace のブリッジネットワークアタッチメント定義を作成する必要があります。次に、NetworkAttachmentDefinition オブジェクトの名前を HyperConverged カスタムリソース (CR) に追加します。

前提条件

  • OpenShift CLI (oc) がインストールされている。
  • cluster-admin ロールを持つユーザーとしてクラスターにログインしている。
  • Multus Container Network Interface (CNI) プラグインがクラスターにインストールされている。
  • クラスター内のすべてのノードには少なくとも 2 つのネットワークインターフェイスカード (NIC) があり、ライブマイグレーションに使用される NIC が同じ VLAN に接続されている。
  • 仮想マシン (VM) が LiveMigrate エビクションストラテジーで実行されている。

手順

  1. NetworkAttachmentDefinition マニフェストを作成します。

    設定ファイルのサンプル

    apiVersion: "k8s.cni.cncf.io/v1"
    kind: NetworkAttachmentDefinition
    metadata:
      name: my-secondary-network 1
      namespace: openshift-cnv 2
    spec:
      config: '{
        "cniVersion": "0.3.1",
        "name": "migration-bridge",
        "type": "macvlan",
        "master": "eth1", 3
        "mode": "bridge",
        "ipam": {
          "type": "whereabouts", 4
          "range": "10.200.5.0/24" 5
        }
      }'

    1
    NetworkAttachmentDefinition オブジェクトの名前。
    2
    NetworkAttachmentDefinition オブジェクトが存在する namespace。これは openshift-cnv である必要があります。
    3
    ライブマイグレーションに使用する NIC の名前。
    4
    このネットワーク接続定義のネットワークを提供する CNI プラグインの名前。
    5
    セカンダリーネットワークの IP アドレス範囲。この範囲は、メインのネットワークの IP アドレスと重複できません。
  2. 以下のコマンドを実行して、デフォルトのエディターで HyperConverged CR を開きます。

    oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
  3. NetworkAttachmentDefinition オブジェクトの名前を HyperConverged CR の spec.liveMigrationConfig スタンザに追加します。以下に例を示します。

    設定ファイルのサンプル

    apiVersion: hco.kubevirt.io/v1beta1
    kind: HyperConverged
    metadata:
      name: kubevirt-hyperconverged
    spec:
      liveMigrationConfig:
        completionTimeoutPerGiB: 800
        network: my-secondary-network  1
        parallelMigrationsPerCluster: 5
        parallelOutboundMigrationsPerNode: 2
        progressTimeout: 150
    ...

    1
    ライブマイグレーションに使用される Multus NetworkAttachmentDefinition オブジェクトの名前。
  4. 変更を保存し、エディターを終了します。virt-handler Pod が再起動し、セカンダリーネットワークに接続されます。

検証

  • 仮想マシンが実行されるノードがメンテナンスモードに切り替えられると、仮想マシンは自動的にクラスター内の別のノードに移行します。仮想マシンインスタンス (VMI) メタデータのターゲット IP アドレスを確認して、デフォルトの Pod ネットワークではなく、セカンダリーネットワーク上で移行が発生したことを確認できます。

    oc get vmi <vmi_name> -o jsonpath='{.status.migrationState.targetNodeAddress}'

12.4.2. Web コンソールを使用して専用ネットワークを選択する

OpenShift Container Platform Web コンソールを使用して、ライブマイグレーション用の専用ネットワークを選択できます。

前提条件

  • ライブマイグレーション用に Multus ネットワークを設定しました。

手順

  1. OpenShift Container Platform Web コンソールで Virtualization > Overview に移動します。
  2. Settings タブをクリックし、Live migration をクリックします。
  3. Live migration network リストからネットワークを選択します。

12.4.3. 関連情報