MTVを使用して、 VMware のVMを Red Hat OpenShift 仮想化環境へ移行する

「 Migration Toolkit for Virtualization(MTV)」を使用して、 VMware vSphere の仮想マシン(VM)を、 IBM Cloud 上の Red Hat OpenShift Virtualizationへ移行します。 VDDKイメージの設定、MTV Operatorのインストール、移行計画の作成、ウォーム移行およびコールド移行の実行、大規模ワークロード向けのパフォーマンス調整、および一般的な移行エラーの解決を行います。

概要

MTVは、 Red Hat OpenShift 上で動作する Red Hat OpenShift VirtualizationへVMを移行しました。

MTVは、以下の VMware vSphere ソースプロバイダーからの移行に対応しています:

  • VMware vSphere
  • によって作成されたオープン仮想アプライアンス(OVA)。 VMware vSphere

移行の前提条件と環境要件

ソフトウェアの互換性

移行を成功させるには、互換性のあるバージョンの「 Red Hat OpenShift 」および「 Red Hat OpenShift Virtualization」をインストールしてください。

MTV 2.9 に対応しているソフトウェアのバージョンは以下の通りです:

  • Red Hat OpenShift: 4.19, 4.18, 4.17
  • Red Hat OpenShift 仮想化: 4.19、 4.18、 4.17
  • VMware vSphere 6.5 またはそれ以降

ネットワーク要件

すべての移行において、ネットワークに関する前提条件が適用されます:

ネットワークの安定性
ソース環境と Red Hat OpenShift 仮想化クラスタ間のネットワーク接続は、信頼性が高く、中断のないものでなければなりません。
構成の整合性
移行中は、IPアドレス、仮想ローカルエリアネットワーク(VLAN)、その他のネットワーク設定を変更しないでください。 VM のMACアドレスは保持されるためです。
ネットワークアドレスの一意性
IBM Cloud クラシック・インフラストラクチャーからワークロードを移行する場合は、 IBM Cloud Transit Gateway を使用して、仮想プライベートクラウド(VPC)をクラシック・インフラストラクチャーに接続してください。 ワークロードをホストするためのVPCを作成する際は、ネットワークアドレスプレフィックスが、 IBM Cloud クラシック・インフラストラクチャーに接続されている他のVPCで使用されているプレフィックスと重複しないようにしてください。 VPC を作成する際は、「 各ゾーンにデフォルトのプレフィックスを作成する 」チェックボックスの選択を解除してください。 デフォルトのプレフィックスはVPC間で共通であるため、ルーティングの競合を引き起こす可能性があります。 VPCの作成後、必要に応じてアドレス・プレフィックスとサブネットを設定できます。
接続先ネットワーク
複数の送信元ネットワークと宛先ネットワークがマッピングされている場合は、追加の宛先ネットワークごとにネットワーク接続定義を作成してください。
必要なポート
ファイアウォールは、送信元プロバイダに基づいて、特定のポートを経由するトラフィックを許可する必要があります:
  • VMware vSphere: Transmission Control Protocol ( TCP ) は、 Red Hat OpenShift ノードから VMware vCenter® /ESXiホストへ、ポート443(インベントリおよびディスク転送の認証用)およびポート902(ディスク転送データのコピー用)を転送します。
  • OVA: TCP のポート2049(ネットワークファイルシステム( NFS )サービス用)および TCP または User Datagram Protocol ( UDP )のポート111(リモートプロシージャコール( RPC )ポートマッパー用。 NFSv4.0 でのみ必要)を、 Red Hat OpenShift の各ノードから、OVAファイルが格納されているサーバーに向けて設定してください。

出典: VM の前提条件

すべての移行対象となるソースVMは、以下の前提条件を満たしている必要があります:

メディアの状態
移行を行う前に、ISOイメージおよびCD-ROMをアンマウントしてください。
IP アドレッシング
各ネットワークインターフェースカード(NIC)には、 IPv4 アドレスまたは IPv6 アドレスのいずれかを設定する必要があり、両方を併用することも可能です。
オペレーティングシステム(OS)の認証
VM オペレーティングシステムは、変換の対象となるゲストOSとして認定され、サポートされている必要があります。
ブートの特徴
セキュアブートが有効になっている仮想マシンは、移行先プロバイダーで起動できなくなるため、自動的に移行されない場合があります。 この問題を解決するには、移行先のデバイスでセキュアブートを無効にしてください。
VMware ゲストエージェント
VMware 「 静的IPアドレスを維持する 」が有効になっている場合は、Tools または open-vm-tools が必要です。

