VMware vSphere 5.1 has introduced Virtual Hardware version 9 (vmx-09). With the latest hardware version, VMs can have up to 64 vCPU, 1Bt of RAM or hardware accelerated 3D graphics (VMware View only). Together with VHV (virtualized hardware virtualization) improvements and less reboot requirements (from the vmx-09 and onwards), the overall management of versioning of virtual hardware and VMware tools installed per VM, has been changed too. The Default VM Compatibility Level decides what version of virtual hardware is presented as default for the VMs running on your host (cluster)/datacenter.
The Default VM compatibility level is set at the cluster level or at the datacenter level. The compatibility level determines the virtual hardware available to the virtual machine. The virtual hardware corresponds to the physical hardware available on the host machine. You can schedule an upgrade of the compatibility level to make a virtual machine compatible with newer versions of ESXi running on the host.
Depending on your needs and the age of your hosts, which compatibility level they can provide, I imagine that setting will vary for each user individually. I would say that more people would be able to use rather the cluster level, than the datacenter level.
Default VM Compatibility Level will be set at the cluster level or at the datacenter level. Settings done through vSphere Web client: Hosts and clusters > right click cluster > All vCenter Actions > Edit Default VM Compatibility.
Once you set the default VM compatibility level, you can schedule upgrade of selected VMs which are running withing your cluster (datacenter). You can do it two ways:
1. Through the vSphere Client ( The Windows C++) – by selecting the VMs which you want to upgrade the virtual hardware, and then doing a right click > upgrade virtual hardware.
If you can’t see the menu, than the VM is powered ON or the VM is running already the latest virtual hardware. Note: As usually, you should make sure that you take a snapshot of your VM before or create a backup, in case something goes wrong and you want to go back.
2. Through the new vSphere web client - you can then easily schedule the upgrade of the virtual hardware by selecting several VMs, and run the assistant, which enables you to schedule the process for running VMs. It means that the process of upgrade of the virtual hardware is scheduled and will be executed during the next reboot of those VMs.
While executing the assistant you’ll get a warning concerning the backup of your VMs, that the process is irreversible etc… And also you’ll be able to select the VM compatibility level (ESXi 5.1, or lower ESXi 5.0, ESXi 4.X etc.. ), but the default level is presented first. That’s the one you’ve setup at the cluster level.
Plan ahead, since the VM with the latest virtual hardware version won’t be able to run on older hosts running ESXi 4.1 or 5.0. Or it might loose some of the functionality.
There is a VMware KB 1003746 which states exactly that:
A VMware product cannot power on a virtual machine with a virtual hardware version that is higher than what it supports.
Note: If a virtual machine is created on a VMware product that supports a given virtual hardware version and is then migrated to a VMware product that does not support this level of virtual hardware, it does not power on.
The initiation of VM hardware upgrade is done by selecting the VM (or one several VMs at the same time) > then through the menu All vSphere Actions > Schedule VM Compatibility wizard.
You can click to enlarge.
There is also an option where you can select Only upgrade after normal guest OS shutdown. This option prevents the scheduled upgrade if there is a crash in that VM or any other problems, and the VM does not shut down or restarts normally.
If you’re protecting your infrastructure with good backup software, you’re sure that your backups are correct and you’re able to restore, then you should be safe.
Hope it clears out some misunderstanding on the subject.
Update: The Virtual Hardware versions and VMware Tools table recap can be also found at the Free ESXi 5.1 reference poster, which is a free download.
Here is a screenshot from the Virtual Hardware Support table: