环境:
物理机:CentOS6.7+KVM
虚拟机:windows
现象
1.突然之间,网络完全中断,无法从网络访问虚拟机。
2.用virt-manager或者console登录虚拟机,发现虚拟机还在正常工作,没有崩溃。
3.使用 service network restart重启物理机网络服务,可以立即恢复网络。
4.网络负载越大,故障出现的频率越高。轻网络负载的机器,没有出现故障。
解决
搜索了一下,发现ubuntu和centos都会出现这样的问题。几个解决办法:
第1种:使用 e1000替代原有的windows网卡
第2种:使用 vhost_net 模块
echo vhost_net > /etc/modules
modprobe vhost_net
然后重新启动虚拟机,libvirtd就会自动使用 vhost_net。
原因分析
在kvm虚拟机里,默认windows系统虚拟的网卡是RTL8139C的网卡,此网卡在网络重负载下易发生崩溃现象。