Install ESXi-Arm Step by Step on Raspberry Pi 4

0

Well, it seems like it wasn’t long ago that we saw ESXi-Arm demonstrated at VMworld. I think all of us were wondering when we could get our hands on this release of ESXi as the potential very cool and exciting use cases this architecture opens up are really endless. Thinking about edge computing in particular, having the ability to run very small form factor devices equipped with Arm processors running ESXi is fantastic. I have been waiting to get in on the fun that I have been seeing as of late with all of my fellow virtualization enthusiasts have already been having with ESXi-Arm in their lab environment. Since I just received my Raspberry Pi 4 device in today, I decided to get right to it and get ESXi-Arm loaded. Let’s take a look at how to install ESXi-Arm step by step on Raspberry Pi 4 and see the steps involved.

Install ESXi-Arm Step by Step on Raspberry Pi 4

There are basically just a few steps to getting ESXi-Arm installed on a Raspberry Pi 4 device. I am going to break this down for you and show you the exact Raspberry Pi 4 device I ordered, what is included, and how the hardware went together. The steps include:

  1. Build the Raspberry Pi 4 hardware (kit)
  2. Install Pi OS on your microSD card
  3. Update Raspberry Pi 4 eeprom
  4. Setup UEFI on the microSD card
  5. Build your ESXi-Arm ISO
  6. Install ESXi-Arm
  7. Change your Boot order to boot ESXi-Arm

1. Build the Raspberry Pi 4 Hardware (kit)

So the great thing about Raspberry Pi hardware is that you can buy readily available kits that you can find fairly economically on Amazon. The thing I like about this option is that you get everything you need in the kit to install ESXi-Arm.

The kit that I purchased is found below. I definitely recommend as do others, if you want to play around with ESXi-Arm, get the 8 GB Raspberry Pi 4 device.:

  • CanaKit Raspberry Pi 4 8GB Starter Kit – 8GB RAM
  • This kit has almost 3000 5 star reviews
  • Comes with case, heatsinks, fan, Raspberry Pi 4, microSD card, mini HDMI to HDMI cable, power cable, quick switch on/off power switch, and USB microSD card reader
  • So, it literally has everything that you need to build a nice Raspberry Pi 4 build where you won’t have to piece things together yourself.
CanaKit-Raspberry-Pi4-kit-for-ESXi-on-Arm Install ESXi-Arm Step by Step on Raspberry Pi 4
CanaKit Raspberry Pi 4 kit for ESXi on Arm

Opening the CanaKit Raspberry Pi 4 kit.

Opening-the-CanaKit-Raspberry-Pi4-box Install ESXi-Arm Step by Step on Raspberry Pi 4
Opening the CanaKit Raspberry Pi 4 box

Below, you can see I have installed the (3) heatsinks that come with the kit as well as the active fan cooling. It is hard to see, but the leads from the fan header plug into pins 2 & 3 on the Raspberry Pi 4 board.

After-installing-the-heatsinks-fan-and-Raspberry-Pi4-into-the-case Install ESXi-Arm Step by Step on Raspberry Pi 4
After installing the heatsinks fan and Raspberry Pi 4 into the case

2. Install Pi OS on your MicroSD card

The next step you want to take is to install Pi OS on your microSD card. Doing this allows you to update your Raspberry Pi device to makes sure you are running the latest and greatest.

Once you have the hardware kit put together as I have shown above, you can power on the Raspberry Pi 4 device and it should boot to the screen below. This screen allows you to choose to install Raspberry Pi OS Full on your card. Choose this option.

Booting-the-Raspberry-Pi4-for-the-first-time-getting-ready-to-install-Pi-OS Install ESXi-Arm Step by Step on Raspberry Pi 4
Booting the Raspberry Pi 4 for the first time getting ready to install Pi OS

This install will take a while. For me I think it was probably around 10-12 minutes or so.

Installing-Raspberry-Pi-OS Install ESXi-Arm Step by Step on Raspberry Pi 4
Installing Raspberry Pi OS

3. Update Raspberry Pi 4 eeprom

Once you have installed Pi OS and have this up and running. Launch the Pi OS terminal and type the following command:

sudo rpi-eeprom-update
Checking-for-an-eeprom-update Install ESXi-Arm Step by Step on Raspberry Pi 4
Checking for an eeprom update

This will tell you if you have an eeprom update that you need to apply. I didn’t have an update available. If you do, run the following other two commands:

sudo rpi-eeprom-update -a
sudo reboot

After either no update is found or after the reboot, you will simply need to shutdown your Raspberry Pi 4 device.

4. Setup UEFI on the microSD card

For this next step, you are going to need two different packages of files at your disposal.

After downloading, just extract both zip files to their own folders. After you have extracted, you are going to navigate to the firmware-master > boot folder and delete the (4) files that start with kernel*. Below, I have these highlighted.

Deleting-files-out-of-the-downlaoded-firmware-package Install ESXi-Arm Step by Step on Raspberry Pi 4
Deleting files out of the downlaoded firmware package

Now, the UEFI folder that you extracted. Copy all the files in this folder and paste them into the same firmware-master > boot folder. Choose to Replace the files in the destination as this is expected.