VM 命名

VM の名前はこれらのガイドラインに従わなければならない:

  • VM の名前にピリオド(. )を含んではならない。MTVは自動的に、 VM の名前に含まれるピリオドをダッシュ (-) に変更します。
  • VM という名前は、 Red Hat OpenShift 仮想化環境内で一意である必要があります(つまり、他の VM という名前と重複してはなりません)。
  • VM の名前がルールに準拠していない場合、MTVは自動的に新しい名前を生成します。 MTVは、除外された文字を削除し、大文字を小文字に変換し、アンダースコア(_ )をダッシュ(- )に変更します。

暗号化サポート

MTVでは、以下の暗号化方式を使用したVMの移行をサポートしています:

  • Linux® VM: Linux Unified Key Setup (LUKS)。
  • Windows® 仮想マシン: BitLocker。

VMware vSphere 具体的な前提条件

VMware Tools

移行前のフックを使用して仮想マシンにアクセスするには、ソースとなる仮想マシンに「 VMware Tools」または「 open-vm-tools 」をインストールしてください。

VDDKの画像

VMware vSphere から仮想ディスクを移行する際は、 VMware Virtual Disk Development Kit (VDDK) を使用して、移行作業を効率化してください。

  • VDDKイメージは任意です。 ただし、これを省略すると移行速度が大幅に低下する可能性があります。また、 VM が VMware vSAN によってサポートされている場合は、これが必須となります。

VMware 特権

VMware の必須権限のうち、最低限の権限セットを保有している状態でログインしている必要があります。 詳しくは、 VMware 権限を 参照のこと。

温和な移住要件

ウォームマイグレーションを実行するには、仮想マシン( VM )および個々の VM ディスクそれぞれで、変更ブロック追跡(CBT)を有効にする必要があります。 プレコピー段階での増分コピーは、CBTスナップショットに依存している。 1つの VM、最大28のCBTスナップショットをサポートする。

MTVではハイバネーション状態のVMの移行に対応していないため、すべてのVMでハイバネーションを無効にしてください。ハイバネーションが無効になっていない場合、移行は失敗します。

ESXi ホストの設定

移行計画において、単一の ESXi( VMware vSphere ハイパーバイザー)ホストから 10 台以上の仮想マシンを同時に移行する必要がある場合は、そのホストのネットワークファイルコピー(NFC)サービスのメモリ容量を増やしてください。

  • NFCサービスメモリは、デフォルトで10個の並列接続のみをサポートしていますが、これは10件を超える VM の同時移行には不十分です。
  • maxMemory の値を 1000000000 (1 GB) に変更し、 hostd サービスを再起動してください。

Windowsのウォームマイグレーション

VMware から Microsoft Windows® の仮想マシンをホット移行するには、ゲストの VM 内のボリュームシャドウコピーサービス(VSS)が実行されている必要があります。 詳細については、 ソース仮想マシンの前提 条件を参照してください。

MTV Operator のインストールと設定

Red Hat OpenShift Webコンソール用のMTVプラグインを含む「MTV Operator」は、 Red Hat OpenShift Webコンソールまたはコマンドラインインターフェイス(CLI)のいずれかを使用してインストールできます。

MTV Operator をインストールする前に、以下の前提条件が満たされていることを確認してください:

  • Red Hat OpenShift をインストールしてください。 4.19、 4.18、または 4.17 から入手できます。
  • Red Hat OpenShift の移行先クラスターに、 Red Hat OpenShift Virtualization Operatorをインストールします。
  • cluster-admin の権限でログインしてください。

詳細については、「 Red Hat OpenShift Webコンソールを使用したMTVオペレーターのインストール 」を参照してください。

特に指定がない限り、 ForkliftController カスタムリソース(CR)を変更するか、Webコンソールの「 概要 」ページの「 設定 」セクションを使用して、MTVオペレーターの設定を行ってください。

MTV 概要ページの 「設定 」タブを使用して、以下の主要なパラメータを調整してください:

  • VM の移行処理の最大同時実行数(デフォルトは20)
  • コントローラメインコンテナCPU制限
  • コントローラ・メイン・コンテナのメモリ制限
  • コントローラ・インベントリ・コンテナのメモリ制限
  • プリコピー間隔(分)
  • スナップショットのポーリング間隔

