有时为了实验,学习,会尝试在vsphere下跑nested 的 hyper-v或者xenserver 虚拟机。但如果你只是按照一般的VM来安装时,往往会碰到下面的错误信息:
Hyper-V: Hyper-V cannot be installed. A hypervior is already running
Xenserver: HVM is required for this operational message
这些通常都是因为你在vSphere下虚拟另一个hyperviosr而导致的报错。
那么,如何能够成功的在vsphere下模拟这些虚拟环境?通过一些实验,我总结如下:
- 检查的你的ESXi物理主机,必须支持intel “Nehalem”以上的EVC 模式。如果这台物理主机是属于一个集群的,那么集群的EVC模式就必须在 “Nehalem”之上。(对于AMD 的cpu,我没有做个亲测。但估计也是越高越好)
- 编辑hypervior的vm属性。在Options> CPU/MMU virtualization里选择 “use intel-VT/AMD-V for instruction set. Intel-EPT/AMV RVI for MMU virtualization
- 下载hypervior VM的 .vmx 文件,编辑这个文件,在最后插入两行参数:
hypervisor.cpuid.v0 = FALSE
vhv.enable = TRUE
保存并上传覆盖原有的 .vmx 文件。在vsphere主机下重新添加下这个vm (remove from inventory and add to the inventory.
大功告成!
希望对遇到相同问题的朋友有所帮助。
时间: 2024-10-04 01:46:09