第8章 トラブルシューティング
このセクションでは、一般的な移行の問題をトラブルシューティングするための情報を提供します。
8.1. アーキテクチャー
このセクションでは、MTV カスタムリソース、サービス、およびワークフローについて説明します。
8.1.1. MTV カスタムリソースおよびサービス
Migration Toolkit for Virtualization (MTV) は OpenShift Container Platform Operator として提供されます。これは、以下のカスタムリソース (CR) およびサービスを作成し、管理します。
MTV カスタムリソース
-
Provider
CR は、MTV がソースおよびターゲットプロバイダーに接続し、対話できるようにする属性を保存します。 -
NetworkMapping
CR は、ソースおよびターゲットプロバイダーのネットワークをマッピングします。 -
StorageMapping
CR は、ソースおよびターゲットプロバイダーのストレージをマッピングします。 -
Provisioner
CR は、サポートされているボリューム、アクセスモードなどのストレージプロビジョナーの設定を保存します。 -
Plan
CR には、同じ移行パラメーターと関連するネットワークおよびストレージマッピングを持つ仮想マシンの一覧が含まれます。 Migration
CR は移行計画を実行します。一度に実行できる
Migration
CR は、移行プランごとに 1 つのみです。単一のPlan
CR に複数のMigration
CR を作成できます。
MTV サービス
Provider Inventory
サービス:- ソースプロバイダーおよびターゲットプロバイダーに接続します。
- マッピングおよび計画に関するローカルインベントリーを維持します。
- 仮想マシンの設定を保存します。
-
仮想マシンの設定の変更が検出されたら、
Validation
サービスを実行します。
-
Validation
サービスは、ルールを適用して仮想マシンの移行の適合性を確認します。
Validation サービスはテクノロジープレビュー機能としてのみご利用いただけます。テクノロジープレビュー機能は、Red Hat の実稼働環境のサービスレベルアグリーメント (SLA) ではサポートされず、機能的に完全ではないことがあります。Red Hat は実稼働環境でこれらを使用することを推奨していません。これらの機能は、近々発表予定の製品機能をリリースに先駆けてご提供することにより、お客様は機能性をテストし、開発プロセス中にフィードバックをお寄せいただくことができます。
Red Hat のテクノロジープレビュー機能のサポート範囲についての詳細は、https://access.redhat.com/ja/support/offerings/techpreview/ を参照してください。
User Interface
サービス:- MTV CR を作成および設定できます。
- CR のステータスと移行の進捗を表示します。
Migration Controller
サービスは、移行のオーケストレーションを行います。移行計画を作成すると、Migration Controller サービスは計画を検証し、ステータスラベルを追加します。計画の検証に失敗した場合には、計画のステータスは
Not ready
となり、計画を使用して移行を行うことができません。計画が検証をパスすると、計画のステータスはReady
となり、移行を実行するために使用することができます。移行に成功すると、Migration Controller は計画のステータスをCompleted
に変更します。-
Virtual Machine Import Controller
、Kubevirt Controller
、およびContainerized Data Import (CDI) Controller
サービスが、ほとんどの技術操作を処理します。
8.1.2. 移行ワークフローの概要
ワークフローの概要は、ユーザーの視点での移行プロセスを表示します。
図8.1 ワークフローの概要
ワークフローでは、以下の手順について説明します。
- ソースプロバイダー、ターゲットプロバイダー、ネットワークマッピング、およびストレージマッピングを作成します。
以下のリソースを含む移行計画を作成します。
- ソースプロバイダー
- ターゲットプロバイダー
- ネットワークマッピング
- ストレージマッピング
- 1 つ以上の仮想マシン
-
移行計画を参照する
Migration
CR を作成して、移行計画を実行します。移行が不完全な場合、すべての仮想マシンが移行されるまで、移行計画を複数回実行することができます。 -
移行計画の各仮想マシンについて、Migration Controller は
VirtualMachineImport
CR を作成し、そのステータスを監視します。すべての仮想マシンが移行された場合、Migration Controller は移行計画のステータスをCompleted
に設定します。移行後のソース仮想マシンの電源状態は維持されます。
8.1.3. 詳細な移行ワークフロー
詳細な移行ワークフローを使用して、失敗した移行のトラブルシューティングを行うことができます。
図8.2 詳細な OpenShift Virtualization 移行ワークフロー
ワークフローでは、以下の手順について説明します。
-
移行計画の実行時に、Migration Controller は各ソース仮想マシン (VM) に対して
VirtualMachineImport
カスタムリソース (CR) を作成します。 -
Virtual Machine Import Controller は
VirtualMachineImport
CR を検証し、VirtualMachine
CR を生成します。 Virtual Machine Import Controller は、
VirtualMachineImport
CR にリンクされたネットワーク、ストレージ、およびメタデータを含む仮想マシン設定を取得します。各仮想マシンディスクの場合:
-
Virtual Machine Import Controller は、Persistent Volume Claim (永続ボリューム要求、PVC) およびアノテーションのラッパーとして
DataVolume
CR を作成します。 -
Containerized Data Importer (CDI) コントローラーは PVC を作成します。永続ボリューム (PV) は
StorageClass
プロビジョナーによって動的にプロビジョニングされます。 -
CDI Controller は
Importer
Pod を作成します。 VMware プロバイダーの場合、
Importer
Pod は VMware Virtual Disk Development Kit (VDDK) SDK を使用して仮想マシンディスクに接続し、仮想マシンディスクを永続ボリュームにストリーミングします。仮想マシンディスクが転送された後:
Virtual Machine Import Controller は、PVC が割り当てられた
Conversion
Pod を作成します。Conversion
Pod はvirt-v2v
を実行します。これは、ターゲット仮想マシンの PVC にデバイスドライバーをインストールし、設定します。-
Virtual Machine Import Controller は
VirtualMachineInstance
CR を作成します。 ターゲットの仮想マシンの電源がオンの場合、KubeVirt コントローラーは仮想マシン Pod を作成します。
仮想マシン Pod は、仮想マシンディスクとして割り当てられた PVC で
QEMU-KVM
を実行します。