詳細については、 MTVオペレーターの設定を 参照してください。

VMware vSphere からの仮想マシンの移行(UI ワークフロー)

VMware vSphere ソースプロバイダーを追加する

  1. 「仮想化のための移行 」>「 プロバイダー 」に移動し、「 プロバイダーの作成 」をクリックします。
  2. [選択] VMware を選択し、プロバイダーのリソース名とエンドポイントの種類( vCenter またはESXi)を指定します。
  3. SDKエンドポイントの URL を指定してください。例: https://vCenter-host-example.com/sdk。
  4. VDDKイメージを作成し、そのパスを指定します。 VDDKイメージを使用すると移行が迅速化されます。また、VMが VMware vSAN によってサポートされている場合は、VDDKイメージの使用が必須となります。
  5. vCenter または ESXi の認証情報を入力します。
  6. CA証明書の検証オプションを選択してください:「 カスタムCA証明書を使用する 」、「 システムのCA証明書を使用する 」、または「 証明書の検証をスキップする 」のいずれかを選択します。
  7. [ プロバイダーの作成 ] をクリックします。

移行計画の作成

  1. 一般:プラン名、プロジェクト、ソース・プロバイダ、ターゲット・プロバイダ/プロジェクトを定義する。

    • [ 仮想化のための移行 ] > [ 移行プラン ] から、[ プランの作成 ] をクリックしてウィザードを起動します。
    • プラン名、 プラン プロジェクト、 ソース プロバイダ、 ターゲット プロバイダ、 ターゲット プロジェクトを指定します。
  2. 仮想マシン

    • 移行する仮想マシンを選択してください。

    1つのプランに500以上のVMまたは500以上のディスクを含めることはできません。

  3. ネットワークマップを定義する

    • 既存の所有者のいないネットワークマップを使用するか(この場合、プランに添付されるコピーが作成されます)、または新しいネットワークマップ(プランが所有するもの)を使用するかを選択します。
    • 新しいマップを作成する場合は、ソースネットワークとターゲットネットワーク間のマッピングを定義してください。
  4. 移行の種類を選択してください

    • 「 コールド移行 (デフォルト)」(データコピー中に VM がシャットダウンされます)または「 ウォーム移行 」(プレコピー段階で VM が実行され、ダウンタイムを最小限に抑えます)を選択します。
  5. その他の設定(任意)

    • ディスクの復号パスフレーズ:LUKSで暗号化されたデバイスのパスフレーズを入力してください。
    • 転送ネットワーク:必要に応じて、プロバイダのデフォルトの転送ネットワークを上書きします。 Red Hat OpenShift の転送ネットワークの最大伝送単位(MTU)を変更する場合は、 VMware の移行ネットワークのMTUも調整する必要があります。
    • 静的IPアドレスの保持: 「静的IPアドレスの保持」 チェックボックスをオンにすると、静的IPアドレスの保持が試みられ、移行中に vNIC の変更によって生じる損失を軽減します。
    • ルートデバイス:マルチブートVMの場合、ルートデバイスのディスク上の場所を手動で指定してください。例: /dev/sdb2。
    • 共有ディスク:コールドマイグレーションでは、共有ディスクはデフォルトで有効になっています。 共有ディスクはマルチライターオプションを使用するため、移行プロセスが遅くなる可能性がある。
    • 移行前(移行前のソース VM に対する操作)または移行後(移行後の VM に対する操作)の「 フックを有効にする 」チェックボックスを選択します。
    • フックランナーのイメージ(デフォルトは quay.io/kubev2v/hook-runner )を指定し、 Ansible® プレイブックを用意する必要があります。 1つのプランにつき、マイグレーション前とマイグレーション後のフックは1つずつしか許可されません。
    • 「静的IPアドレスの保持」 を使用し、レイヤー2のプライマリユーザー定義ネットワーク(UDN)またはクラスタユーザー定義ネットワーク(CUDN)に移行する場合、ソースとなる VM は電源が入っており、 VMware ゲストエージェントが実行されている必要があります。 「 静的IPの保持 」は、セカンダリネットワークでは機能しません。
  6. レビューして作成

    • すべてのプランの詳細を確認する。 詳細を編集するには、「 編集」ステップのリンクを使用してください。
    • 「 プランを作成 」をクリックします。 MTVはこの計画を承認した。 検証に成功すると、「 プランの詳細 」ページが開きます。

