Tibmeister
Expert
Expert

Enabling EVC without Downtime

Not so long ago, there used to be a "hack" that would allow one to enable EVC mode on a cluster, with running VMs, without having to shutdown the VM.  IIRC, it's been about 3 years since I've last done this, one would create a cluster, set the EVC mode, remove an existing host from vCenter, then attach that same host, with running VMs, to the new cluster and all is well.  

With 6.7 U3, this method no longer seems to work.  Does anyone have an updated method to do this or are we truly stuck having to power off all VMs?

0 Kudos
7 Replies

There is no possible way of enabling with powered on vms.

 

What you can do, to minimize the impact of powering off all at the same time, is "enable evc" one vm by one. (So you can have a big working window to do this and power off one by one without a huge impact) and then, once all VMs that are runing have this configuration you can enable EVC at a cluster LVL. 


https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.vm_admin.doc/GUID-A1C095EF-1B0F-4C1...

 

 

EDIT= this is the link for 6.7 https://docs.vmware.com/en/VMware-vSphere/6.7/com.vmware.vsphere.vm_admin.doc/GUID-A1C095EF-1B0F-4C1...

-------------------------------------------------------------------
Triple VCIX (CMA-NV-DCV) | vExpert | MCSE | CCNA
0 Kudos
Tibmeister
Expert
Expert

That's a lot of work for a large number of VMs.  It appears the other trick, of creating a second cluster with EVC enabled, then moving a empty host over, then vMotioning VMs over seems to still work.  Gonna give that a shot, otherwise, it's on to powering off VMs like crazy.

0 Kudos

Yes that also could work but has its limitations depending on capacity, techonologies implemented, etc etc.

 

Good luck!

-------------------------------------------------------------------
Triple VCIX (CMA-NV-DCV) | vExpert | MCSE | CCNA
0 Kudos

that will not work.

every vm that uses more cpu features in the non-evc cluster cant be moved to the evc-cluster.

but you can check with powercli which of the vm is preventing the evc-mode:

$clusters=get-cluster
foreach ($cl in $clusters) {
get-cluster $cl | Get-VM | Select Name,Powerstate,@{Name='VM_EVC_Mode';Expression={$_.ExtensionData.Runtime.MinRequiredEVCModeKey}} | ft
}

each poweredon vm that shows no minrequiredevcmodekey blocks you to enable evc.

0 Kudos
Tibmeister
Expert
Expert

Thankfully all the VMs currently are running at Haswell level in the non-EVC cluster, so setting the swing cluster to Hasswell seems to work, at least for my big cluster.  For the small clusters, it's only half-dozen VMs so easy to deal with manually offhours, will probably set a script to set the per-VM EVC mode during the monthly patch window, makes life easy that way.

0 Kudos
Tibmeister
Expert
Expert

What really cracks me up is when you have hosts that all would only support Hasswell at the highest, have VMs running on them that are reporting using features from Skylake EVC mode.

0 Kudos

i can only verify against a cluster that is skylake-compatible. the vm reports running with skylake and broadwell - but the broadwell vm are not the problem.

if i try to enable skylake evc 2 hosts are mentioned with vm not compatible. if i move the vm without reported evcmode to another host then the new host is mentioned

0 Kudos