- New free VMware tool: Virtual Machine Desired State Configuration (VMDSC) - Fri, Oct 22 2021
- VMware vSAN Automatic Rebalance vs. Proactive Rebalance - Fri, Oct 15 2021
- VMware Tanzu Services overview - Fri, Oct 8 2021
If you have some NIC or storage card drivers you want to integrate into the base ESXi image, it's quite easy to use ESXi Image Builder so your ESXi infrastructure has the best supported drivers. It is also possible to use PowerCLI.
The Image Builder service isn't active when you first install vSphere. You must activate and configure it. Just go and connect to your vCenter Server and then go to Auto Deploy > Enable Image Builder.
By default, only the administrator role has privileges to use the vSphere Auto Deploy service.
For now, you don't need to enable the Auto Deploy service together with Image Builder, as we won't be using auto deploy in this article.
Once you activate the service, the UI changes. You can see that we now have a few tabs, such as Software Depots, Deploy Rules, Deployed Hosts, Discovered Hosts, etc.
Most of these tabs are used with the auto-deploy service, which is not the topic of this post. We haven't activated the auto-deploy service, so it has not started. We only need to focus on the first tab, called Software Depots.
How to Add ESXi Software Depot ^
To work with software depots and customize image profiles, you'll have to add one or more software depots to the ESXi Image Builder Inventory.
There are two possibilities:
- Offline depot—You can use an offline file (ZIP)
- Online depot—Directly via a URL pointing to the VMware official software depots
Let's first try to do an online depot. Click New > Add Software Depot, and then enter a Name and the VMware online depot URL. Alternatively, you can add a local file, which you can download from VMware.
The second possibility is useful for environments that do not have internet access. The URL is https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
Within each depot, you'll see the images and its vSphere Installation Bundles (VIBs). A VIB is an ESXi software package. VMware and its partners package solutions, drivers, CIM providers, and applications that extend the ESXi platform as VIBs. You can use VIBs to create and customize ISO images or to upgrade ESXi hosts by installing VIBs asynchronously onto the hosts.
What is the VMware Offline Depot? VMware also calls it an offline bundle. It is a ZIP file that you download from the internet or copy from some media. You can save the zip file on a local or shared network drive. Offline bundles are also available on the websites of third-party vendors.
Since the release of vSphere 7.0, VMware has distributed an add-on .zip file that contains the delta between the OEM custom image and the base image that VMware provides. So, you can download the original VMware ESXi image and custom ISO images, as well as those OEM add-ons.
Create a personalized ESXi ISO image ^
We'll create an offline depot and then import the ZIP file we have downloaded from VMware. We're using the latest VMware-ESXi-7.0U2a-17867351-depot.zip file (offline bundle), available in the MyVMware account.
First, create a software depot as a "custom depot" (this is the same as in the first screenshot, but choose the bottom radio button). Just give it a meaningful name and click OK.
Then import the driver you want to include in the final ISO. In my case, I chose an NIC driver not present on the original ISO.
Now, create another new depot where we'll import the latest original ESXi 7 ZIP file.
Import the ZIP file inside this depot by clicking the Import button, as shown in the image below. Repeat the steps for each depot.
You will see two image profiles. There is the standard, which includes VMware Tools, and the no-tools, which does not include VMware Tools. The latter is usually used for auto deploying stateless environments, which allow the image to be more lightweight and faster to boot.
Now that we have both depots, the easiest way is to create a clone of the original image and add the new drivers to it during the process.
Just select the image profile you want to use, and click the Clone button.
A new assistant starts, which allows you to specify a name for the new image profile. In the image below, the arrow points out the selection of the original depot that we're making the clone from.
Then, check the box next to your driver so it can be included in the final image. If you have multiple depots, be sure to select only the drivers you want to include in the final image.
Then, finish the wizard to complete the process.
Now, we can export the image profile. Note that we have selected the "Vladan_ESXi" custom image that we just created. You can specify whether you want to include the installer in the ISO.
You can also skip acceptance level checking, as during the export, there is a VIB Validation. This process is fairly important because all dependencies are checked and validated.
When you export an image profile to an ISO, vSphere ESXi Image Builder validates each VIB, so the system has a lot to do. It performs the following actions:
- Conflict Checks—Image Builder validates that there are no conflicts by checking the Conflicts property of each SoftwarePackage.
- Signature Validation—The system performs a VIB signature validation, which prevents unauthorized modification of VIB packages. The signature is a cryptographic checksum that guarantees that a VIB was produced by the author.
- File Path Rules—The system verifies that VIBs follow file path usage rules. VMware tests VMwareCertified and VMwareAccepted VIBs to guarantee that those VIBs always follow file path usage rules.
You can also generate a zip archive.
The Export button changes to a Download button. Just click it to download your final ISO file where your driver is installed. You can use this ISO as an installation media.
Subscribe to 4sysops newsletter!
Final words ^
This was a small tutorial to teach us how to use the vSphere 7 Image Builder tool, which works hand-in-hand with Auto Deploy. But if you don't use Auto Deploy in your organization, then you can use it only as an Image Builder and export your customized ESXi images as ISO files.