今天我接到客户的联系电话,说是 Openstack Icehouse 创建的VM,其中一个VM无法连接上了。我查看Openstack Horizon界面,看VM状态,发现是ERROR。和同事初步判断是KVM模块没有加载产生的Openstack VM报错。排障过程如下:

1.sudo modprobe kvm_intel 开启服务器kvm模块支持。

2.lsmod |grep kvm 查看KVM模块加载状态。

3.ls /dev/kvm 查询KVM的硬件设备。

4.重启Openstack Icehouse版本的计算节点的nova-compute服务。servicenova-compute restart

5.在OpenstackIcehouse的控制端使用命令:nova reset-state $VM_UUID --active  把这台虚拟机重置状态,置为active活动状态。nova get-vnc-console $VM_UUID novnc 从页面上查看VM的状态。

6.echo "sudo modprobekvm_intel">>/etc/rc.local 添加开机激活KVM模块。

KVM模块加载失败造成Openstack VM报错Error_第1张图片

7.经发现,在现网生产环境中,由于存在exit 0代码,导致开机后还没有加载kvm_intel模块,就自动退出了开机读取文件/etc/rc.local的过程。使用井号#注释掉exit 0就彻底解决了开机后Openstack Icehouse版本构建的云计算平台不加载KVM模块的问题。