• Skip to main content
  • Skip to footer

Andrew Roderos

Networking and Security

  • Blog
  • Resources
    • Book List
    • Freebies
  • About
  • Contact

VMware ESXi Home Lab – Intel NUC 10 (Frost Canyon)

01/19/2020 by Andrew Roderos 16 Comments

  • Share on Twitter Share on Twitter
  • Share on Facebook Share on Facebook
  • Share on LinkedIn Share on LinkedIn
  • Share on Reddit Share on Reddit
  • Share via Email Share via Email

If you follow me on Instagram or Twitter, then you know that I recently installed VMware ESXi on Intel NUC 10 (Frost Canyon). It will join the existing hosts in my VMware ESXi home lab that I assembled in 2012 and 2016. While these hosts are old, they’re still useful for what they currently do. Eventually, I’m going to repurpose the ESXi 2012 build and will talk about it in a future article. The ESXi 2016 build will continue to host my current virtual servers and future lightweight servers. This new ESXi build will host VMs that require more oomph than the Core i3-based ESXi build. For example, CSR1000v, vMX, vQFX10K, etc.

Hardware

VMware ESXi on Intel NUC 10 (Frost Canyon)

I bought the majority of the parts during Black Friday and Cyber Monday, so I was able to minimize the cost a little bit. The NUC was a pre-order and the delivery date changed once or twice. Eventually, the order arrived a month later. Since I was traveling in Asia when it was delivered, I didn’t get to play with it until last week.

Related: VMware ESXi Home Lab – Intel NUC 12 (Wall Street Canyon)

Here are the parts of this VMware ESXi build:

This post contains affiliate links. If you use these links to buy something I may earn a commission. Full disclosure here.

  • Intel NUC10i7FNH
  • Samsung 32GB DDR4 2666MHz
  • Sabrent 1TB NVMe
  • Sandisk 32GB Ultra Fit
  • StarTech USB NIC

VMware ESXi 7.0 on Intel Frost Canyon NUC

The official ISO image for ESXi 7.0 still does not have the updated ne1000 driver. That said, you still have to create a customized ISO image.

View this post on Instagram

A post shared by Andrew Roderos (@andrewroderos) on Apr 24, 2020 at 7:36pm PDT

Intel NIC

Update

The VMware engineers responsible for the Fling USB NIC driver released the ne1000 driver offline bundle for the Intel NUC 10 (Frost Canyon). With that said, a lot of the steps covered here are no longer necessary. You do, however, still need to customize the ESXi ISO image.

Here’s the result of replacing the built-in ne1000 driver on the vanilla ESXi 6.7.0 ISO image.

[root@esxi03:~] esxcli network nic list
Name    PCI Device    Driver  Admin Status  Link Status  Speed  Duplex  MAC Address         MTU  Description
------  ------------  ------  ------------  -----------  -----  ------  -----------------  ----  -------------------------------------------------
vmnic0  0000:00:1f.6  ne1000  Up            Up            1000  Full    1c:69:7a:01:23:45  1500  Intel Corporation Ethernet Connection (10) I219-V

You might be wondering why did I buy the USB NIC. I found out that the built-in NIC on the NUC is a newer version of I219-V and it and is not currently on VMware’s hardware compatibility list. Without a recognized network adapter, I won’t be able to install ESXi on this NUC.

Related: Upgrading Intel NUC10i7FNH to ESXi 7.0

As you can see from the output below, the hardware version of the built-in NIC seems to be 10. Looking at the VMware HCL, the Intel Ethernet Connection (10) I219-V is not included on the list.

[root@esxi03:~] lspci -v | grep "I219-V" -A 1
0000:00:1f.6 Network controller Ethernet controller: Intel Corporation Ethernet Connection (10) I219-V
	 Class 0200: 8086:0d4f

Pre-installation

The installation process is not straight forward compared to other versions of Intel NUC. With the Frost Canyon NUC, you need to create a custom ISO that includes the USB NIC an updated ne1000 drivers. Fortunately, there’s a Fling USB driver created by VMware engineers. Fortunately, there’s an updated ne1000 driver created by a VMware engineer that works on VMware ESXi 6.7 or 7.0.

Software

You’ll need to download and install some software before you can create a custom ESXi ISO image. Here are the tools that I loaded in my Windows 10 VM:

  • VMware PowerCLI
  • ESXi-Customizer-PS
  • Rufus
  • ESXi 6.7.0 ne1000 Offline Bundle (mirror)
  • VMware Fling – USB Network Native Driver

You don’t need to download the latest ESXi ISO since the ESXi-Customizer-PS will take care of it for you.

Creating a custom ESXi ISO image

Once you’ve completed the software download and install, then it’s time to create the custom ESXi ISO image. Follow all the steps in this section to successfully create the installation media.

1. Run Windows PowerShell

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 PowerShell window is up, issue the command, as shown below.

PS C:\Windows\system32> Set-ExecutionPolicy RemoteSigned
PS C:\Windows\system32> Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass

2. Run ESXi-Customizer-PS

