嵌套虚拟化是指在虚拟化的客户机中运行一个Hypervisor,从而再虚拟化运行一个客户机。 嵌套虚拟化不仅包括相同Hypervisor的嵌套(如KVM嵌套KVM、Xen嵌套Xen等),也包括不同Hypervisor的相互嵌套(如KVM嵌套嵌套Xen等)根据嵌套虚拟化的概念可知,其不仅包括两层嵌套(如KVM嵌套KVM),还包括多层的嵌套(如KVM嵌套KVM再嵌套KVM) 。
嵌套虚拟化的五大应用场景。
1)IaaS类型的云计算提供商 :如果有了嵌套虚拟化功能的支持,就可以为其客户提供让客户可以自己运行所需Hypervisor和客户机的能力。
2)为测试和调试Hypervisor带来了非常大的便利:了嵌套虚拟化的支持,被调试Hypervisor运行在更底层的Hypervisor之上,遇到被调试Hypervisor的系统崩溃,也只需要在底层的Hypervisor上重启被调试系统即可。
3)在一些为了起到安全作用的带有Hypervisor的固件上:如果有嵌套虚拟化的支持,则在它上面不仅可以运行一些普通的负载,还可以运行一些Hypervisor启动另外的客户机。
4)嵌套虚拟化的支持,对虚拟机系统的动态迁移也提供了新的功能:从而可将一个Hypervisor及其上面运行的客户机作为单一的节点进行动态迁移,这对服务器的负载均衡及灾难恢复等有积极意义。
5)嵌套虚拟化的支持,对于系统隔离性、安全性方面也提供更多的实施方案。
KVM嵌套KVM,既是在KVM上面运行的第一级客户机中再加载kvm和kvm_intel(或kvm_amd)模块,然后在第一级的客户机中