Openstack 开启嵌套虚拟化的方法是:
1.#rmmod kvm-intel
#echo 'options kvm-intel nested=y' >> /etc/modprobe.d/dist.conf
#modprobe kvm-intel
验证:
#cat /sys/module/kvm_intel/parameters/nested
得到结果应为:Y
#modinfo kvm_intel | grep nested
得到结果应为:parm: nested:bool
2.将CPU vmx特性透传到虚拟机中:
#vim /etc/nova/nova.conf
[libvirt]
cpu_mode = host-passthrough
#systemctl restart openstack-nova-compute
直接将物理CPU暴露给虚拟机使用,在虚拟机上完全可以看到的就是物理CPU的型号。使用host-model模式,Libvirt会根据物理CPU的型号,从规定的CPU中选择一种最接近的CPU型号,而使用host-passthrough模式直接看到的就是物理CPU的型号。
HOST技术使用于以下场景:
1.需要将物理CPU的一些特性传给虚拟机使用,比如使用虚拟机嵌套的nested技术的时候
2.需要在虚拟机里面看到和物理CPU一模一样的CPU品牌型号,这个在公有云很有意义,用户体验比较好
注意:使用CPU host-passthrough技术需要注意,不同型号的CPU宿主机之间虚拟机不能迁移。