Now, you’re ready to create a custom ESXi ISO image. To create the ISO image, you need to issue the commands as shown below. This step assumes that the Fling USB ne1000 driver offline bundle is in the ESXi folder.

PS C:\Windows\System32> cd ~\Desktop\ESXi
PS C:\Users\Andrew\Desktop\ESXi> .\ESXi-Customizer-PS-v2.6.0.ps1 -pkgDir .\

ESXi 7.0 Custom ISO

You will need a newer version of the ESXi-Customizer-PS to generate the customized ESXi 7.0 ISO image. Replace the command above to .\ESXi-Customizer-PS.ps1 -v70 -pkgDir .\

Note: This does not work currently. One of the contributors closed the issue. I assume that you can use this method now. If not, you can always use the PowerCLI commands below to create a custom ESXi 7.0 ISO image.

Update: It seems like ESXi 7.0 U1 includes the ne1000 driver for NUC10. You no longer need to create a custom ISO.


Do you find this content useful? If so, consider buying me a coffee! ☕



PS C:\Users\Andrew\Desktop\ESXi> Add-EsxSoftwareDepot https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
PS C:\Users\Andrew\Desktop\ESXi> Export-ESXImageProfile -ImageProfile "ESXi-7.0.0-15843807-standard" -ExportToBundle -filepath ESXi-7.0.0-15843807-standard.zip
PS C:\Users\Andrew\Desktop\ESXi> Remove-EsxSoftwareDepot https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
PS C:\Users\Andrew\Desktop\ESXi> Add-EsxSoftwareDepot .\ESXi-7.0.0-15843807-standard.zip
PS C:\Users\Andrew\Desktop\ESXi> Add-EsxSoftwareDepot .\ESXi670-NE1000-32543355-offline_bundle-15486963.zip
PS C:\Users\Andrew\Desktop\ESXi> New-EsxImageProfile -CloneProfile "ESXi-7.0.0-15843807-standard" -name "ESXi-7.0.0-15843807-NUC" -Vendor "andrewroderos.com"
PS C:\Users\Andrew\Desktop\ESXi> Remove-EsxSoftwarePackage -ImageProfile "ESXi-7.0.0-15843807-NUC" -SoftwarePackage "ne1000"
PS C:\Users\Andrew\Desktop\ESXi> Add-EsxSoftwarePackage -ImageProfile "ESXi-7.0.0-15843807-NUC" -SoftwarePackage "ne1000 0.8.4-3vmw.670.3.99.32543355"
PS C:\Users\Andrew\Desktop\ESXi> Export-ESXImageProfile -ImageProfile "ESXi-7.0.0-15843807-NUC" -ExportToIso -filepath ESXi-7.0.0-15843807-NUC.iso

Looks like EVE-NG is not compatible with ESXi 7.0. Need to downgrade to ESXi 6.7U3.

— Andrew Roderos (@andrewroderos) May 4, 2020

3. Run Rufus

You’re 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’, then click the Yes button. You may see another pop-up window that’s warning you about data destruction, just hit OK to continue.

Creating VMware ESXi USB installation media

Modifying the BIOS settings

Update

With the release of the ne1000 driver, this step is no longer necessary.

This step is necessary since you need to set the USB NIC as the primary network adapter. Using USB NIC as the primary network adapter means the settings do not persist, by default. To make it persistent, you’ll need to create a startup script. This is not allowed when Secure Boot is enabled. That said, you’ll want to disable the Secure Boot feature.

To disable the Secure Boot feature in the BIOS, power on the NUC and hit the F2 key once you see the Intel NUC logo. Once you’re in the BIOS, select the Boot tab and then Secure Boot. Under the Secure Boot menu, you should see the Secure Boot as enabled, disable it and save the changes.

Optional: While you’re in the BIOS, you may want to make sure that the Intel Virtualization Technology features are enabled. To verify, go to the Performance tab and select the Processor settings. You will now see multiple drop-down menus. Make sure that Intel Virtualization Technology and Intel VT for Directed I/IO (VT-d) are enabled. Save and exit the BIOS by hitting the F10 key.

Installing ESXi on 10th Gen Intel NUC

Update

With the release of the ne1000 driver, the installation will go smoothly.

After all the pre-work that you’ve done, I’m sure you’ve been waiting for this step. The installation is straight forward, for the most part. The only hiccup that you will encounter is the installation gets stuck at 85%, and an error message appears. Don’t worry about being stuck at 85%. The ESXi install went through fine. Restart the NUC, and ESXi will boot properly.

Installing ESXi on Intel NUC (Frost Canyon)

Post-installation

Update

With the release of the ne1000 driver, this section is no longer necessary.

Once ESXi is up and running, there are still some steps you will need to take before you can start firing up VMs. Follow these post-installation steps to make the USB NIC persistent.

1. Configure password

Unfortunately, the password that you set during the installation process won’t work. With that said, you will need to leave the password blank after hitting the F2 key. Once you’re in, you need to configure a password for your ESXi server. Go to the Configure Password settings. Leave the password blank for the Old Password section, then enter your new password.

2. Perform network restore

The next step is to perform a network restore. By doing this step, the system will recognize the network adapter. To perform a network restore, go to the Network Restore Options settings. Select the Restore Network Settings and hit the Enter key. It will ask you if you want to reset the network configuration, hit the F11 key for yes, and then hit the Enter key.

Once done, you need to log out of the system. Hit Esc key twice to log out. You will now see that the host has an IP address via DHCP. If your network does not have DHCP enabled, then it should get an APIPA address.

3. Configure the management network

This step is necessary if you want your server to use a static IP address. Log back in using the password that you set earlier. Then, go to Configure Management Network and then IPv4 Configuration settings. Select the static option and enter the IP address information. Once completed, make sure to apply the changes.

Feel free to change the hostname while you’re in this section as well.

4. Enable SSH

From time to time, I need to access CLI, so when I build an ESXi system, I usually enable SSH. There are two ways to enable SSH. One via the console and the other one is via the ESXi Embedded Host Client (Web UI).

Option 1 – Console

To enable using the console, go to Troubleshooting Options settings and select Enable SSH.

Option 2 – Host Client

Log into the Web UI using the IP address or DNS name. Once logged in, go to Actions > Services > Enable Secure Shell (SSH).

5. Add a script

As can be seen in the BIOS settings section, using USB NIC as the primary network adapter means the settings do not persist, by default. That said, you will need to add some lines to the /etc/rc.local.d/local.sh file.

The script that you need to add will depend on your virtual switch configuration. In my case, I use the Standard Virtual Switch in my environment. If you use Distributed Virtual Switch (VDS), then you can customize the one here.

ESXi has VI editor built-in, so you can use that to add the script. Insert the text before the exit 0 section, as shown below.

#!/bin/sh
# local configuration options
# Note: modify at your own risk!  If you do/use anything in this
# script that is not part of a stable API (relying on files to be in
# specific places, specific tools, specific output, etc) there is a
# possibility you will end up with a broken system after patching or
# upgrading.  Changes are not supported unless under direction of
# VMware support.
# Note: This script will not be run when UEFI secure boot is enabled.
vusb0_status=$(esxcli network nic get -n vusb0 | grep 'Link Status' | awk '{print $NF}')
count=0
while [[ $count -lt 20 && "${vusb0_status}" != "Up" ]]
do
    sleep 10
    count=$(( $count + 1 ))
    vusb0_status=$(esxcli network nic get -n vusb0 | grep 'Link Status' | awk '{print $NF}')
done
if [ "${vusb0_status}" = "Up" ]; then
    esxcfg-vswitch -L vusb0 vSwitch0
    esxcfg-vswitch -M vusb0 -p "Management Network" vSwitch0
    esxcfg-vswitch -M vusb0 -p "VM Network" vSwitch0
fi
exit 0

Verification

To verify that the script works, reboot your ESXi server. After a minute or so, you should be able to log back in.

In addition, you may want to create a VM to test network connectivity. In my case, I created a Ubuntu Linux Server edition to verify if the vNIC works correctly.

Final Thoughts

VMware ESXi on Intel NUC 10 (Frost Canyon)

While there are a lot of hoops to jump through to get ESXi working on this Intel NUC 10 (Frost Canyon) with 10th generation Intel Core CPU, I still prefer this host compared to a Dell or HP used server. Sure, I’ll save more money acquiring them, but I don’t have space for it. In addition, they’re more power-hungry than the Intel NUC.

It’s worth noting that when the Intel NUC 8 (Bean Canyon) was released, people had to create a custom ISO as well. Eventually, VMware released updates to where the ISO included the Intel I219-V drivers. For this reason, I’m hopeful that VMware will release an update for this hardware revision as well. Since the ne1000 driver offline bundle is now available, there may be a good chance that VMware will include it in future releases.

You might like to read

VMware ESXi Home Lab – Intel NUC 12
Deploying vQFX on VMware ESXi
Deploying TACACS+ on a Docker container
Upgrade Intel NUC10i7FNH to ESXi 7.0


BUY ME COFFEE ☕

Did you find this content useful? If so, show your appreciation by buying me a coffee!



Disclosure

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.

  • Share on Twitter Share on Twitter
  • Share on Facebook Share on Facebook
  • Share on LinkedIn Share on LinkedIn
  • Share on Reddit Share on Reddit
  • Share via Email Share via Email

Filed Under: Home Lab Tagged With: 10th Gen NUC, ESXi, Frost Canyon, Intel NUC, Intel NUC10, NUC, NUC10, NUC10i3, NUC10i5, NUC10i7, VMware, vSphere

About Andrew Roderos

I am a network security engineer with a passion for networking and security. Follow me on Twitter, LinkedIn, and Instagram.

Footer

WANT TO REACH ME?

Let’s talk!

CONTACT ME

Copyright © 2019–2023 · Andrew Roderos · All Rights Reserved · Privacy Policy · Terms of Use