Take-the-UEFI-package-files-and-paste-these-into-the-same-folder-you-deleted-from Install ESXi-Arm Step by Step on Raspberry Pi 4
Take the UEFI package files and paste these into the same folder you deleted from

Take the microSD card that you have in your Raspberry Pi 4 device, or take a totally different microSD card and we want to format the card with Fat32. Below is the screenshot of me doing this in Windows 10.

Formatting-the-microSD-card-for-the-UEFI-files Install ESXi-Arm Step by Step on Raspberry Pi 4
Formatting the microSD card for the UEFI files
Copy-UEFI-files-onto-the-newly-formatted-microSD-card Install ESXi-Arm Step by Step on Raspberry Pi 4
Copy UEFI files onto the newly formatted microSD card

According to the official VMware Fling documentation for ESXi-Arm, this configuration is only needed for the 4GB Raspberry Pi model, however, I did see some others who mentioned the following tweak for the 8GB Raspberry Pi model. I went ahead and added the configuration and had no problems doing so. However, just know this might not be needed for the 8 GB model.

Tweaking-GPU-parameters-in-the-config-txt-file Install ESXi-Arm Step by Step on Raspberry Pi 4
Tweaking GPU parameters in the config txt file

5. Build your ESXi-Arm ISO

Next, you need to build the ESXi-Arm ISO installation USB drive. Hopefully this is something that you have done numerous times before with x86 ESXi . For this task, we need to use Rufus to “burn” the ISO to a USB thumb drive.

Using-Rufus-to-create-the-ESXi-on-Arm-installation-USB-drive Install ESXi-Arm Step by Step on Raspberry Pi 4
Using Rufus to create the ESXi on Arm installation USB drive

6. Install ESXi-Arm

You will need this USB flash drive as well as another USB flash drive to install the ESXi-Arm installation to. So a total of (2) drives will be needed. Once you boot your Raspberry Pi 4 device, hit the Escape key to enter into the settings. Choose the USB disk you created using Rufus for installing ESXi-Arm.

Selecting-to-boot-from-the-ESXi-on-Arm-installation-USB-disk Install ESXi-Arm Step by Step on Raspberry Pi 4
Selecting to boot from the ESXi on Arm installation USB disk

The installation of ESXi-Arm begins.

ESXi-on-Arm-installation-begins Install ESXi-Arm Step by Step on Raspberry Pi 4
ESXi on Arm installation begins

The installation notes this is a Fling installation that is not supported. However, for the most part, the screens for the installation are exactly the same. I am going ahead and posting these for posterity.

Choose-enter-to-begin-the-installation Install ESXi-Arm Step by Step on Raspberry Pi 4
Choose enter to begin the installation
Accept-the-EULA Install ESXi-Arm Step by Step on Raspberry Pi 4
Accept the EULA

Here, you will choose your other USB disk that you mounted to be the target of the installation of ESXi-Arm.

Choose-the-USB-drive-where-you-will-be-installing-ESXi-on-Arm Install ESXi-Arm Step by Step on Raspberry Pi 4
Choose the USB drive where you will be installing ESXi on Arm

Confirm formatting the USB disk.

Choosing-to-format-the-installation-target Install ESXi-Arm Step by Step on Raspberry Pi 4
Choosing to format the installation target

Keyboard input and other standard ESXi installation options.

Choosing-the-keyboard-layout Install ESXi-Arm Step by Step on Raspberry Pi 4
Choosing the keyboard layout
Entering-the-root-password Install ESXi-Arm Step by Step on Raspberry Pi 4
Entering the root password

As with normal ESXi, you will have to press F11 to proceed with the installation.

Continuing-to-install-ESXi-on-Arm Install ESXi-Arm Step by Step on Raspberry Pi 4
Continuing to install ESXi on Arm

The installation of ESXi-Arm completes.

Installation-completed-successfully-of-ESXi-on-Arm Install ESXi-Arm Step by Step on Raspberry Pi 4
Installation completed successfully of ESXi on Arm

7. Change your Boot order to boot ESXi-Arm

After the installation is finished, you will need to set the boot order for your Raspberry Pi 4 so that it will boot from the persistent installation of ESXi-Arm.

Changing-the-boot-order-to-boot-from-the-USB-boot-drive Install ESXi-Arm Step by Step on Raspberry Pi 4
Changing the boot order to boot from the USB boot drive

After setting the boot order and booting the Raspberry Pi 4 with ESXi-Arm.

ESXi-on-Arm-fully-booted-after-installation Install ESXi-Arm Step by Step on Raspberry Pi 4
ESXi on Arm fully booted after installation

Resources

There are many great resources for ESXi-Arm. However, two that I want to be sure you know are the following:

Concluding Thoughts

ESXi-Arm is an extremely cool and interesting distribution that I have been excited about since I first heard about it at VMworld. It is going to be an interesting next few months as this Fling will no doubt be heavily used in the community. It will be great to see what different use cases are experimented with using ESXi-Arm. This could potentially change the edge environment moving forward on various fronts. Stay tuned!

StarWind VSAN