背景
因为测试需要,要向一个hyper-v虚拟机中再安装一个vmware虚拟机,以实现嵌套虚拟化。
系统环境
物理机(windows server 2025) → 第一层虚拟机(windows server 2022 以hyper-v的方式) → 第二层虚拟机(windows 10 以vmware workstation方式)
即物理机安装了windows server 2025, 通过hyper-v方式安装了第一层虚拟机windows server 2022,在虚拟机windows server 2022中,通过vmware方式安装了第二层虚拟机windows 10
这里使用的vmware workstation版本为25h2
安装步骤
物理机如何开启hyper-v及第一层虚拟机windows server 2022的安装不再赘述。
这里主要讲解第二层虚拟机的相关错误及解决办法。
先对第一层虚拟机(windows server 2022)开启嵌套虚拟化功能:
Set-VMProcessor -VMName "winserver2022" -ExposeVirtualizationExtensions $true
问题(1)
安装vmware时,出现提示:hyper-v is not detected on the host. virtual machines will run using vmware's hypervisor.

解决办法:
不用管,继续安装就是。这里的大概意思是,这个系统没有启动hyper-v功能,vmware会使用自己的hypervisor(虚拟机监控器)
问题(2)
在vmware中安装windows 10时,出现错误:vmware workstation and hyper-v are not compatible. remove the hyper-v role from the system before running vmware workstation.

这个错误信息其实非常具有误导性,因为第一层虚拟机(windows server 2022)并没有开启过hyper-v功能。
解决办法:
启用windows自带的虚拟机监控平台
(这一步其实问题(1)的解决办法相悖,也就是不再使用vmware自己的hypervisor):
Enable-WindowsOptionalFeature -FeatureName "HypervisorPlatform" -Online
问题(3)应该遇不上这个问题。。
上述命令执行完成并重启后,再次运行vmware虚拟机安装win10,会出现错误:VMware Workstation and Device/Credential Guard are not compatible. VMware Workstation can be run after disabling Device/Credential Guard,如下图所示:

解决办法:
关闭Device/Credential Guard
注意我们不能直接在一层虚拟机(window server 2022)的组策略设置进行关闭(这一点与直接在物理机中遇到该错误的处理方式不同),我们得通过在物理机(windows server 2025)执行相应的powershell来关闭:
先关机第一层虚拟机(windows server 2022),然后在物理机中执行以下powershell脚本:
Set-VMSecurity -VMName winserver2022 -VirtualizationBasedSecurityOptOut $true
参考:
disable-credential-guard-for-a-virtual-machine
Fix: VMware and Device/Credential Guard are not Compatible
问题(4)
再次运行vmware虚拟机安装win10,又出现另一个错误:you are running this virtual machine with side channel mitigations enabled…如下图所示:

解决办法:
在虚拟机设置的【options】→【advanced】中关闭【enable side channel mitigations for hyper-v enabled hosts】即可,如下图所示:

再次开机第一层虚拟机(windows server 2022),成功进入到系统安装界面,如下图所示:


2454

被折叠的 条评论
为什么被折叠?



