10.3. Windows ゲストでの QEMU ゲストエージェントの実行
Red Hat Enterprise Linux ホストマシンは、ゲストで QEMU ゲストエージェントを実行することにより、Windows ゲストにコマンドを発行できます。これは、Red Hat Enterprise Linux 6.5 以降を実行しているホスト、および次の Windows ゲストオペレーティングシステムでサポートされています。
- Windows XP Service Pack 3 (VSS はサポートされていません)
- Windows Server 2003 R2 - x86 および AMD64 (VSS はサポートされていません)
- Windows Server 2008
- Windows Server 2008 R2
- Windows7 - x86 および AMD64
- Windows Server 2012
- Windows Server 2012 R2
- Windows8 - x86 および AMD64
- Windows8.1 - x86 および AMD64
注記
Windows ゲスト仮想マシンには、Windows 用の QEMU ゲストエージェントパッケージが必要です。qemu-guest-agent-win。このエージェントは、Red Hat Enterprise Linux で実行されている Windows ゲスト仮想マシンの VSS(ボリュームシャドウコピーサービス) サポートに必要です。詳細はこちらの記事を参照してください:
手順10.2 Windows ゲストでの QEMU ゲストエージェントの設定
Red Hat Enterprise Linux ホストマシンで実行されている Windows ゲストの場合は、次の手順に従います。
Red Hat Enterprise Linux ホストマシンを準備します
次のパッケージが Red Hat Enterprise Linux ホスト物理マシンにインストールされていることを確認してください。- virtio-win
usr/share/virtio-win/
にあります。
Windows ゲストのドライバーをコピーするには、次のコマンドを使用して qxl ドライバーの*.iso
ファイルを作成します。# mkisofs -o /var/lib/libvirt/images/virtiowin.iso /usr/share/virtio-win/drivers
Windows ゲストを準備する
virtio-serial をインストールしますドライバーを更新するために Windows ゲストに*.iso
をマウントすることにより、ゲストのドライバー。ゲストを起動し、次に示すようにドライバーの.iso ファイルをゲストに添付します ( hdb という名前のディスクを使用)。# virsh attach-disk guest /var/lib/libvirt/images/virtiowin.iso hdb
Windows のを使用してドライバーをインストールするには、次のメニューに移動します。- virtio-win ドライバーをインストールするには -> > を選択します。
Windows ゲスト XML 設定ファイルを更新します
Windows ゲストのゲスト XML ファイルは、Red Hat Enterprise Linux ホストマシンにあります。このファイルにアクセスするには、Windows ゲスト名が必要です。ホストマシンで #virsh list コマンドを使用して、認識できるゲストを一覧表示します。この例では、ゲストの名前は win7x86 です。#virsh edit win7x86 コマンドを使用して次の要素を XML ファイルに追加し、変更を保存します。ソースソケット名は、この例では win7x86.agent という名前で、ホスト内で一意である必要があることに注意してください。図10.2 Windows ゲスト XML を編集して QEMU ゲストエージェントを設定する
... <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/win7x86.agent'/> <target type='virtio' name='org.qemu.guest_agent.0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <channel type='spicevmc'> <target type='virtio' name='com.redhat.spice.0'/> <address type='virtio-serial' controller='0' bus='0' port='2'/> </channel> ...
Windows ゲストを再起動します
Windows ゲストを再起動して、変更を適用します。# virsh reboot win7x86
Windows ゲストで QEMU ゲストエージェントを準備します
Windows ゲストでゲストエージェントを準備するには:最新のものをインストールするvirtio-winパッケージ
Red Hat Enterprise Linux ホストの物理マシンのターミナルウィンドウで次のコマンドを実行して、インストールするファイルを見つけます。以下に示すファイルは、システムが検出したファイルと完全に同じではない場合がありますが、最新の公式バージョンである必要があることに注意してください。# rpm -qa|grep virtio-win virtio-win-1.6.8-5.el6.noarch # rpm -iv virtio-win-1.6.8-5.el6.noarch
インストールが完了したことを確認します
後に virtio-win パッケージのインストールが完了したら、/usr/share/virtio-win/guest-agent/
フォルダーを確認すると、次のような qemu-ga-x64.msi または qemu-ga-x86.msi という名前のファイルが見つかります。# ls -l /usr/share/virtio-win/guest-agent/ total 1544 -rw-r--r--. 1 root root 856064 Oct 23 04:58 qemu-ga-x64.msi -rw-r--r--. 1 root root 724992 Oct 23 04:58 qemu-ga-x86.msi
.msi ファイルをインストールします
Windows ゲスト (たとえば、win7x86) から、ファイルをダブルクリックして qemu-ga-x64.msi または qemu-ga-x86.msi をインストールします。インストールされると、システムマネージャー内の Windows ゲストに qemu-ga サービスとして表示されます。この同じマネージャーを使用して、サービスのステータスを監視できます。
10.3.1. Windows ゲストでの QEMUGuestAgent での libvirt コマンドの使用
QEMU ゲストエージェントは、Windows ゲストで次の virsh コマンドを使用できます。
- virsh shutdown --mode=agent - このシャットダウン方法は、virsh shutdown --mode=acpi よりも信頼性が高くなります。QEMU ゲストエージェントで使用する virsh shutdown は、クリーンな状態で協調ゲストをシャットダウンすることが保証されます。エージェントが存在しない場合、libvirt は代わりに ACPI シャットダウンイベントの挿入に依存する必要がありますが、一部のゲストはそのイベントを無視するため、シャットダウンしません。virsh reboot と同じ構文で使用できます。
- virsh snapshot-create --quiesce - スナップショットが作成される前に、ゲストが I / O を安定した状態にフラッシュできるようにします。これにより、fsck を実行したり、データベーストランザクションの一部を失うことなくスナップショットを使用できます。ゲストエージェントは、ゲストの相互作用を提供することで、高レベルのディスクコンテンツの安定性を実現します。
- virsh dompmsuspend - ゲストオペレーティングシステムの電源管理機能を使用して、実行中のゲストを優雅に一時停止します。