Conexión remota a QEMU (virt-manager/virsh)

por | marzo 3, 2018

Para conectarnos remotamente a QEMU existen diversos métodos: SSH, TCP, SSL/TLS. De todos ellos el que me resulta maś sencillo es SSH. En mi caso, tengo mis máquinas virtuales KVM en un sobremesa al que muchas veces me conecto para administrar desde mi portátil. Como es obvio, necesitaremos tener en la máquina remota instalado y corriendo openssh-server (demonio sshd)

En nuestra máquina cliente instalamos ssh-askpass, necesario si utilizamos virt-manager para la conexión remota como veremos más adelante:

apt-get install ssh-askpass

Utilizando virt-manager para conectarnos, vamos a File -> Add Connection. Seleccionamos SSH y rellenamos los distintos parámetros según corresponda:

Cuando intentemos conectar, nos preguntará nuestra contraseña para el usuario de conexión. En mi caso es jota, que tiene como grupos secundarios libvirt y libvirt-qemu para poder administrar máquinas virtuales

Una vez conectados, podemos administrar desde virt-manager nuestras máquinas virtuales remotas:

Si no queremos utilizar entorno gráfico, también podemos hacer lo mismo con virsh:

jota@jota-portatil:~$ virsh -c  qemu+ssh://jota@192.168.1.39/system
The authenticity of host '192.168.1.39 (192.168.1.39)' can't be established.
ECDSA key fingerprint is SHA256:ImTudvS+iur+0ZkYoewBidYcckq3ObqXXRBMq2VvG8A.
Are you sure you want to continue connecting (yes/no)? yes
jota@192.168.1.39's password: 
Welcome to virsh, the virtualization interactive terminal.

Type:  'help' for help with commands
       'quit' to quit

virsh # 

Una vez conectado a QEMU en mi máquina remota, puedo listar y operar las máquinas que allí tengo:

virsh # list --all
 Id    Name                           State
----------------------------------------------------
 1     wcg-node1                      running
 2     wcg-node2                      running
 3     wcg-node3                      running
 -     MID_jota-analytics             shut off
 -     SEC_security-audits            shut off
 -     TEST_centos7                   shut off
 -     TEST_lubuntu                   shut off
 -     TEST_manageIQ                  shut off
 -     win2k8                         shut off

Otra tercera opción bastante sencilla sería simplemente conectarnos por SSH al servidor remoto, exportar las X a local y después ejecutar virt-manager.