作成後の設定

  1. プランの詳細ページ、特にウィザードには含まれていない設定について確認してください。

    • 「 プランの詳細 」ページには、ウィザードでは表示されない重要な設定が含まれています。
    • オプションの設定については、 プラン設定のセクションを確認してください。 設定を変更するには、「 オプション 」メニューを使用してください。
    • プランが正常に実行される前に、リストされたすべての条件が解決されていなければなりません 。

実行と監視

  1. 移行前の準備作業

    • ウォームマイグレーションを開始する前に、 VM のスナップショットを確認し、スナップショットをコミットまたは削除して、VMに十分なCBTスナップショットが利用可能であることを確認してください。
    • 対象ネームスペースの「 default 」サービスアカウントに対し、 Red Hat OpenShift のMTVネームスペースからVDDKイメージを取得するためのアクセス権を付与します。
    • 移行計画を検証し、警告やエラーがあれば解決してください。
    • 必要に応じて、ソースVMのフルバックアップを取る。
  2. マイグレーションを開始

    • 「 移行 」>「 仮想化プラン 」に進んでください。
    • 移行プランの横にある[ 開始] をクリックし、確認します。
    • データの破損を防ぐため、インポートするVMについては、 vMotion,、 svMotion,、およびリロケーションを無効にしてください。
  3. ウォーム移行の切り替え

    • ウォーム移行の場合、初期のデータ転送(プレコピー段階)は直ちに開始されます。
    • ソースの VM を停止し、最終的なデルタを転送するカットオーバー段階を開始するには、「 カットオーバー 」をクリックしてください。
    • 「移行期間」では、 移行の設定 (日時を指定)や移行の解除 (予定された日時をキャンセル)を行うことができます。
    • 切り替え前に、データ変更を最小限に抑えるため、ソースVM上のアプリケーション、ミドルウェア、およびデータベースサービスを停止してください。 MTVでは、この操作は必要ありません。 ただし、これらのサービスを停止することで、切り替え作業中のデータ不整合のリスクを低減できます。
  4. モニター

    • 「 移行状況 」リンクには、全体的な進捗状況、成功・失敗の件数、および現在のステータスが表示されます。
    • [ 仮想マシン ] タブでは、 VM の具体的なステータス、開始/終了時刻、コピーされたデータ量、および進行状況のパイプラインが表示されます。
    • 実行中または完了したマイグレーションのログにアクセスするには、「 Virtual Machines 」タブで VM を選択し、「 Pods 」セクションにある「 Logs 」リンクをクリックします。
  5. 移行後の制限

    • 移行が開始された後は、 VM のスナップショットを撮らないでください。スナップショットを撮ると、移行が失敗する原因となる可能性があります。
  6. 移行後の活動

    • 必要に応じて、ネットワーク設定とIPの変更を行う。
    • VM の管理用に、ロールベースのアクセス制御(RBAC)およびサービスアカウントを設定します。
    • 必要に応じて、ドメインネームシステム(DNS)レコードを更新してください。
    • DNS解決とネットワークポリシーを検証する。
    • アプリケーションとデータベースがカットオーバー前に停止していた場合、ターゲットVM上で起動する。
    • 移行したVM上のアプリケーション機能を検証する。

