When attempting to power on a virtual machine configured with an NVIDIA GPU (PCI Passthrough), the task fails. This issue is frequently seen after ESXi hosts have been moved or re-added to a cluster.
The following error is displayed in the vSphere Client:
Insufficient resources. One or more devices (pciPassthru0) required by VM [VM_NAME] are not available on host.
VMware ESXi
The issue occurs because the physical GPU on the ESXi host is not enabled for passthrough as below
When a host is reinstalled or significantly reconfigured (such as during a "lift and shift") or if the vSS/vDS configuration is reset, the passthrough status of PCI devices may revert to disabled, preventing VMs from accessing the required hardware.
To resolve this issue, you must enable passthrough on the host and refresh the VM's hardware association:
Enable Host Passthrough:
Log into vCenter and select the ESXi host.
Navigate to the Configure tab.
Under Hardware, select PCI Devices.
Click Edit and search for your NVIDIA/GPU card.
Check the box to enable passthrough and click OK.
Reboot the Host:
Place the host in Maintenance Mode if necessary and Reboot the ESXi host to initialize the device in passthrough mode.
Refresh VM Configuration:
Right-click the impacted VM and select Edit Settings.
Locate the PCI Device (e.g., PCI Device 0).
Click the X to remove the device from the VM.
Click Add New Device and select PCI Device.
Select the NVIDIA GPU from the dropdown menu.
Click OK and power on the VM.