Após uma atualização automática do CentOS para a versão 7.7 em 17 de setembro de 2019, minhas máquinas virtuais QEMU/KVM não iniciam quando reinicio o servidor hypervisor.
Tentar iniciar a VM manualmente dá este erro:
# virsh start mygreatvm
error: failed to connect to the hypervisor
error: no connection driver available for <null>
Tentando listar as VMs atualmente definidas (as VMs em perguntas são configuradas para iniciar por padrão (inicialização automática) em cada inicialização para que elas apareçam pelo menos aqui):
# virsh list
error: failed to connect to the hypervisor
error: no connection driver available for <null>
Não há mensagens de erro nos logs do sistema e nem no /var/log/libvirt/qemu/*.log
. O daemon libvirt parece funcionar bem e não reclama dos servidores não iniciados em /etc/libvirt/qemu/autostart/*xml
:
# systemctl status libvirtd
● libvirtd.service - Virtualization daemon
Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2019-09-18 16:42:30 UTC; 2min 49s ago
Docs: man:libvirtd(8)
https://libvirt.org
Main PID: 1817 (libvirtd)
Tasks: 16 (limit: 32768)
CGroup: /system.slice/libvirtd.service
└─1817 /usr/sbin/libvirtd
Sep 18 16:42:30 server systemd[1]: Starting Virtualization daemon...
Sep 18 16:42:30 server systemd[1]: Started Virtualization daemon.
As atualizações no CentOS 7.7 incluem uma atualização para QEMU que precisa de um novo pacote para poder iniciar máquinas virtuais QEMU/KVM.
Em seguida, as máquinas virtuais podem ser iniciadas imediatamente (sem necessidade de reinicialização):
Alguns hipervisores CentOS podem ter este pacote já instalado; não haverá falhas nessas máquinas, mas o pacote não era necessário no passado.