第5章 Q35 マシンタイプへの仮想マシンの変換
RHEL 10 では、i440fx
マシンタイプが非推奨になりました。このタイプは今後の RHEL メジャーバージョンで削除される予定です。また、q35
マシンタイプを使用すると、i440fx
と比較して、Advanced Host Controller Interface (AHCI) や仮想入出力メモリー管理ユニット (vIOMMU) エミュレーションなど、追加の利点が得られます。
したがって、Red Hat では、i440fx
を使用する仮想マシン (VM) を、q35
を使用するように変換することを推奨しています。なお、まだ定義していない仮想マシン設定を変換することもできます。
留意事項
仮想マシンのマシンタイプを変更することは、物理マシンのマザーボードを変更することに似ています。そのため、仮想マシンのマシンタイプを i440fx
から q35
に変換すると、場合によってはゲストオペレーティングシステムの機能に問題が発生する可能性があります。
前提条件
RHEL 10 ホスト上の仮想マシンが
i440fx
マシンタイプを使用している。これを確認するには、次のコマンドを使用します。virsh dumpxml <vm-name> | grep machine
# virsh dumpxml <vm-name> | grep machine <type arch='x86_64' machine='pc-i440fx-10.0.0'>hvm</type>
Copy to Clipboard Copied! 仮想マシンの元の設定がバックアップ済みであり、その設定を必要に応じて変換や障害復旧に使用できる。
virsh dumpxml <vm-name> > <vm-name>-backup.xml
# virsh dumpxml <vm-name> > <vm-name>-backup.xml
Copy to Clipboard Copied!
仮想マシンが未定義である場合の手順
Q35 を使用するように仮想マシンの設定を調整します。元の設定として、以前に作成したバックアップファイルを使用します。
cat <vm-name>-backup.xml | virt-xml --edit --convert-to-q35 > <vm-name-q35>.xml
# cat <vm-name>-backup.xml | virt-xml --edit --convert-to-q35 > <vm-name-q35>.xml
Copy to Clipboard Copied! 仮想マシンを定義します。
virsh define <vm-name-q35>.xml
# virsh define <vm-name-q35>.xml
Copy to Clipboard Copied!
仮想マシンが定義済みである場合の手順
Q35 を使用するように仮想マシンの設定を調整します。
virt-xml <vm-name> --edit --convert-to-q35
# virt-xml <vm-name> --edit --convert-to-q35
Copy to Clipboard Copied! 仮想マシンが実行中の場合はシャットダウンします。
virsh shutdown <vm-name>
# virsh shutdown <vm-name>
Copy to Clipboard Copied!
検証
仮想マシンのマシンタイプを表示します。
virsh dumpxml <vm-name> | grep machine
# virsh dumpxml <vm-name> | grep machine <type arch='x86_64' machine='q35'>hvm</type>
Copy to Clipboard Copied! - 仮想マシンを起動し、ゲストオペレーティングシステムにログインできることを確認します。
トラブルシューティング
- Windows ゲストオペレーティングシステムを使用しており、変換後に仮想マシンがブートデバイスを検出できない場合は、セーフモードで起動してから仮想マシンを再起動します。
マシンタイプを変更したことにより仮想マシンが機能しなくなった場合は、バックアップした設定に基づいて新しい仮想マシンを定義します。
virsh define <vm-name>-backup.xml
# virsh define <vm-name>-backup.xml
Copy to Clipboard Copied!