Preface

The Beelink SER9 Pro is a very powerful machine for its small form factor. I was primarily using it with VMware Workstation to run multiple virtual machines but the performance was not satisfactory. In this post, I document how I installed VMware ESXi 8 on this machine.

Compatibility

VMware ESXi does not support this hardware for the following reasons:

  • The AMD CPU throws exceptions during installation.(Fatal CPU mismatch)
  • The Realtek network card is not supported.

Before you begin, make sure you have the latest BIOS installed on your SER9. At the time of writing, SER9T405 is the latest version. Visit Beelink’s support website and request the BIOS update

Preparing USB

We need to inject the recently released Realtek driver into the ESXi ISO image so that the installation can proceed successfully.. Go to the Free Downloads section for Flings on the Broadcom Support Portal (BSP) and download the Realtek Network Driver

  • Install the PowerCLI by following the official documentation
  • Install a compatible Python version and the required libraries( six,psutil, lxml, pyopenssl) and configure the paths as described in the documentation Currently, the highest Python version supported is 3.11
Install-Module -Name VMware.PowerCLI
Get-Module -ListAvailable -Name VMware*
Set-PowerCLIConfiguration -Scope User -ParticipateInCEIP $false
Get-PowerCLIVersion
cd C:\Users\user\AppData\Local\Programs\Python\Python311\ 
.\Scripts\pip.exe install six psutil lxml pyopenssl
pip install six psutil lxml pyopenssl
 Get-PowerCLIConfiguration | Select PythonPath
 Set-PowerCLIConfiguration -PythonPath C:\Users\user\AppData\Local\Programs\Python\Python311\python.exe

## Install Online (Run Powershell as Administrator)
Install-Module VMware.PowerCLI -Scope CurrentUser
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -Confirm:$false
  • Update the file paths as needed and run the script below
Get-EsxSoftwareDepot | Remove-EsxSoftwareDepot

Add-EsxSoftwareDepot "C:\Users\user\Desktop\VMware-ESXi-8.0U3h-25067014-depot.zip"
Add-EsxSoftwareDepot "C:\Users\user\Desktop\VMware-Re-Driver_1.101.01-5vmw.800.1.0.20613240.zip"

$baseProfile = Get-EsxImageProfile |
    Where-Object { $_.Name -match "^ESXi-8\.0U3.*standard$" } |
    Sort-Object Name |
    Select-Object -First 1

if (-not $baseProfile) {
    throw "No ESXi base image profile found in depot"
}

Write-Host "Using base profile:" $baseProfile.Name

$customProfile = New-EsxImageProfile `
    -CloneProfile $baseProfile `
    -Name "ESXi-8.0U3-Realtek" `
    -Vendor "custom"

# ADD REALTEK DRIVER
Add-EsxSoftwarePackage `
    -ImageProfile $customProfile `
    -SoftwarePackage if-re

# EXPORT ISO
Export-EsxImageProfile `
    -ImageProfile $customProfile `
    -ExportToIso `
    -FilePath "C:\Users\user\Desktop\ESXi-8.0U3-Realtek.iso"

Write-Host "SUCCESS: ISO created"
  • Burn the ISO image using Rufus or any similar software
  • Edit the /efi/boot/boot.cfg file on the USB drive and append cpuUniformityHardCheckPanic=FALSE to the kernelopt section

Installation

  • Install the software by following the installation wizard, but do not reboot when prompted.
  • Edit the file /vmfs/volumes/BOOTBANK1/boot.cfg and append cpuUniformityHardCheckPanic=FALSE to the kernelopt section.
  • If you forget to add this option during installation, you can add it at boot time by pressing SHIFT+O and appending the option there. To make the change permanent, enable SSH from the dashboard and edit the file as described above.

References: