I figured this out...
Download Lenovo custom image for the release you want to install over what's in place. Settings will be preserved.
Upload to the server's datastore. I generally create a folder called Software for all uploaded files. In this one I created a folder just for the ESXi image called esxi7.
SSH to the server
Change directory to your folder where the file was uploaded.
[root@test-esxi02:/vmfs/volumes/datastore1/Software/esxi7]
(datastore1 can vary)
Running this command exposes the profile name:
esxcli software sources profile list -d /vmfs/volumes/5bcf54ad-484b6ea8-c37e-9829a6fb04a0/Software/esxi7/VMware-ESXi-7.0.2.-17867 351-LNV-20210528.zip
Name Vendor Acceptance Level Creation Time Modification Time
---------------------- ------------ ---------------- ------------------- -------------------
LVO_7.0.2-LVO.702.10.5 Lenovo, Inc. PartnerSupported 2021-05-27T14:11:07 2021-05-27T14:11:07
We know the profile we wish to use is named LVO_7.0.2-LVO.702.10.5
Take note of the zip filename.
[root@test-esxi02:~] ls /vmfs/volumes/5bcf54ad-484b6ea8-c37e-9829a6fb04a0/Software/esxi7/
VMware-ESXi-7.0.2.-17867351-LNV-20210528.zip
Run the upgrade with a dry run
[root@test-esxi02:~] esxcli software profile update -p LVO_7.0.2-LVO.702.10.5 -d /vmfs/volumes/5bcf54ad-484
b6ea8-c37e-9829a6fb04a0/Software/esxi7/VMware-ESXi-7.0.2.-17867351-LNV-20210528.zip --dry-run
[DependencyError]
VIB QLC_bootbank_qedentv-ens_3.11.24.0-1OEM.670.0.0.8169922 requires qedentv_ver = X.40.17.0, but the requirement cannot be satisfied within the ImageProfile.
Please refer to the log file for more details.
[root@test-esxi02:~]
Looks like we need to download or remove qedentv prior to upgrading to 7.0U2 (I've ran into this with older releases of ESXi as well).
Let us see if any QLogic drivers are in use.
[root@test-esxi02:~] esxcli storage core adapter list | grep qedentv
[root@test-esxi02:~] esxcli network nic list | grep qedentv
null is returned for both. Let's take a deeper look just to make sure.
[root@test-esxi02:~] esxcli network nic list
Name PCI Device Driver Admin Status Link Status Speed Duplex MAC Address MTU Description
------ ------------ ------ ------------ ----------- ----- ------ ----------------- ---- -------------------------------------------------
vmnic0 0000:5a:00.0 i40en Up Up 1000 Full 98:29:a6:fb:04:a0 1500 Intel(R) Ethernet Connection X722 for 1GbE
vmnic1 0000:5a:00.1 i40en Up Up 1000 Full 98:29:a6:fb:04:a1 1500 Intel(R) Ethernet Connection X722 for 1GbE
vmnic2 0000:2f:00.0 igbn Up Up 1000 Full b4:96:91:61:46:8a 1500 Intel Corporation I350 Gigabit Network Connection
vmnic3 0000:2f:00.1 igbn Up Up 1000 Full b4:96:91:61:46:8b 1500 Intel Corporation I350 Gigabit Network Connection
vmnic4 0000:5c:00.0 igbn Up Down 0 Half b4:96:91:5d:28:e8 1500 Intel Corporation I350 Gigabit Network Connection
vmnic5 0000:5c:00.1 igbn Up Down 0 Half b4:96:91:5d:28:e9 1500 Intel Corporation I350 Gigabit Network Connection
vmnic6 0000:5c:00.2 igbn Up Up 1000 Full b4:96:91:5d:28:ea 1500 Intel Corporation I350 Gigabit Network Connection
vmnic7 0000:5c:00.3 igbn Up Up 1000 Full b4:96:91:5d:28:eb 1500 Intel Corporation I350 Gigabit Network Connection
vusb0 Pseudo cdce Up Up 100 Full 9a:29:a6:fb:04:a5 1500 IBM XClarity Controller
[root@test-esxi02:~] esxcli storage core adapter list
HBA Name Driver Link State UID Capabilities Description
-------- -------- ---------- -------------------- ------------ ---------------------------------------------------------------------------
vmhba0 vmw_ahci link-n/a sata.vmhba0 (0000:00:17.0) Intel Corporation Lewisburg SATA AHCI Controller
vmhba1 vmw_ahci link-n/a sata.vmhba1 (0000:00:11.5) Intel Corporation Lewisburg SATA AHCI Controller
vmhba2 lsi_mr3 link-n/a sas.500062b203260280 (0000:5e:00.0) Broadcom ThinkSystem RAID 930-8i 2GB Flash PCIe 12Gb Adapter
[root@test-esxi02:~] esxcli software vib remove -n qedentv
[DependencyError]
VIB QLC_bootbank_qedi_2.19.9.0-1OEM.670.0.0.8169922 requires qedentv_ver = X.40.17.0, but the requirement cannot be satisfied within the ImageProfile.
VIB QLC_bootbank_qedentv-ens_3.11.24.0-1OEM.670.0.0.8169922 requires qedentv_ver = X.40.17.0, but the requirement cannot be satisfied within the ImageProfile.
VIB QLC_bootbank_qedrntv_3.11.24.0-1OEM.670.0.0.8169922 requires qedentv_ver = X.40.17.0, but the requirement cannot be satisfied within the ImageProfile.
VIB QLC_bootbank_qedf_2.2.9.0-1OEM.670.0.0.8169922 requires qedentv_ver = X.40.17.0, but the requirement cannot be satisfied within the ImageProfile.
Please refer to the log file for more details.
So, lets try to remove one of these things listed above
[root@test-esxi02:~] esxcli software vib remove -n QLC_bootbank_qedf_2.2.9.0-1OEM.670.0.0.8169922
[NoMatchError]
No VIB matching VIB search specification 'QLC_bootbank_qedf_2.2.9.0-1OEM.670.0.0.8169922'.
Please refer to the log file for more details.
Cannot because nothing matches that name. Let's see what we have installed for drivers
[root@test-esxi02:~] esxcli software vib list | grep QLC
qcnic 1.0.26.0-1OEM.670.0.0.8169922 QLC VMwareCertified 2021-04-14
qedentv-ens 3.11.24.0-1OEM.670.0.0.8169922 QLC VMwareCertified 2021-04-14
qedentv 3.11.24.0-1OEM.670.0.0.8169922 QLC VMwareCertified 2021-04-14
qedf 2.2.9.0-1OEM.670.0.0.8169922 QLC VMwareCertified 2021-04-14
qedi 2.19.9.0-1OEM.670.0.0.8169922 QLC VMwareCertified 2021-04-14
qedrntv 3.11.24.0-1OEM.670.0.0.8169922 QLC VMwareCertified 2021-04-14
qfle3 1.0.84.0-1OEM.670.0.0.8169922 QLC VMwareCertified 2021-04-14
qfle3f 1.0.68.0-1OEM.670.0.0.8169922 QLC VMwareCertified 2021-04-14
qfle3i 1.0.23.0-1OEM.670.0.0.8169922 QLC VMwareCertified 2021-04-14
Note the names of some of these match names above.
Lets try to remove one of those unused QLogic drivers.
Looking at the list above, there are 4 drivers listed. Lets target those:
qedi, qedentv-ens, qedrntv, qedf
[root@test-esxi02:~] esxcli software vib remove -n qedf
Removal Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed:
VIBs Removed: QLC_bootbank_qedf_2.2.9.0-1OEM.670.0.0.8169922
VIBs Skipped:
[root@test-esxi02:~] esxcli software vib remove -n qedi
Removal Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed:
VIBs Removed: QLC_bootbank_qedi_2.19.9.0-1OEM.670.0.0.8169922
VIBs Skipped:
[root@test-esxi02:~] esxcli software vib remove -n qedrntv
Removal Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed:
VIBs Removed: QLC_bootbank_qedrntv_3.11.24.0-1OEM.670.0.0.8169922
VIBs Skipped:
[root@test-esxi02:~] esxcli software vib remove -n qedentv
[DependencyError]
VIB QLC_bootbank_qedentv-ens_3.11.24.0-1OEM.670.0.0.8169922 requires qedentv_ver = X.40.17.0, but the requirement cannot be satisfied within the ImageProfile.
Please refer to the log file for more details.
[root@test-esxi02:~] esxcli software vib remove -n qedentv-ens
Removal Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed:
VIBs Removed: QLC_bootbank_qedentv-ens_3.11.24.0-1OEM.670.0.0.8169922
VIBs Skipped:
[root@test-esxi02:~] esxcli software vib remove -n qedentv
Removal Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed:
VIBs Removed: QLC_bootbank_qedentv_3.11.24.0-1OEM.670.0.0.8169922
VIBs Skipped:
Those removed - just had to remove qedentv-ens before qedrntv.
Now that the driver causing all the trouble is gone, let's try the update again in dry-run
[root@test-esxi02:~] esxcli software profile update -p LVO_7.0.2-LVO.702.10.5 -d /vmfs/volumes/5bcf54ad-484
b6ea8-c37e-9829a6fb04a0/Software/esxi7/VMware-ESXi-7.0.2.-17867351-LNV-20210528.zip --dry-run
Update Result
Message: Dryrun only, host not changed. The following installers will be applied: [BootBankInstaller, LockerInstaller]
Reboot Required: true
VIBs Installed: BCM_bootbank_bnxtnet_218.0.38.0-1OEM.700.1.0.15843807, BCM_bootbank_bnxtroce_218.0.16.0-1OEM.700.1.0.15843807, EMU_bootbank_brcmnvmefc_12.8.329.0-1OEM.700.1.0.15843807, EMU_bootbank_lpfc_12.8.329.0-1OEM.700.1.0.15843807, INT_bootbank_i40en_1.10.9.0-1OEM.700.1.0.15525992, INT_bootbank_icen_1.4.2.0-1OEM.700.1.0.15843807, INT_bootbank_ixg...
Looks good. Run the command without the dry-run. You don't need to be in Maintenance mode to complete this, however the server will need an after-hours restart after shutting down all the guest servers gracefully.