11.7. NVIDIA vGPU が割り当てられた仮想マシンのライブマイグレーション
仮想化ワークロードで仮想 GPU (vGPU) を使用する場合は、vGPU が割り当てられた実行中の仮想マシン (VM) を別の KVM ホストにライブマイグレーションできます。現在、これは NVIDIA GPU でのみ可能です。
前提条件
- この機能をサポートする NVIDIA 仮想 GPU ソフトウェアドライバーバージョンを搭載した NVIDIA GPU がある。詳細は、関連する NVIDIA vGPU ドキュメント を参照してください。
- 正しく設定された NVIDIA vGPU が仮想マシンに割り当てられている。手順については、NVIDIA vGPU デバイスの管理 を参照してください。
複数の vGPU デバイスが接続された仮想マシンをライブマイグレーションすることも可能です。
- ホストが Intel 64 または AMD64 CPU アーキテクチャーを使用している。
- NVIDIA によって文書化されているすべての vGPU 移行の前提条件。詳細は、関連する NVIDIA vGPU ドキュメントを参照してください。
- すべての一般的な仮想マシン移行の前提条件。詳細は、コマンドラインを使用した仮想マシンの移行 を参照してください。
制限事項
- 特定の NVIDIA GPU 機能により移行が無効になる場合があります。詳細は、ご利用中のグラフィックカードに対応する NVIDIA の特定のドキュメントを参照してください。
- 一部の GPU ワークロードは、移行中に発生するダウンタイムと互換性がありません。その結果、GPU ワークロードが停止したりクラッシュしたりする可能性があります。vGPU ライブマイグレーションを試みる前に、ワークロードがダウンタイムと互換性があるかどうかをテストすることを推奨します。
現在、vGPU が接続された仮想マシンをライブマイグレーションする場合、一部の一般的な仮想化機能は使用できません。
仮想マシンのダーティーメモリーページレート生成の計算
現在、vGPU が接続された仮想マシンを移行する場合、
virsh domjobinfoおよびvirsh domdirtyrate-calcコマンドによって提供されるライブマイグレーションデータと統計情報は正確ではありません。計算では、vGPU の vRAM を含めずにゲスト RAM のみがカウントされるためです。- コピー後のライブマイグレーションの使用
- 仮想マシンでの仮想 I/O Memory Management Unit (vIOMMU) デバイスの使用
手順
ライブマイグレーションを進める方法は、コマンドラインを使用した仮想マシンの移行 を参照してください。
多くの場合、接続された vGPU デバイスに対して、移行コマンドに追加のパラメーターは必要ありません。
仲介デバイスに基づくレガシー vGPU を搭載した仮想マシンを、SR-IOV ベースの vGPU をサポートするホストにライブマイグレーションする場合 (例: RHEL 9 ホストから RHEL 10 ホストへの移行時)、マイグレーション中に vGPU タイプを変更できます。
仮想マシンの XML 設定ファイルのコピーを作成します。
# cp /etc/libvirt/qemu/<vm_config>.xml /etc/libvirt/qemu/<vm_new_config>.xml- XML 設定ファイルの新しいコピーを開きます。
仲介デバイス (
type='mdev') の<hostdev>セクションを、移行先ホストで使用可能な SR-IOV デバイスを使用するように調整します。以下に例を示します。<hostdev mode='subsystem' type='pci' managed='no' display='on' ramfb='on'> <source> <address domain='0x0000' bus='0x41' slot='0x02' function='0x3'/> </source> </hostdev>- XML 設定を保存します。
仮想マシンのライブマイグレーションを実行する際は、移行先ホストで調整済みの XML を使用するように仮想マシンを設定します。
# virsh migrate --live \ --xml <vm_new_config>.xml \ <vm-name> \ qemu+ssh://<destination_host>/system