ドキュメントでは、Ubuntu 12.04 に qemu-guest-agent をインストールして使用する方法があまり明確ではありません。
それで誰か助けてくれませんか?
http://wiki.libvirt.org/page/Qemu_guest_agent
これはドメイン内で実行されるデーモン プログラムであり、ゲスト OS の支援を必要とする機能の実行を管理アプリケーションで支援することを目的としています。guest-network-get-interfaces qemu-guest-agent コマンドを使用して、ゲスト VM の IP アドレスを知りたいです。
ゲスト VM の IP アドレスを見つける他の方法はありますか?
arp -an、arpwatch、echo syslog | grep $mac_address は私のシナリオでは役に立ちません。
答え1
まず、ホスト システムに最新バージョンの libvirt-bin(>=1.0.0) をインストールします。依存関係があるため、Ubuntu12.04 に libvirt-bin(>=1.0.0) をインストールするのは困難です。次のリンクが役立つ場合があります。 https://tad-do.net/2013/02/22/testing-new-libvirt-features-on-ubuntu-12-04/
次に、ホスト上で次のコマンドを実行します。
mkdir -p /var/lib/libvirt/qemu/channel/target chown -R libvirt-qemu:kvm /var/lib/libvirt/qemu/channel
/etc/apparmor.d/abstractions/libvirt-qemu の下部に以下を追加します。
/var/lib/libvirt/qemu/channel/target/* rw,
ゲスト VM に qemu-guest-agent をインストールします。
sudo apt-get install qemu-guest-agent
virsh は VMNAME を編集し、デバイスに次の行を追加します。
<channel type="unix"> <source mode="bind"/> <target type="virtio" name="org.qemu.guest_agent.0"/> </channel>
VM をシャットダウンして起動し、次のコマンドを実行して IP アドレスを取得します。ゲスト エージェントを使用して実行できる操作は他にも多数あります。
virsh qemu-agent-command VMNAME '{"execute":"guest-network-get-interfaces"}'
参考文献:http://wiki.stoney-cloud.org/wiki/Qemu_Guest_Agent_Integration