Skip to main content

VMWare ESXi Doesn’t Detect FC HBA adapters

By January 17, 2020No Comments

When deploying new ESXi hosts on HPE ProLiant BL660c Gen9 servers in the HP BLc7000 enclosure, I came across a very strange problem. After installing VMWare ESXi 6.0 on my physical servers and adding them to vSphere, I found out that ESXi didn’t see any HBA adapters (HP FlexFabric 10Gb) to access the storage enclosures in the SAN network. As you can see in the screenshot below, only the adapters to access the local disk controller (Smart Array P244br) and a USB card are available in the Manage -> Storage -> Storage Adapter tab. There are no other HBA controllers (the adapter rescan doesn’t help).

However, you can see HBA adapters on the earlier blade servers of the same generation (HPE BL460c Gen9) right after ESXi installation.

VMware ESxi Missing QLogic HBA Adapters

To solve the issue, enable SSH access to your ESXi server and login as root. Using the following command, display the list of FcoE adapters on the server:

esxcli fcoe nic list

If the list is empty, it means that no physical FC HBA adapters are installed on your server. In my case, the ESXi server saw all 4 FcoE adapters with the Active: false status.

esxcli fcoe nic list - the adapters available as potential FCoE candidates

Enable discovery for all found adapters from vmnic4 to vmnic7 one by one using this command:

esxcli fcoe nic discover -n vmnic5

Discovery enabled on device ‘vmnic5’
esxcli fcoe nic discover - initiate FCOE adapter discover

Display the list of all HBA adapters again and make sure that they all become active. Then rescan the adapters in the vSphere client interface or using the following command: esxcli storage core adapter rescan. In my case, all four HBA adapters (QLogic 57840 10/20 Gigabit Ethernet Adapter) appeared in the list.

vmhba33 fibre channel QLogic adapters on vmware esxi

If you still cannot find your HBA adapters, find the VIB file of the driver for your HBA adapter version on the VMWare or vendor website, copy it to your ESXi host and install using this command (or inject a .VIB driver into your ESXi gold image):

esxcli software vib install -v /tmp/VMware-driver-xxxxxxx.vib

Leave a Reply