Add additional drivers to ESXi
Last week I have been struggling with the installation of a vSphere 4 infrastructure on Dell hardware at a Belgium client site.
I have done many many many VMware installations and encountered my fair share of issues but apart from the HP USB sticks the hardware never gave me this much trouble.
It all started with a very difficult BIOS/firmware upgrade which, after various downloads and trials, ended with an old-school DOS boot USB and a DOS based BIOS update. Real 1980’s stuff.
With this fixed I installed all ESX hosts and left for the hotel, ready to start the configuration the next day. However, when I started with the first ESX host and wanted to configure the network, I noticed that I only had eight NICs when I should have had twelve. We use Dell PowerEdge R805 servers with two Intel quad port 82576 Gigabit Ethernet Adapters, the first card was already in the server, the second card we added just before the installation.
At first I suspected the expansion slot and riser board and tried swapping PCI-e x8 and PCI-e x4 slots but with no success. But by swapping the NICs we noticed that the original NIC worked but the NIC we added just before the installation did not. Further investigation showed that although the NICs were identical with regards to type, chipset, layout, etc, the revisions where a little different.
Searching the VMware Support website we found a driver CD for the Intel 82575 and 82576 Gigabit Ethernet Adapter.
Although we designed the virtual infrastructure with ESXi hosts in mind we used standard ESX 4 to check if the driver CD would fix the issue and have the additional four NICs pop up. And they did, YES!
But next up, our next and hopefully final challenge.
With standard ESX it is very easy to add additional drivers during installation. Just select ‘Yes’ when the installations asks if you want to add additional drivers, select and add the driver and you’re done.
With ESXi you have only two options when installing, 1. Install ESXi, 2. Boot from harddisk. That’s all, so how do you add additional drivers?
The driver CD manual combined with a little help from a colleague (thanks AJ) did the trick. After the installation configure the management network on one of the functioning NICs, connect using the vSphere client and put the host in maintenance mode. After that use the vSphere CLI to install the additional driver from the driver CD (inserted in the client containing the vSphere CLI) using the following command:
Reboot the ESX host and enjoy the four extra NICs!
For easy reference follows a step by step How To:
Step 1) Download the VMware vSphere Command-Line Interface from the VMware website.
Step 2) Install the VMware vSphere Command-Line Interface.
Step 3) Connect to the ESXi server through the VI client you wish to inject the NIC drivers into.
Step 4) Put the ESXi host in maintenance mode. This can be done by connecting through the VI client with the ESXi server.
Step 5) Inject the NIC drivers using the CLI
C:\Program Files (x86)\VMware\VMware vSphere CLI\bin>vihostupdate.pl –server 172.17.101.13 –username root –install –bundle D:\offline-bundle\INT-intel-lad-ddk-igb-18.104.22.168.1-offline_bundle-185976.zip
You will see in the VI Client that the driver is installed.
Step 6) Reboot the host.
Step 7) Check the total number of network adapters through the VI client.
Under Configuration Tab> Network Adapters under hardware column.
Step 8 Install finished successful.