Centos
為什麼我的 QEMU/KVM 虛擬機在 CentOS 7.7 更新後無法啟動?
在 2019 年 9 月 17 日將 CentOS 自動更新到 7.7 版後,當我重新啟動管理程序伺服器時,我的 QEMU/KVM 虛擬機沒有啟動。
嘗試手動啟動 VM 會出現此錯誤:
# 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.
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 虛擬機管理程序可能已經安裝了這個軟體包;這些機器不會出現故障,但過去不需要該軟體包。