I love nested virtualization in Server 2016. It enables me to do so much more in my lab environment and not have to run 5/6 physical machines like I used to. So it was time to update my VMware skills to v6 and I wanted to see if I could do the same as nested Hyper-V and low and behold, it worked. However with a couple of tweaks that I had to make. Please note, running VMware in this an environment such as this is unsupported and should not be done in production!
First, create a Generation 1 VM with at least 4096Mb memory.
You now need to remove the Network Adapter and add a Legacy Network Adapter and connect it to your network.
Next you need to expose the virtualization extensions to the ESXi VM using powershell. Open on PowerShell on the Server 2016 Hyper-V Host and type the following command:
Set-VMProcessor –VMName NameofyourESXiVM –ExposeVirtualizationExtensions $true
The VM needs to be off in order to do this.
Now comes the tricky part for those of you who don’t really know VMware. We need to add a boot option. If you don’t you will get stuck at Relocating modules and be starting up the kernel….
Restart the VM
Boot from the ESXi media
When you get to the Installer screen press Shift + O
At the bottom of the screen add the following boot option:
ignoreHeadless=True
Then press Enter
Now carry on installing ESXi as normal.
YEY it installed ok.
Reboot your VM but when the Loading VMware ESXi screen appears press Shift + O again
Add the same command as before to the end of the line
ignoreHeadless=True
Then press Enter
Don’t panic, we will make this a more permanent solution shortly.
Once ESXi has booted press F2 and login with your credentials.
Select Troubleshooting Options and press Enter
Enable the ESXi Shell
Once done press Alt + F1 to open the Shell
Enter your root credentials
Then type:
esxcfg-advcfg –set-kernel “TRUE” ignoreHeadless
This will make the setting we changed earlier permanent so when the VM is rebooted you won’t have to enter the option each time.
No comments:
Post a Comment