How to Solve Staging Error on ESXi 6.5 “Host Patch Conflict With The Package”
Are you getting any error while trying to update your ESXi host?
If yes, don’t worry! I have good news for you.
Look at the screenshot below, are you getting same or similar error?
(click below to expand)
Recently I wanted to patch my ESXi host to the latest version of ESXi 6.5
A day before the real update I created a task to stage/push patches to my esxi host by going to update manager but the task failed!
I got following error (click below to expand)
There are conflicts…
Conflict is not a new thing. I have seen that in my life before
Truth is some time I move forward with the conflict but ESXi won’t allow that!
If there is a conflict- ESXi want you to solve the conflict in order to move forward
I don’t know why esxi doesn’t behave like normal human beings 😀
Anyway, I saw conflict error while staging Non-Critical patches, but no error while staging critical host patches – High critical vs non-critical
It’s not high critical vs non-critical. It’s high critical or Non-Critical
If my guess is correct ESXi doesn’t differentiate High with Non. Both are simply critical for ESXi
A conflict for ESXi is a conflict whether that is high critical patch or non-critical, we need to solve the conflict to move forward!
How to solve Conflicts?
Before trying to solve conflicts, you need to know something…
- What makes the conflict
- Is the conflicted package currently used by your ESXi
- Is it safe to remove the conflict?
What makes the conflict or what package(vib) making the conflict?
As you can see the highlighted part above “Qlogic_bootbank_net-cnic” and Qlogic_bootbank_misc-cnic-register” is making the conflict
Now lets find out if esxi currently using these packages or VIB
(VIB stands for vSphere Installation Bundle, it’s a software package that gets installed on a vSphere ESXi Host. A VIB is somewhat similar to a tarball or ZIP archive in that it is a collection of files packaged into a single archive to facilitate distribution. Click me to read more)
Is the conflicted package currently used by your ESXi host?
From the screenshot above, conflict is related to “Qlogic” so the next step is you need to find out if your ESXi is using any Qlogic drivers
To find out that, I took a putty session to my esxi host and query NIC and storage drivers currently used using esxcli and esxcfg commands
To verify NIC driver details, I used esxcli network nic list command
To verify storage driver details, I used esxcfg-scsidevs -a
(a screenshot of the command below)
As you can see below (highlighted part), my ESXi is using igbn, lsi_mr3,vmw_ahci and vmkusb drivers.
My ESXi is not using any Qlogic drivers so It’s safe to remove.
Removing the Conflict(Step by step)
First you need to make sure you’re using the correct name of the conflicting VIB, to do so I used esxcli software vib list command
(In my case below two VIBs were conflicting)
1. Qlogic_bootbank_net-cnic_2.712.30.v55.2-10
2. Qlogic_bootbank_misc-cnic-register_2.712.30
Command to list the vib: esxcli software vib list | grep net-cnic
Once you verify the name, next step is to just remove the VIBs using esxcli software vib remove command
I prepared the following command in a notepad first and executed second
esxcli software vib remove -n net-cnic
esxcli software vib remove -n misc-cnic-register
Net-cnic VIB removed successfully but I got an error while trying to remove the 2nd vib misc-cnic-register
Error while removing the 2nd VIB
When you try to remove a conflicting VIB, you might encounter error like I had above but don’t worry just read the error message properly and you will understand why vib cannot be removed
In my case VIB I am trying to remove have dependency so before removing the vib, I need to remove dependency first
Both of the VIBs were Qlogic related. My host doesn’t use any qlogic drivers so safe to remove.
(You can safely remove vib once you verify and confirm your esxi doesn’t use those vibs)
I used esxcli sotware vib remove command to remove dependency and conflicting vib
Conflicting vibs removed, one last step pending which is to reboot your ESXi host.
You can either reboot the host using reboot command or by going to vCenter console
Once after the reboot, try to stage patch using vSphere update manager this should work!
Hope this helps you solve the issue!
Happy patching 😎