Get VMware’s virtualization platform up and running on your Raspberry Pi with ease

Learn how to install ESXi on Raspberry Pi, a powerful yet affordable single board computer, and enjoy the benefits of virtualization. This step-by-step guide will help you set up ESXi on Raspberry Pi …


Updated September 4, 2023

Need help with your Raspberry Pi?
Contact Me!

Do you love silly Raspberry Pi Projects?
Check out my this YouTube Channel!


Learn how to install ESXi on Raspberry Pi, a powerful yet affordable single board computer, and enjoy the benefits of virtualization. This step-by-step guide will help you set up ESXi on Raspberry Pi without any hassle.

ESXi (Enterprise Server Virtualization Infrastructure) is VMware’s hypervisor that allows you to run multiple virtual machines on a single physical server. It’s designed for enterprises and data centers but can also be installed on personal computers and single board computers like the Raspberry Pi. In this guide, we will walk through the process of installing ESXi on Raspberry Pi with minimal configuration and setup required.

Requirements:

Before you begin, make sure your Raspberry Pi meets the following requirements:

  • A Raspberry Pi 3 or newer model (Raspberry Pi 4 is recommended for better performance)
  • An SD card with at least 8GB of storage space (16GB or more is preferred)
  • An ethernet cable to connect your Raspberry Pi to the internet
  • A USB keyboard and an HDMI monitor to access the command line interface
  • A stable power supply for your Raspberry Pi

Preparing Your SD Card:

  1. Download the latest version of ESXi from VMware’s website (https://www.vmware.com/products/esxi-and-esx.html). You will need a free VMware account to access this download.
  2. Flash the downloaded ISO image onto your SD card using a tool like Etcher (https://www.balena.io/etcher/).
  3. Once the flashing is complete, insert the SD card into your Raspberry Pi and connect it to your monitor, keyboard, ethernet cable, and power supply.
  4. Press the ‘Enter’ key on your keyboard to access the command line interface. You may need to select the correct boot device (SD card) in your BIOS settings if you haven’t done so already.
  5. Log in with the default credentials: username - root, password - VMware1!.

Setting Up ESXi on Raspberry Pi:

  1. Run the following command to update the system:
/usr/lib/vmware/esx-update/esx-update.sh --checknow
  1. Reboot your Raspberry Pi by running:
reboot now
  1. Once it’s back up, run the following command to check for available updates:
esxcli software vib list | grep -i update
  1. If there are any updates available, install them using:
esxcli software vib update -d /var/cache/softwareupdate/<vib-name>.vib
  1. To enable SSH access, run:
esxcli system settings advanced set -o /Net/EnableSSH -i 1
  1. Create a new user with administrative privileges:
esxcli account role add --role=Admin --user=<username>
  1. Assign a password to your new user:
esxcli account password set --password=<your-new-password> --username=<username>
  1. Configure your network settings by running:
esxcfg-nics -l

This command will list all available network interfaces. Choose the one you want to use (usually vmnic0) and run:

esxcli network ip interface ipv4 set -i <interface> -t static -a <ip-address> -n <netmask> -g <gateway>

Replace <interface>, <ip-address>, <netmask>, and <gateway> with your desired settings. 9. Configure the hostname:

esxcli system hostname set -H <hostname>
  1. Set a static DNS server:
esxcli network ip dns config set --server=<dns-server-ip>

Replace <dns-server-ip> with your preferred DNS server’s IP address. 11. Enable SSH access for your new user:

esxcli system account add -i ssh root@<your-raspberry-pi-ip> -u <username> -p '<password>'

Replace <your-raspberry-pi-ip> with your Raspberry Pi’s IP address and <password> with the password you set for your new user in step 6. 12. Enable SSH access via public key authentication:

mkdir -p /root/.ssh
touch /root/.ssh/authorized_keys
chmod 700 /root/.ssh
chmod 600 /root/.ssh/authorized_keys
exit
  1. Copy your SSH public key to the Raspberry Pi:
scp ~/.ssh/id_rsa.pub <username>@<your-raspberry-pi-ip>:~/.ssh/authorized_keys

Replace <username> with the username you created in step 6 and <your-raspberry-pi-ip> with your Raspberry Pi’s IP address. You will be prompted to enter the password you set for your new user. 14. Log in via SSH:

ssh -i ~/.ssh/id_rsa <username>@<your-raspberry-pi-ip>

Replace <username> with the username you created and <your-raspberry-pi-ip> with your Raspberry Pi’s IP address. You should now be logged in to your Raspberry Pi without needing to enter a password. 15. (Optional) Create a new virtual machine:

vim-cmd solo/registervm <path-to-your-ova-file>

Replace <path-to-your-ova-file> with the path to your virtual machine’s OVA file. If you don’t have one, you can create a new virtual machine using the vSphere Client or PowerCLI.

That’s it! You now have ESXi installed on your Raspberry Pi and are ready to run multiple virtual machines simultaneously. Happy virtualizing!