为什么我的 QEMU/KVM 虚拟机在 CentOS 7.7 更新后无法启动?

为什么我的 QEMU/KVM 虚拟机在 CentOS 7.7 更新后无法启动?

2019 年 9 月 17 日将 CentOS 自动更新到版本 7.7 后,当我重新启动虚拟机管理程序服务器时,我的 QEMU/KVM 虚拟机无法启动。

尝试手动启动虚拟机会出现以下错误:

# virsh start mygreatvm
error: failed to connect to the hypervisor
error: no connection driver available for <null>

尝试列出当前定义的虚拟机(有问题的虚拟机设置为在每次启动时默认启动(自动启动),因此它们至少应该出现在此处):

# virsh list
error: failed to connect to the hypervisor
error: no connection driver available for <null>

系统日志中没有错误消息,/var/log/libvirt/qemu/*.log. libvirt 守护进程似乎运行良好,并且不会抱怨以下位置的未启动服务器/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.

答案1

CentOS 7.7 中的更新包括 QEMU 的更新,它需要新的软件包才能启动 QEMU/KVM 虚拟机。

# yum install libvirt-daemon-driver-qemu

然后虚拟机可以立即启动(无需重新启动):

# systemctl restart libvirtd
# virsh list
 Id    Name                           State
----------------------------------------------------
 1     mygreatvm                      running
 2     mygreatvm2                     running
 3     mygreatvm3                     running

某些 CentOS 虚拟机管理程序可能已经安装了此软件包;这些机器不会出现故障,但过去不需要该软件包。

相关内容