В документации не очень понятно, как установить и использовать qemu-guest-agent в Ubuntu 12.04.
Так кто-нибудь может мне помочь?
http://wiki.libvirt.org/page/Qemu_guest_agent
Это программа-демон, работающая внутри домена, которая должна помогать приложениям управления выполнять функции, которым нужна помощь гостевой ОС. Я хочу узнать IP-адрес гостевой виртуальной машины, используя команду guest-network-get-interfaces qemu-guest-agent.
Есть ли другой способ узнать IP-адрес гостевой виртуальной машины?
arp -an, arpwatch ,echo syslog | grep $mac_address бесполезен в моем сценарии?
решение1
Прежде всего установите последнюю версию libvirt-bin(>=1.0.0) на хост-систему. Установка libvirt-bin(>=1.0.0) на Ubuntu12.04 сама по себе является проблемой из-за зависимостей. Эта ссылка может помочь сделать это: 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>
Выключите и запустите виртуальную машину и выполните следующую команду, чтобы получить IP-адрес. Есть много других вещей, которые можно сделать с помощью гостевого агента.
virsh qemu-agent-command VMNAME '{"execute":"guest-network-get-interfaces"}'
Использованная литература:http://wiki.stoney-cloud.org/wiki/Qemu_Guest_Agent_Integration