文件中並不清楚如何在 Ubuntu 12.04 中安裝和使用 qemu-guest-agent。
那麼有人可以幫我嗎?
http://wiki.libvirt.org/page/Qemu_guest_agent
它是在網域內運行的守護程序,旨在幫助管理應用程式執行需要來賓作業系統幫助的功能。我想使用 guest-network-get-interfaces qemu-guest-agent 指令來了解來賓虛擬機器的 IP 位址。
有其他方法可以找到來賓虛擬機器的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,
在來賓虛擬機器中安裝 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