Jun 05, 2017. If you have only a single driver to import, choose the second radio button and then browse to the exact UNC location of the.inf or txtsetup.oem file. For multiple drivers, or to allow ConfigMgr to auto-locate all available drivers in a given path including all subfolders, use the first option, Import all drivers in the following network path. Jul 18, 2020. Aug 26, 2020. Aug 30, 2018.
- Add Network Drivers To Esxi 6 Web Access
- Esxi Driver Download
- I40en Driver Esxi
- Add Network Drivers To Esxi 6 Web Browser
Starting with vSphere 6.5, it is now possible to customize ESXi ISO images for deployment using Auto Deploy or any other provisioning method. Consider the case where you need to deploy ESXi to 10 new servers. The ideal course of action is to take your existing ESXi 6.5 ISO image and add to it the latest patches, updates, and drivers released to date. The alternative is to install the basic ESXi and update each host individually at a later stage using Update Manager or manually.
We like to do things the easy way, so in today’s post, I’ll show how to use the Image Builder tool to customize your ESXi image. Since I mentioned Auto Deploy, do have a look at the Testing ESXi Auto Deploy in a nested environment post if you’re interested in learning how to test this feature.
What you’ll need
The Image Builder component is part of vCenter Server 6.5. The tool is accessed via the vSphere Web client. You’ll also be needing an ESXi 6.5 ISO image and this conversion tool, the use of which I’ll explain later in the post.
Enabling Image Builder
To start using Image Builder, and Auto Deploy for that matter, we need to enable the Auto Deploy and ImageBuilder services. Using the vSphere Web client, select Administration (2) from the Home (1) menu. Click on System Configuration and then select Services. Select both services (4), one at a time, and click on the play button (5) to start them.
Starting the Auto Deploy and ImageBuilder services in vSphere Web Client
Once you make sure that both services are running, log off and log in back again using the vSphere client. You should now see the Auto Deploy icon displayed on the Home screen.
Using VMware Image Builder
Before moving, let me go over the various components we will be working with while using Image Builder.
- VIB – this is the software packaging format used by VMware and 3rd party providers that write software for ESXi.
- Image Profile – a logical container representing an ESXi image ultimately consisting of a base and other VIBs.
- Software Depot – A collection of image profiles and VIBs which are accessible offline as a ZIP archive or online via an HTTP URL.
Note: Have a look at How to create persistent firewall rules on ESXi to learn how to create your own VIBs.
I’ll be working with all three components as per the following steps. The reiterate, the goal here is to create a customized ESXi ISO image containing the latest patches and a custom firewall rule that is required by the Altaro Backup software.
Using vSphere Web client, go to the Home screen and click on the Auto Deploy icon.
The Auto Deploy icon becomes visible once you start the required services and log in back in vSphere Web client
Step 1 – Create a custom depot
Switch to the Software Depots tab and click on the Add Software Depot button.
Step 2 – Upload an ESXi image to the custom depot
For this post, I downloaded the ESXi 6.5 U1 Express Patch 4 which contains the full ESXi hypervisor image once extracted.
Downloading an ESXi patch from my.vmware.com
To upload the ESXi image (patch in this case) to the custom depot, click on the Import Software Depot icon (1) and navigate to the folder containing the image (2). Press Upload to write the image to the depot.
Uploading an ESXi image / patch to a custom software depot in Image Builder
Wait for the upload process to complete.
Step 3 – Preparing custom VIBs and drivers
I want to add the custom firewall rule I covered in the How to create persistent firewall rules on ESXi post. The issue you’ll be faced with is that you cannot upload VIBs directly to Image Builder without first converting them to a purposely crafted ZIP file. A quick Google search led me to the VIB2ZIP utility which you can download here.
Extract the downloaded utility. Use an administrative command shell to run vib2zip.cmd. Browse to the VIB’s location and select it as source (1). Select the location where the zip file (offline bundle) is created. Metadata, where applicable, is pulled from the VIB by clicking on Load from VIB. This is used to populate the remaining fields. I had to add Altaro to the Vendor Code field, this being a mandatory value. Once you do this, press Run to generate the zip file.
Further instructions and examples are available on the author’s website.
The vib2zip utility is used to convert VIBs to the appropriate ZIP format for use with Image Builder
In general, vendor drivers are readily bundled in the correct zip format meaning you can immediately upload them to a software depot. This renders the conversion step optional in most cases but is nevertheless worth mentioning. Here’s an example of a bundled Dell driver for ESXi.
Step 4 – Upload the image and VIBs / drivers to the depot
Click on the Import Software Depot icon (1) to upload drivers / VIBs you wish to include in the customized ESXi image. Navigate to the folder (2) where the zip file is located using the Browse button, Type in a name (3) for it and press Upload (4). As per the next screenshot, I’m uploading the firewall rule VIB which I converted to a zip archive in the previous step.
Uploading a custom VIB / driver in Image Builder
Step 5 – Building the custom ESXi image
At this point, we have everything we need to put together the custom ESXi image. We continue by selecting the custom software depot created in Step 1 and adding an image profile to it. The image profile is extracted from the ESXi 6.5 U1 Express Update 4 patch uploaded by way of step 2.
Switch to the Image Profiles tab and click on the New Image Profile button.
The fields on the next screen are self-explanatory and mandatory save for Description. It is important that you select the correct custom depot from the drop-down box where you want the image profile created. This applies only when you have multiple custom depots created. Press Next.
Setting the details for the image profile
We next define what we want included, or excluded, from the custom ESXi image.
Setting the Software Depot value to All Depot (1) ensures that any uploaded software packages are visible to the user. In the next screenshot, you can see the Altaro firewall rule displayed alongside the VIBs comprising ESXi. Tick the box next to each software package (2) you want included in the custom ESXi image. There’s no select all option, so you must tick every single one you want included. Bummer, I know! Press Next.
Note: The Acceptance Level (3) value should match the least privileged setting displayed for a software package, Community Supported in this case. From the testing I carried out, setting it to any other value will generally result in errors or failed ISO exports.
Ideally, you should have any custom VIB signed to the correct level. You can force the acceptance level on ESXi via the esxcli softwarecommand but be aware that this will put ESXi in an inconsistent state and not eligible for VMware support.
Selecting the software packages to include in the image profile
Press Finish to complete the image profile creation process.
Once the image profile has been created, you have several options to choose from amongst which to export the image profile as a bootable ISO or zip file, which is what we’re after.
Tasks that can be performed on a image profile
Step 6 – Creating a bootable ESXi ISO image
Click on the custom software depot (1) created in step 1 and select the Image Profiles tab (2). Highlight the image profile (3) you wish to export and click on the Export Image Profile button (4). In the dialog box presented , select the type of format you want the profile exported to.
In our case, we select the ISO option (5) and click on the Generate Image (6) button. This will create the customized and bootable ESXi ISO image for us.
Generating a bootable ESXi ISO image from an image profile
If the export fails, tick on the Skip acceptance level checking option.
An error is generated if the acceptance level on a package is not correctly set
If the export is successful, use the link provided to download the customized ESXi ISO image.
Download the customized ESXi ISO image to a local folder
Testing it
I’m going to installed ESXi as a VM on Workstation Pro to verify that the ISO is valid. The things I’ll be looking for, apart from being able to boot from the ISO, are the build version and the inclusion of the firewall rule.
The image boots fine. Notice how the ESXi installer is modified to reflect the image profile used to create the ISO image.
The build number 6765664 is also correct as it corresponds to ESXi 6.5 U1 Express Patch 4, something you can verify here.
Checking an ESXi’s host build number
Lastly, I’ll check if the firewall rule has indeed been added to the list and enabled.
An ESXi firewall rule included in a custom ESXi image is correctly loaded and enabled
Conclusion
Being in a position to customize ESXi images is important for a number of reasons. These range from ensuring that patches and updates persist after a stateless ESXi host is rebooted to being able to install ESXi on hardware for which no vendor-modified image exists. If you want to learn about the various ESXi 6.5 provisioning methods, do have a look at Deploying vSphere ESXi 6.5.
Introduction
This document describes how to install device drivers on the Cisco Unified Computing System (UCS) for common operating systems.
Prerequisites
Requirements
Cisco recommends that you have knowledge of these topics:
- Cisco UCS Manager
- Cisco Integrated Management Controller (CIMC)
- Virtual Machine-ware (VMware), Windows Server, or Linux Operating Systems (OS)
Components Used
The information in this document is based on these hardware platforms:
- UCS B Series
- UCS C Series
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Background Information
Driver Definition
A device driver is software that is the interface between the OS and the hardware. The device driver translates general OS commands into specialized commands for a particular device, which allows the OS to communicate with hardware devices.
Devices that Require a Driver
Here is a list of hardware devices that require device drivers:
- Ethernet Network Interface Card (ENIC)
- Fibre Channel Network Interface Card (FNIC)
- Redundant Array of Indepent Disks (RAID) Controller
- Motherboard Chipset
- Video Card
- Trusted Platform Module (TPM)
Drivers Versus Firmware
Device drivers are different from firmware. Device driver software is installed on the OS, whereas firmware is lower-level code that is installed on hardware devices. Firmware is stored in non-volatile memory, such as ROM, Erasable Programmable ROM (EPROM), or flash memory.
Driver Dependence on Firmware
Device drivers have a strong dependence on the device firmware. Device drivers must be compatible with the firmware level of a hardware device, so that they properly communicate with each other; driver and firmware functionality must match for correct operation to take place.
When Drivers Must be Installed and Updated
Device drivers come pre-installed with operating systems (such as Cisco OEM VMware ESXi images), or they can be manually installed post-OS setup.
Device drivers generally need to be updated after these procedures:
- UCS firmware upgrades
- Major OS upgrades/patches
Driver Versions Required
The UCS Hardware and Software Interoperability matrix outlines the driver versions that are required for a particular OS, device, and firmware combination.
Warning: The driver versions listed on the matrix have been tested and verified by the Cisco Engineering Quality Assurance team, and it is crucial to install the correct driver; otherwise, you might run into unexpected behavior which could lead to network outages.
This example shows that an FNIC driver version of 1.6.0.36 is required for a B200 M4 with a Virtual Interface Card (VIC) 1240 that runs ESXi 6.0 U3, on UCS Release 3.2.2.
Download the Driver Bundle
Complete these steps in order to download the driver bundle:
- In a web browser, navigate to http://www.cisco.com.
- Under Support, click Download Software.
- Click Unified Computing and Servers.
- Choose your server. Cisco UCS drivers are available for both Cisco UCS B-Series Blade servers and Cisco UCS C-Series Rack-Mount.
- Click Unified Computing System (UCS) Drivers.
- Select the bundle you want to download, and click Download Now.
Tip: When you choose which driver bundle to download, it is important to select the driver bundle version that is most similar to the server firmware release. For example, if you run a UCS-B Release 3.2(2b), then VMware driver bundle ucs-bxxx-drivers-vmware.3.2.2.iso is required.
Tip: Most VMware ESXi drivers are downloaded directly from www.vmware.com/download, with a search for the driver version. This is often quicker than if you were to download the entire driver bundle.
Identify Server Hardware
Before you select the correct driver, you must identify what hardware devices are installed on the server. This section describes how to find the devices located on the UCS Manager and in the CIMC.
UCS B Series
This example shows how to find the server inventory in UCS Manager. Server 1/1 has two adapter models installed: the VIC 1240 and 1280.
UCS C Series
This example shows how to find the server hardware devices in the CIMC. The server has a LSI 9266-8i RAID controller installed.
Identify the UCS Firmware Release
Before the correct driver version is selected, the UCS release must be identifed. This section describes how to identify the current UCS release installed on the servers.
UCS B Series
In this example, the UCS B Series runs UCS Release 2.1(1a). Sony vaio drivers for windows 10 64 bit.
UCS C Series
In this example, the UCS C Series runs UCS Release 1.4(6d).
OS Specifics
This section describes how to check driver versions and how to install drivers on common OSs.
VMware ESXi
Use these commands in order to check the current driver versions and VMware build:
Tip: These commands are executed from the ESXi CLI. Secure Shell (SSH) must be enabled before an SSH session is initated.
Command | Description | ||||
vmware -vl | Displays the VMware build and patch level | ||||
esxcli software profile get | Displays flavor of install ISO | ||||
esxcfg-scsidevs -a | Lists the hosts HBAs and the associated driver name | ||||
esxcfg-nics -l | Lists the host vmnics and network interface card (NIC) models | ||||
ethtool -i vmnicX | Displays the Ethernet driver used by the specified vmnic | ||||
esxcli network nic get -n vmnicX | Displays the Ethernet driver used by the specified vmnic on ESXi 6.5 | ||||
vmkload_mod -s fnic | Displays the host bus adapter (HBA) driver version for the Cisco VIC | ||||
vmkload_mod -s enic | Displays the Ethernet driver version for the Cisco VIC | ||||
vmkload_mod -s nenic | Displays the Ethernet driver version for the Cisco VIC for ESXi 6.5 and later releases | ||||
vmkload_mod -s megaraid_sas | Displays the LSI MegaRAID driver version | ||||
vmkload_mod -s lsi_mr3 | Displays the LSI lsi_mr3 driver version(Native driver on ESXi 6.7) | ||||
vmkload_mod -s driver_name | Displays the driver version for a specified driver |
These examples show that vmnic2 uses a Cisco VIC and a driver version of 1.4.2.15a.
These examples show that the Qlogic Host Bus Adapter (HBA) uses driver qla2xxx Version 901.1k.1-14vmw.
Install the Driver
Complete these steps in order to install the driver:
- Extract the contents of the driver zip file, and identify the *.vib file.
- Use the Datastore Browser in order to upload the *.vib file to an ESXi host datastore.
- Enter the host into Maintenance mode.
- Install the driver.
ESXi 5.x/6.x
![Esxi Esxi](https://masteringvmware.com/wp-content/uploads/2017/02/ESXi6.5-web-client-2.jpg)
Use this command in order to install the driver on ESXi Release 5.x/6.x:
Note: If the drivers require a signature verification, run this command with the --no-sig-check switch. Ensure that you use the full path to the file.
ESXi 4.x
Use this command in order to install the driver on ESXi Release 4.x:
Finish the Installation
After you install the driver with one of the previously mentioned commands, exit Maintenance mode and reboot the host. For more information on how to install drivers, reference the Related Information section at the end of this document.
Useful VMware CLI Commands
Add Network Drivers To Esxi 6 Web Access
Here are some other useful VMware commands that you can use when you install a driver:
Check Maintenance Mode Status
Check for Powered-On VMs
Power-Off VMs
Enter Maintenance Mode
Exit Maintenance Mode
Esxi Driver Download
Microsoft Windows Server
This section describes how to install a driver on a Microsoft Windows server.
Check Current Driver Version
I40en Driver Esxi
In order to check the device drivers in Microsoft Windows, use the Device Manager located in the Control Panel.
Check Current Driver Version CLI
For Windows Server Core the Plug-and-Play (PnP) Utility (PNPUtil.exe) is used to check driver versions.
Missing Drivers
Hardware devices with missing drivers are displayed in the Device Manager with a yellow question mark. These devices should be updated with the correct driver in order to prevent unexpected behavior.
Install the Driver
In order to install or update a driver in Microsoft Windows, right-click on the device, and choose Install/Update Driver in order to start the Installation Wizard.
Install the Driver from CLI
The PNPUtil tool can also be used to install drivers from the CLI. The driver ISO bundle can be mounted via the UCS KVM Console Virtual Media.
Useful Windows CLI Commands
Command | Description |
pnputil.exe -e | List all installed 3rd party drivers |
pnputil.exe -a <INF name> | Install driver |
pnputil.exe -d <INF name> | Delete driver |
pnputil.exe -f -d <INF name> | Force delete driver |
Red Hat and SUSE Linux
This section describes how to install and validate a driver on Red Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES).
Add Network Drivers To Esxi 6 Web Browser
SUSE Background Information
Starting with SLES 12 SP1, the Cisco eNIC and usNIC drivers are bundled together into a single RPM (vs. being packaged in separate RPMs, as they are for other Linux distributions). Bundling both drivers into a single RPM is required because of how kernel module dependencies are managed in SLES 12 SP1 and later. If you are not using Cisco usNIC functionality (i.e., if you have not provisioned any usNIC devices in UCSM / CIMC), the usNIC driver will effectively be ignored.
The eNIC and usNIC drivers have their own distinct version numbers. If you install the cisco-enic-usnic RPM on SLES 12 SP 1 or later, once those drivers are loaded into the running kernel (e.g., via rebooting), use cat /sys/module/enic/version and cat /sys/module/usnic_verbs/version to view their respective version numbers. The cisco-enic-usnic RPM has its own distinct version number as well. Because it represents the packaging of the eNIC and usNIC drivers, the RPM version number may look similar, but does not reflect the specific version of either driver.
For additional information on the exact driver versions query and review the RPM description section. The query looks similar to the example below:
Verify current driver versions and OS Release
Here is a list of commands used in order to check the current driver version and OS release:
Command | Description |
modinfo driver_name | Displays driver version for the specified driver that will be loaded (by default) at next reboot |
modinfo /path/to/driver_name.ko | Displays driver version for the specified driver kernel object file |
cat /sys/module/enic/version | Displays the Ethernet driver version currently loaded in the running Linux kernel for the Cisco VIC adapter |
cat /sys/module/fnic/version | Displays the FC NIC driver version currently loaded in the running Linux kernel for the Cisco VIC adapter |
cat /sys/module/megaraid_sas/version | Displays the LSI MegaRAID driver version currently loaded in the running Linux kernel |
lsmod -l | Lists currently-loaded drivers in the kernel |
cat /etc/redhat-release | Shows the RHEL release (for RHEL 6.x and earlier) |
cat /etc/SuSE-release | Shows the SUSE release (for SLES 11 SP3 and earlier) |
cat /etc/os-release | Shows the RHEL release (for RHEL 7.x and later, and SLES 11 SP4 and later) |
uname -a | Shows kernel related information |
Note: Be aware of the command modinfo [ driver name ]shows the module information about the driver that will be loaded upon next reboot. This is not necessarily the same driver version currently loaded in the running kernel. Review cat/sys/module/DRIVER_NAME/version to validate the driver version loaded in the currently running kernel, and/or use the command modinfo [ /path/to/driver.ko ] to validate the module info for a specific driver kernel object file.
Tip: Refer to the Driver Name Reference Table located in the Appendix for examples of other common driver names.
Jdk 7 mac. This example shows that an ENIC driver version of 3.2.210.18-738.12 bundled in the cisco-enic-usnic RPM package 3.2.272.23 is installed on SLES 15 GA.
Install the Driver
Drivers in RHEL and SLES are installed using the Redhat Package Manager (RPM). Use this command in order to install the driver:
Tip: When you install drivers in Linux, ensure that you review the README files associated with the driver if available. You can look at the contents of the RPM to see where its associated README file was installed (e.g., rpm -qp kmod-enic). Some RPM driver packages have dependencies on other modules, and require installation of additional RPM packages. The README files contain full instructions on how to install the driver file.
Appendix
Driver Name Reference Table
This table shows the driver names or prefixes for common drivers.
Command | Description |
enic | Cisco VIC Ethernet NIC |
fnic | Cisco VIC FC NIC |
qle or qla | Qlogic adapter |
lpfc | Emulex HBA (light pulse) |
be2net | Emulex Ethernet NIC |
igb or ixgbe | Intel NICs |
bnx | Broadcom adapter |
megaraid | LSI MegaRAID |
megasr | Embedded SW RAID |
nenic | Cisco VIC Ethernet NIC for ESXi 6.5 |