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.
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.
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’
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.
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