Hello, we had an issue with a guest CPU ID changing on a guest which I have listed below.
- We have an application running on Windows Server 2016 that used CPUID as part of the application licensing.
- HA kicked in due to a network issue and this caused the machine to start up on host 3 of a 3 host cluster.
- The application license on the guest VM had become invalidated to to CPUID change.
- Checked the vsphere logs and saw that in the months past the VM had VMotioned successfully between hosts 1 and 2 without issue many times.
- Moved VM back to host 2 hoping to reactivate the license but the CPUID stayed the same.
- CPUD ID was: 0FABFBFF000306F0 is now: 0F8BFBFF000306F0
- EVC is enabled on the cluster and is set to intel "Haswell" Generation.
My questions are:
How are CPUID's generated for the guest machines? I have read a post from 2014 that said the CPUID was in the .vmx file. I had a look but it was not there so I assume that has changed over the years.
I checked other 2016 servers running on the same host and found each VM has a different CPUID, are unique values assigned to each guest during provisioning? Shouldn't the CPUID's be the same for machines running on the same host?
And my most important question: How can the CPUID change and stay changed after the server restarts on another host?
Thanks for the help.