Often I get asked what's VIB and How to install VIB in VMware ESXi. VIB packages are update packages, drivers or other third party updates to ESXi which installs by using VMware Update Manager (VUM) or directly through the local CLI. The easiest way to patch ESXi free (without update manager) is through the local CLI.
Update: I'm talking here about ESXi Free version, where the remote CLI tools can't be used, because of the locked up APIs.
Update2: The scripting toolkits which uses PowerShell are limited to read-only access for the free version of VMware ESXi. However, they can still be used to update/install/check the VIBs. To clear the doubts, Free version of ESXi mean ESXi with free license applied. If the host gets updated to at least vSphere Essentials (or higher), the tools have write-access and can be used for truly managing the host.
What is VIB?
A vib is vSphere Installation Bundle. To make it more detailed, one can look at the vSphere 5 documentation page here, but basically you'll find out that there are differences between individual VIBs, Image profile or Software depot:
Different types of VIBs?
Quote:
VIB – 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. VIBs are available in software depots. You can use VIBs to create and customize ISO images or to upgrade ESXi hosts by installing VIBs asynchronously onto the hosts.
Image Profile – An image profile defines an ESXi image and consists of VIBs. An image profile always includes a base VIB, and might include more VIBs. You examine and define an image profile using the Image Builder PowerCLI.
Software Depot – A software depot is a collection of VIBs and image profiles. The software depot is a hierarchy of files and folders and can be available through an HTTP URL (online depot) or a ZIP file (offline depot). VMware and VMware partners make depots available. Companies with large VMware installations might create internal depots to provision ESXi hosts with vSphere Auto Deploy, or to export an ISO for ESXi installation.
There are VIBs that needs a reboot (base ESXi patches, drivers or esxcli extensions) and there are ones that don't. Some examples of VIBs which do not require reboot are:
- CIM providers
- Cisco Nexus
- vShield Plugins
- Lab Manager
- HA agents
A VIB has 3 parts:
- File Archive – the main file. The file which gets deployed to the ESXi host.
- XML descriptor file – has inportant info about requirements for installing the VIB. (dependencies, compatibility, reboot necessary? )
- Signature File – signature which verifies the level of trust (Integrity, Information about the creator and verifications that has been done).
The different VIBs can be installed different way as you see. In addition there are VIBs that are VMware certified, VMware accepted, Partner supported or community supported.
The ESXCLI command used to Add or Remove VIBs from ESXi host.
There are multiple ESXCLI commands which can be used for Installing, removing or updating a VIB:
1. To Install:
esxcli software vib install -d “/vmfs/volumes/Datastore/DirectoryName/PatchName.zip“
2. To Update:
esxcli software vib update -d “/vmfs/volumes/Datastore/DirectoryName/PatchName.zip”
3. To verify which VIBs are installed:
esxcli software vib list
No need to say, that you must first enable the SSH in order to be able to use an SSH client, like Putty, to connect to your ESXi host….
I hope that this article helped you learn the basics of VMware VIBS and that you enjoying the read on ESX Virtualization. Feel free to subscribe to our RSS feed. The best way is to use Feedly.com
Paul Currie says
Vladan, I guess we are playing blog tag today. I saw your edit above as you mentioned on my post, but wanted to clear something up for you. Your comment above locked API in the free version of vSphere is only partly true. VMware does in fact lock down APIs making them only available for paid versions, but as best as I can tell this only applies to vStorage APIs. (See list of licensed features in the license portuon of the host configuration tab). Products like VEEAM, VCB, VDR and VDP which enable backup and replication rely on these APIs. However, through testing against licensed free versions( I’m sure you’re aware you still have to apply a license to the free version) I have determined that at least in vSphere 5.x the ability to use powercli is not a feature that is limited by any sort of licensing.
Hope this information is useful. I do have unpublished video capture of my script running against a free host if you’d like to see it in action.
Vladan SEGET says
Good point, Paul. No problem, I see where my problem laid. I’ll edit the article to reflect the fact. I appreciate your input.
Ron Watkins says
Failed to install VIB file:
~ # esxcli software vib install -d ./hpssacli-1.60.17.0-5.5.0.vib
[MetadataDownloadError]
Could not download from depot at ./hpssacli-1.60.17.0-5.5.0.vib/index.xml, skipping ((‘./hpssacli-1.60.17.0-5.5.0.vib/index.xml’, ”, “[Errno 4] IOError: “))
url = ./hpssacli-1.60.17.0-5.5.0.vib/index.xml
Please refer to the log file for more details.
Sing-yan TAM says
esxcli software vb install -v file=///vmfs/volumes//hpssacli-1.60.17.0-5.5.0.vib
Deva Walksfar says
Correct syntax
esxcli software vib install -v file:///vmfs/volumes//hpssacli-1.60.17.0-5.5.0.vib
DayLate says
Spot on!
venkat says
Filed to get the datastore after installation of new patch
I tried to install the patch on my ESXi host. when I did the patching, the Local data store for that host is disappeared.
how to get the local data store back?
Anyone tell me the solution for that.
Vladan SEGET says
It’s probably because your local storage controller is unsupported in the new release of ESXi. You could possibly Roll back to a previous version of ESXi. (during the boot process, there is a SHIFT + R key combination…)
Durai says
Hi, I would like to know, what are the prerequisites need in order to customize the ESXi 5.0 or 6.0 ISO image using VIB concepts.
Please post in the group as am new to the custom side.
Thanks
Alain Sylvestre says
Hi,
We upgrade or ESXi 5.1 to ESXi 6.0 U2. The strange thing is when we upgrade we see the local SD card and the remote SAN storage. After the upgrade to the SD card, all the drivers are up even the one for the remote SAN storage but we have any WWN for them.
We found old drivers storage (qlogic). We are asking if our procedure is ok?
1- remove the drivers that ESXi6.0 had replace who was working when we were in 5.1.
2- install the one we found (1 year old and suposse to be compatible 5.5+)
3- reboot ESXi.
Vladan SEGET says
You should ensure that your hardware is on the HCL, and that you’re using a proper combination of driver/firmware versions.(Yes, the hardware has firmware which sometimes needs to match the driver).
Gyslain Hamel says
Hi question since I never did this I have this server
Server 2 : HP Proliant DL380 G7 Raid Controller either ICH10 4 port SATA IDE controller, or Broadcom iSCSI adapter VMware version : VMware ESXi, 5.5.0, 2456374
But the Storage sensor his not shown in the Hardware status, if i go to HP website for the Proliant DL380 it ask me to install the SCSI-HPSA-5.5.0 file, but VMWARe already have a 2015 version installed and a proliant is a 2010 server. So my questions are
1) Will installing the 2016 version of the HP website really add the storage sensor?
2) I do not have any backup servers so i have almost no choice but to run this on a production server, will this kill my datastore? AKA can i do this with users working and reboot later. and if the driver is not working well, will it break my access to the VMs?
Thanks
Vladan SEGET says
A simple VIB installation won’t break anything. If something goes wrong, the VIB can be simply uninstalled. If that’s your question.
Charlie says
FYI…today I got an error trying to install the NVIDIA_bootbank_NVIDIA-kepler-VMware_ESXi_6.5_Host_Driver_367.106-1OEM.650.0.0.4598673 with esxcli software vib install -d NVIDIA-vGPU-kepler-VMware_ESXi_6.5_Host_Driver_367.106-1OEM.650.0.0.4598673-offline_bundle.zip
I had to execute the command with the full path (with quotes) of the datastore and file like so:
esxcli software vib install -d “/vmfs/volumes/SharedDatastore/VIBs/NVIDIA-vGPU-kep
ler-VMware_ESXi_6.5_Host_Driver_367.106-1OEM.650.0.0.4598673-offline_bundle.zip”
Just wanted to share in case anyone else had the same problem.
The error I got was, “Could not download from depot at zip:/var/log/vmware/NVIDIA-vGPU-kepler-vSphere-6.5-367.106-370.12.zip?index.xml, skipping ((‘zip:/var/log/vmware/NVIDIA-vGPU-kepler-vSphere-6.5-367.106-370.12.zip?index.xml’, ”, “Error extracting index.xml from /var/log/vmware/NVIDIA-vGPU-kepler-vSphere-6.5-367.106-370.12.zip: [Errno 2] No such file or directory: ‘/var/log/vmware/NVIDIA-vGPU-kepler-vSphere-6.5-367.106-370.12.zip'”))
url = zip:/var/log/vmware/NVIDIA-vGPU-kepler-vSphere-6.5-367.106-370.12.zip?index.xml
Please refer to the log file for more details.
pToker says
THANKS! Just had that same issue.
Cassidy Howorth says
Vladan, i just wanted to say THANKS! your articles are simple concise and very helpful. I repeatedly end up using your tips and tricks to get my issues resolved. KUDOS to you!
Vladan SEGET says
Thanks for those nice words -:). ++
mim says
hi,
i ran the command :
esxcli software vib install -v=vmware-xxx-sas3ircu.vib
but i cannot run the command below:
sas3ircu 0 display
to see my controller information, actually how can i run command after installing a *.vib file in exs?
thanks and regards.
Omar says
You should remove the double quote and use single quote for the path.