Skip to main content

Qemu-guest-agent

Introducción

Quemu-guest-agent es un daemon que se instala en el sistema operativo de la máquina KVM invitado. Se utiliza para intercambiar información entre el host Proxmox y el invitado, y para ejecutar comandos en el invitado.

En Proxmox VE, qemu-guest-agent se usa principalmente para dos cosas:

Para apagar correctamente el invitado, en lugar de depender de los comandos de ACPI o las políticas de Windows

Para congelar el sistema de archivos invitado al hacer una copia de seguridad (en Windows, usa el servicio de instantáneas de volumen VSS).

Instalación

Host Proxmox

Debe instalar el agente invitado en cada VM y luego habilitarlo, puede hacerlo en la interfaz web (GUI) de Proxmox VE

Qemu-guest-agent.png

O bien desde la linea de comando:

qm set VMID --agent 1

En este caso:

qm set 160 --agent 1

Invitado

Linux

En Linux, simplemente tiene que instalar qemu-guest-agent, según el sistema.

Mostramos aquí los comandos para sistemas basados en Debian / Ubuntu y Redhat:

en sistemas basados en Debian / Ubuntu (con apt-get) ejecuta:

apt install qemu-guest-agent

O bien

apt-get install qemu-guest-agent

Para sistemas basados en Redhat

yum install qemu-guest-agent

Una vez instalado, es necesario que se active, para ello ejecutaremos

systemctl start qemu-guest-agent

Para que se ejecute al inicio del sistema cada vez

systemctl enable qemu-guest-agent

Windows

Primero debe descargar el controlador virtio-win iso

Luego instala el controlador virtio-serial:

Monta la ISO en tu máquina virtual de Windows (virtio - *. Iso)

Vete al Administrador de dispositivos de Windows

Busque "Controlador de comunicaciones simple PCI"

Haz clic en el botón derecho -> Actualizar controlador y seleccione la iso montada en DRIVE: \ vioserial \ <OSVERSION> \ donde <OSVERSION> es su versión de Windows (por ejemplo, 2k12R2 para Windows 2012 R2)

Después de eso, debes instalar el qemu-guest-agent:

Ir al ISO montada en el explorador

El instalador del agente invitado está en el directorio guest-agent.

Ejecuta el instalador con un doble clic (ya sea qemu-ga-x86_64.msi (64 bits) o qemu-ga-i386.msi (32 bits)

Después de eso, qemu-guest-agent debería estar en funcionamiento. Puede validar esto en la lista de servicios de Windows, o en un PowerShell con:

PS C:\Users\Administrator> Get-Service QEMU-GA

Status   Name               DisplayName
------   ----               -----------
Running  QEMU-GA            QEMU Guest Agent

Si no se está ejecutando, puedes usar el panel de control de Servicios para iniciarlo y asegurarte de que se inicie automáticamente en el próximo inicio.

Comprobando que la comunicación con el agente invitado está funcionando

La comunicación con el agente invitado se realiza a través de un socket Unix ubicado en /var/run/qemu-server/<vmid>.qga Puedes probar el agente de comunicación con el comando

qm agent <vmid> ping

Si qemu-guest-agent se está ejecutando correctamente en la VM, devolverá un mensaje de error.

root@hv101:~# qm agent 160 ping
root@hv101:~#

Más información

https://wiki.qemu.org/Features/GuestAgent