If you follow me on Instagram, you know that I recently installed ESXi 7 on Intel NUC 12 (Wall Street Canyon). It will join my existing ESXi hosts in my home lab I assembled in 2012, 2016, and 2020. The Intel NUC 6th generation has been showing its age. Most of my Windows VMs, if not all, are running slow now. I can still use the VMs, but it is not ideal. With that said, I decided to buy yet another Intel NUC to run ESXi on.
I wanted to get Intel NUC12WSHi7 since I liked what NUC10i7FNH gave me in terms of performance. However, I did not want to pay $200 more than I paid for the Intel NUC 10. That said, I decided to go with Intel NUC12WSHi5 this time around. I figured the price-to-performance ratio is better on the i5 version than i7, but that is just my speculation.
Here are the parts of this VMware ESXi Intel NUC 12 build:
This post contains affiliate links. If you use these links to buy something I may earn a commission. Full disclosure here.
- Intel NUC12WSHi5
- WD Black SN850 1TB NVMe
- G.Skill RipJaws DDR4 64GB DDR4 3200 MHz
- Generic “Mickey Mouse” Power Cord C5 to NEMA 5-15
- Sandisk 32GB Ultra Fit (bootable USB)
I liked that the RAM and NVMe were on sale, so the total bill was under my 2020 build. Comparing the prices between the builds, I saved around $120 or so.
VMware ESXi 7.0 on Intel NUC12 (Wall Street Canyon)
The official ISO image for ESXi 7.0 does not have the driver for the Intel NIC 2.5GbE. That said, you still have to create a customized ISO image. The steps on how to build the ISO image are covered below.
Since the latest ESXi 7.0 U3g build still does not have the Intel i225-V driver, you have to customize the ISO for a successful install. Luckily, there is a community networking driver for ESXi that you can download from the VMware Fling page.
From what I read, the ESXi 8.0 version will have the driver for this NIC, so there is no need to customize the ISO.
However, it seemed like VMware delayed the launch of ESXi 8.0, so NUC12 owners will have to customize their ISO until the newer version comes out.
You will need a Windows machine (physical or virtual). In my case, I used a Windows 10 VM. Here is the list of software I downloaded in a newly created Windows 10 VM:
Creating a custom ESXi ISO image
Once you complete the software download and install, it is time to create the custom ESXi ISO image. Without further ado, here are the steps I used to create the installation media.
Run PowerShell as an administrator
To run the software, click the Start Menu and look for Windows PowerShell. Once located, right-click it and click the Run as administrator. Once the window is up, issue the command as shown below.
PS C:\Windows\system32> Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass PS C:\WINDOWS\system32> Install-Module VMware.Powercli -scope AllUsers -force -SkipPublisherCheck -AllowClobber PS C:\WINDOWS\system32> Import-Module VMware.ImageBuilder
Create the ISO image
To create the image, you need to issue the commands below. This step assumes that the ESXi 7.0 U3 offline bundle and community networking driver files are in the Desktop directory.
PS C:\Users\Andrew\Desktop> Add-EsxSoftwareDepot ".\VMware-ESXi-7.0U3g-20328353-depot.zip" PS C:\Users\Andrew\Desktop> Add-EsxSoftwareDepot ".\Net-Community-Driver_184.108.40.206-1vmw.700.1.0.15843807_19480755.zip" PS C:\Users\Andrew\Desktop> New-EsxImageProfile -CloneProfile "ESXi-7.0U3g-20328353-standard" -name "ESXi-7.0U3g-20328353-NUC" -Vendor "andrewroderos.com" PS C:\Users\Andrew\Desktop> Add-EsxSoftwarePackage -ImageProfile "ESXi-7.0U3g-20328353-NUC" -SoftwarePackage "net-community" PS C:\Users\Andrew\Desktop> Export-EsxImageProfile -ImageProfile "ESXi-7.0U3g-20328353-NUC" -ExportToIso -filepath ESXi-7.0U3g-20328353-NUC.iso
You are now ready to create the USB installation media using Rufus. Launch Rufus and write the ISO image to your USB flash drive. Click the Start button. If you see a message about an obsolete version of menu.c32, click the Yes button. You may see another pop-up window that warns you about data destruction, just hit OK to continue.
Modify EUFI BIOS settings
Before you install ESXi on your Intel NUC 12, you will need to disable the Secure Boot feature in the EUFI BIOS. To disable it, power on the NUC and hit the F2 key shortly after turning it on. Once in the EUFI BIOS, select the Boot tab and then Secure Boot. Under the Secure Boot menu, you should see the Secure Boot as enabled. Make sure to disable it and save the changes.
Install ESXi 7.0 U3 on Intel NUC 12
After all the pre-work that you have done, it is finally at the step where you can install ESXi. Unfortunately, ESXi 7.0 has issues with this CPU generation. You have to disable the uniformity CPU check kernel option. That said, be ready to catch the screen where you can choose to edit the boot option (SHIFT + o).
I did not know this step was required, so I encountered the PSOD (Purple Screen of Death). I performed a web search and found William Lam‘s page (not surprised). I found out that you have to add
cpuUniformityHardCheckPanic=FALSE kernel option. Unfortunately, I did not know that you were not supposed to delete the existing boot option. Without it, you will not see an option to install the software.
With that said, you should leave the existing one, which should be
runweasel cdromBoot, then add the
cpuUniformityHardCheckPanic=FALSE option. It should look like
runweasel cdromBoot cpuUniformityHardCheckPanic=FALSE. Thanks to William Lam since he pointed me to the solution.
There might be versions where the default boot option is kernelopt=runweasel cdromBoot. If so, add space and enter the cpuUniformityHardCheckPanic=FALSE.
Optionally, you can append the cpuUniformityHardCheckPanic=FALSE line in the
/efi/boot/boot.cfg when creating the ISO image.
USB flash drive
Follow the standard ESXi installation wizard steps, but do not install it on the flash drive. In the past, there was no need to install the software on your local disk. However, as I found out, if you try installing it on the USB flash drive, the changes you make will not be persistent. When I installed it on the NVMe drive, everything was working.
Since all my ESXi hosts are headless, I cannot keep entering the boot options every time when I reset, or it loses power. Fortunately, there is a way to set it permanently.
Once you enter the IP configuration and apply the changes, connect to the Web UI and enable SSH. Log into the CLI via SSH and issue the
esxcli system settings kernel set -s cpuUniformityHardCheckPanic -v FALSE command. When you reboot, you will not have to go to boot options again.
Before rebooting the ESXi host, remove the USB, edit the
/efi/boot/boot.cfg, and append the kernel option. I did not test this, but, in theory, it should work.
You have to expect that you have to jump through a lot of hoops to get ESXi working on an unsupported hardware. While this is the case, I am still fond of using Intel NUC hardware as my ESXi host, even though they are more expensive than used servers. The Intel NUC12WSHi5 is my third ESXi host, so you know I am a fan of it.
So far, I have not seen any issues yet. Though, I have only transferred one VM so far. Since I am in training for a couple more days, I have limited time to test. I will either update this page or say something short in Instagram or Twitter, so make sure to follow if you currently do not.
I want to point out that ESXi does not understand this new CPU architecture. That said, there might be some instabilities that NUC 12 ESXi users will encounter. I am hoping that future ESXi 8.0 release will fully support this new big.LITTLE x86 CPU architecture.
BUY ME COFFEE ☕
AndrewRoderos.com is a participant of a few referral programs, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to company websites.