This article outlines the process of manually updating (in-place) the vCenter virtual machine's hardware version to vmx-17 after an upgrade from vCenter 9.0.x to vCenter 9.1 or above.
These steps MUST be taken on any vCenter server that was updated (in-place) from 9.0 to 9.1. This excludes Reduced Downtime Updates (RDU), as a new appliance is created during that process and is not considered "in-place"
VMware vCenter 9.1 (After an in-place upgrade from 9.0.x)
Login to the ESXi Host Client UI
Locate the vCenter VM
In the left-hand pane of ESXi Host Client, click 'Virtual Machines', locate the VM you want to update
Cross-check the VM Hardware compatibility in the Summary Panel. It will be "ESXi 5.5 virtual machine" that supports VM hardware version 10
Power off the VM
Right-click the VM -> Power -> Power Off
(Changing hardware version requires the VM to be off)
Change the Virtual Hardware Compatibility
Right-click the VM -> Upgrade VM Compatibility
Select the VM Compatibility version as "ESXi 7.0 virtual machine" from the dropdown menu, which supports VM hardware version 17
Click Yes to confirm VM compatibility upgrade by accepting the dialogue box
Power On the VM & Verify
The hardware version change takes effect immediately once it boots. Verify the updated VM Hardware compatibility from the Summary Panel.
It must have been updated as "ESXi 7.0 virtual machine", which supports VM hardware version 17.
Upgrading the vCenter Server Virtual Machine hardware version above 17 can cause VMware Cloud Foundation (VCF) Operations to incorrectly report the vCenter Server version as 9.0.x. This inventory mismatch falsely triggers a requirement to upgrade to VCF 9.1.
To resolve this issue, manually revert the hardware version to 17 by modifying the virtual machine's .vmx configuration file:
Power off the vCenter Server Virtual Machine.
Create a backup of the vCenter Server .vmx file.
Open the .vmx file using a text editor (e.g., vi).
Locate the virtualHW.version parameter and modify the value to "17":
virtualHW.version = "17"
Save and close the file.
Reload the Virtual Machine configuration using vim-cmd vmsvc/reload ## (## should be the vm id which can be identified with vim-cmd vmsvc/getallvms | grep -i vmname)
Power on the vCenter Server Virtual Machine.