ESXi with UEFI iSCSI boot on Raspberry Pi
Steps
Setup iSCSI disk
- Create iSCSI Target and LUN in Synology
- Download RPi4 UEFI Firmware, and unzip it to a SD card which formatted as FAT32 partition
- Boot from the SD card, and perform following tasks using UEFI menu
- Disable 3G memory limit
Device Manager => Raspberry Pi Configuration => Advanced Configuration => Limit RAM to 3 GB) - Create device which mapped to iSCSI target
Device Manager => iSCSI Configuration => Add an Attempt
- Disable 3G memory limit
After Attempt 1 created, Reset (restart) Raspberry Pi. Now, in Boot Manager, should see UEFI SYNOLOGY iSCSI Storage.
Setup boot order
- Change Boot order and let it before other network boot, otherwise, there will be too much waiting time.
Prepare ESXi installation disk
- Download and flush VMware-VMvisor-Installer-7.0.0-xxxx.aarch64.iso to USB device
Install ESXi
- Reset (Reboot) again, and in UEFI menu select boot from USB device
- Then perform ESXi installation, and select iSCSI disk as target
After installation completed, take out ESXi installation USB, then another reset is required,
Configure ESXi
- Boot into iSCSI
- Change ESXi name, etc.
Troubleshooting
Unable to see iSCSI disk in Boot Manager
Most likely is the iSCSI configuration wrong.
- Check iSCSI Target Name
- Check iSCSI Target IP
- Check iSCSI LUN ID (This issue costed me a few hours)
- Check User/Password
Synchronous Exception
After installation complete, suddenly cannot boot into any destination, and just show error Synchronous Exception.
End up, I have to recopy UEFI image into micro SD card, redo iSCSI configuration. Luckily the iSCSI has no issue, which contains installed ESXi image.
References
Boot ESXi-Arm Fling on a Raspberry Pi 4 Using ISCSI
Raspberry Pi 4 UEFI Firmware Images
ESXi on Arm 10/22 更新
Raspberry Pi 4 Model B 8GBにESXi for ARM 7.0.0をインストール
Synchronous Exception at 0x00000000371013D8 #97