パフォーマンスとトラブルシューティング

  1. 移行スループットのためのネットワーク、ストレージ、およびホストのチューニング

    • 高速なネットワークとストレージを確保する: VMware および Red Hat OpenShift Container Platform(OCP)のいずれの環境においても、高速なストレージとネットワーク速度が必要です。
    • 高スループット:最適な結果を得るには、 VMware のネットワーク接続が、ESXiのデータストアの読み取り速度に見合う受信速度を確保できるよう、高スループット(少なくとも10ギガビット・イーサネットまたは10 GiB のネットワーク接続)を提供していることを確認してください。
    • 観測された速度:各ESXiホストの vmnic からの平均ネットワーク転送速度は、200~325 MiB/s の範囲でした。
    • ホストの設定:ESXi ホストの BIOS プロファイルおよびホストの電源管理設定を、可能な限り 「高性能 」に設定してください。 テストの結果、10台以上のVMを転送した場合、データストアの平均読み取りレートが15 MiB 増加したことが確認されました。
  2. 並行性

    • 最大同時転送数(MAX_VM_INFLIGHT ): MAX_VM_INFLIGHT というMTV変数を使用して、ESXiホストごとに許可される VM 転送の最大同時数を制御します。デフォルト値は20です。
    • VMware からローカルの Red Hat OpenShift 環境へのコールドマイグレーションにおいて、この設定は、ESXiホストごとに同時にマイグレーションされるVMの数を制御します。
    • VMware ウォームマイグレーションの場合、ESXi ホストごとに同時に移行するディスクの数を制御します。
    • 並列処理のメリット:1台のESXiホストから複数のVMに対して並行して移行を開始することで、順次移行する場合と比べて、移行にかかる総時間を大幅に短縮できます。 10台の仮想マシンを同時に移行する場合、順次移行する場合に比べて3倍速くなります。
    • 複数のホスト:複数の ESXi ホストを使用し、仮想マシンをそれらに均等に分散させることで、移行時間を短縮できます。 例えば、テストの結果、8台のESXiホストを使用して80台のVMを同時に移行した場合、単一のホストを使用する場合に比べて4倍速いことが判明しました。
  3. 大規模な移住

    • プランの制限:1つの移行プランにつき、VMは500台、ディスクは500個を超えることはできません。
    • 複数のプラン:多数のVMを移行する場合、1つの大規模なプランを複数の中規模なプラン(たとえば、1プランあたり100台のVM)に分割することで、並行して移行を開始できるようになり、移行にかかる総時間を短縮できます。
  4. ウォームマイグレーションのチューニング

    • ディスクの同時実行数の上限:最大400件の並列ディスク転送(各VMに2つのディスクを割り当てた200台のVM)を含むテスト。 並列ディスク移行の速度を最大化するには、移行対象のディスク数を200枚以下に制限してください。この閾値を超えると、速度が約25%低下します。
    • 即時切り替え:移行全体の所要時間を最小限に抑え、 VM ごとにプレコピーが1回だけ実行されるようにするため、移行計画の開始直後に切り替えが行われるように設定します。
    • プレコピー間隔の調整:移行開始からカットオーバーまでの間に十分な時間的余裕がある場合は、 controller_precopy_interval パラメータ(デフォルトは60分)を120分から240分の範囲に増やし、カットオーバー前のスナップショットの総数とディスク転送量を削減してください。
  5. 大容量ディスク(1 TB以上)

    • 優先順位付け:大容量のディスクを伴う移行作業については、MTV関連の作業を優先し、他のネットワークやストレージへの負荷が大きい作業が同時に実行されないようにしてください。
    • 入れ替わりの激しいVM:スナップショット間のデータ変更量が100 GB以上と、入れ替わり率の高い大規模なVMについては、予定された切り替えの少なくとも24時間前に、デフォルトの60分間のウォームマイグレーション controller_precopy_interval を短縮することを検討してください。
    • コールド移行とウォーム移行:ダウンタイムをある程度許容できるのであれば、特に大容量の単一ディスクVMについては、ウォーム移行よりもコールド移行を選択してください。 VM のスナップショットが大きな場合はなおさらです。
    • データベース:スナップショットが不可能な連続書き込みを行う大規模なデータベース・ディスクの場合、MTV以外のデータベース・ベンダー固有のレプリケーション・オプションを使用することを検討する。
  6. 非同期入出力(AIO)のバッファリング(コールドマイグレーションのみ)

    • 機能:AIOバッファリングにより、ネットワークブロックデバイス(NBD)トランスポートのNFCパラメータを変更し、コールドマイグレーションのパフォーマンスを向上させる可能性があります。
    • コールドマイグレーションの要件:AIOバッファリングはコールドマイグレーションのユースケースにのみ適しており、ウォームマイグレーションを開始する前に、必ずこれを無効にする必要があります。

トラブルシューティング

移行中にエラーが発生した場合は、 「VMware vSphere から Red Hat OpenShift Virtualization への MTV 移行のトラブルシューティング 」を参照し、スナップショットの制限、VDDK の取得失敗、DNS 解決の失敗、静的 IP アドレスの保持に関する問題など、よくある問題の解決方法を確認してください。

追加リソース

次のステップ

MTV による移行が完了したら、以下の手順を実行できます: