A.19.2.2. 无法通过 'host:16509' 连接到服务器:连接已拒绝
- 症状
- 虽然 libvirtd 应该侦听连接的 TCP 端口,但连接会失败:
virsh -c qemu+tcp://host/system
# virsh -c qemu+tcp://host/system error: failed to connect to the hypervisor error: unable to connect to server at 'host:16509': Connection refusedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 即使在更改/etc/ libvirt /libvirtd.conf 中的配置后,libvirt守护进程不会在 TCP 端口上侦听 TCP 端口:grep listen_ /etc/libvirt/libvirtd.conf
# grep listen_ /etc/libvirt/libvirtd.conf listen_tls = 1 listen_tcp = 1 listen_addr = "0.0.0.0"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 但是,在更改配置后,libvirt 的 TCP 端口仍会打开:netstat -lntp | grep libvirtd
# netstat -lntp | grep libvirtd #Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 正在调查
- libvirt 守护进程在没有
--listen选项的情况下启动。运行以下命令验证:ps aux | grep libvirtd
# ps aux | grep libvirtd root 10749 0.1 0.2 558276 18280 ? Ssl 23:21 0:00 /usr/sbin/libvirtdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出中不包含--listen选项。 - 解决方案
- 使用
--listen选项启动守护进程。要做到这一点,修改/etc/sysconfig/libvirtd文件并取消注释以下行:LIBVIRTD_ARGS="--listen"
# LIBVIRTD_ARGS="--listen"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 然后,使用以下命令重启 libvirtd 服务:/bin/systemctl restart libvirtd.service
# /bin/systemctl restart libvirtd.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow