问题:
计算节点发生故障,libvirt卡住,现象为执行virsh list或者virsh pool-list命令卡住,导致管理节点ssh连不上主机,就会慢慢累积很多ssh连接导致管理节点越来越卡
解决方法:
1、ssh登录到管理节点操作系统中,执行命令查看是否存在大量ssh连接
ps -ef|grep virt
如上图,执行命令之后可以看到很多跟libvirt相关的连接进程,且有记录主机ip;然后执行命令统计打印出来的主机有多少libvirt连接进程ps -ef|grep virt|grep 205.127|wc –l
如上图:192.168.205.127 主机存在的 libvirt 连接进程明显超过其他主机(一般超过 10 个的应该是有问题)。
然后 ssh 登录到连接数较多的主机上,执行命令 virsh list 或者 virsh pool-list,如果执行正 常表示 libvirt 没有卡住,执行之后没有返回信息表示 libvirt 存在卡住。
2、先检查主机所使用的共享存储是否存在问题,有问题先线下恢复存储
3、重启 libvirt 卡住的主机
4、在管理节点上执行命令清除对应主机的连接进程(执行之前确保主机和主机所在集群没有正在执行的任务)
ps -ef | grep virt | grep [主机 ip] | awk '{print "kill " $2}' | sh
示例:
ps -ef | grep virt | grep 192.168.205.194 | awk '{print "kill " $2}' | sh