一、检查 CPU 是否开启虚拟机化
apt install cpu-checker
kvm-ok
从上图或者下面的信息中可以看到物理机对虚拟化的支持还是差了点什么!
root@OpenStack:/var/log/kolla/nova# kvm-ok
INFO: /dev/kvm does not exist
HINT: sudo modprobe kvm_intel
INFO: Your CPU supports KVM extensions
KVM acceleration can be used
二、继续检查
以下 virt-host-validate
命令将验证处理器是否支持虚拟化
virt-host-validate
通过这条命令的结果来看主机的虚拟化功能缺少了一些模块。
三、继续检查
检查物理机上的kvm_intel模块是否打开了嵌套虚拟机功能(默认是开启的):
root@OpenStack:~# modinfo kvm_intel | grep nested
parm: nested_early_check:bool
parm: nested:bool
这块没问题。
root@OpenStack:~# cat /sys/module/kvm_intel/parameters/nested
cat: /sys/module/kvm_intel/parameters/nested: No such file or directory
这块出事儿了。
四、开启虚拟化嵌套
root@OpenStack:~# modprobe -r kvm-intel
root@OpenStack:~# modprobe kvm-intel nested=1
root@OpenStack:~# cat /sys/module/kvm_intel/parameters/nested
Y
root@OpenStack:~#
可以看到,现在执行 cat /sys/module/kvm_intel/parameters/nested
是可以返回正确的结果了Y
。
五、继续验证
root@OpenStack:/var/log/kolla/nova# kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used
可以看到,现在执行 kvm-ok
命令已经不像第一步时的结果了,现在是:INFO: /dev/kvm exists
virt-host-validate
可以看到,现在执行 virt-host-validate
命令已经不像第二步时的结果了,现在途中圈起来的地方已经是:PASS
了。