Enhanced vMotion Compatibility (EVC) is a feature that helps ensure the best possible vMotion compatibility for your ESXi hosts. EVC ensures that your host’s present the same CPU features to your virtual machines, even if the processors in the hosts are different, which will then allow you to vMotion virtual machines between those hosts without issue. EVC does this by setting a ‘baseline’ set of CPU features, for the cluster, to present to the virtual machines.
EVC is configured at the cluster level, and applies the baseline set to all host’s within the cluster. EVC is disabled by default – It can be enabled in the cluster’s settings, under ‘VMware EVC’:
Configuring the EVC Baseline for a Cluster
The chosen EVC mode must be equal to the feature set of the host with the smallest feature set in the cluster. There are a number of things to bear in mind before configuring EVC on a cluster.
- All virtual machines that are running on hosts with a greater feature set than the EVC mode you intend to apply must be either powered off, or migrated to hosts in a different cluster prior to enabling EVC on the cluster.
- All hosts must have their CPUs from a single vendor, either AMD or Intel. EVC cannot allow for vMotion across hosts with CPUs from different vendors.
- All hosts should be configured for vMotion.
- All hosts must have supported CPUs for the EVC mode you wish to enable. You can determine this by checking the VMware Compatibility Guide.
There are a couple of methods for enabling EVC cluster. You can create a new, empty, cluster with EVC enabled and then move hosts into the cluster, or you could enable EVC on an existing cluster. If you are moving a host into a new cluster or enabling on an existing cluster you must ensure that there are no powered on virtual machines.
You can view the baseline in use on a host, in the hosts Summary tab:
You can also view the EVC mode being applied to virtual machines by adding the ‘EVC Mode’ column in the virtual machines view:
Changing the EVC Mode for an Existing DRS Cluster
If you wanted to raise the EVC mode in use, you can do so without incurring downtime for your virtual machines, however the virtual machines will not be able to make use of those additional CPU features until they have been powered off and restarted.
If you wish to lower the EVC mode in an existing cluster, then any virtual machines running at a higher EVC mode than the one you wish to enable will need to be powered off, then powered on again once the mode has been changed.
Useful Links and Resources