vSphere 6.0 Update 2 has launched and with it comes a very simple change with the way that VMs and Templates are evacuated from hosts that enter Maintenance Mode. In all prior versions, when a host enters Maintenance Mode, DRS will evacuate the host by placing all the running VMs, powered off VMs, and the templates on other hosts within the cluster.  However, under certain conditions the order of operations produces very different results.  For math geeks, (4+2)2 ≠ 4+2×2. 

Starting with vSphere 6.0 Update 2, when a host enters Maintenance Mode the host will evacuate all the powered off VMs and templates first, and then proceed to vMotion all the powered on VMs.  This is probably not something that most will consider a big deal, but for some customers this small change will have a big impact.

Picture a situation where external services are provisioning VMs that use templates and those templates are stored on the host entering Maintenance Mode.  While entering Maintenance Mode no operations can be performed against the host, including clone operations.  In environments with dense consolidation ratios, the time it takes to evacuate the powered on VMs can be several minutes.  That’s several minutes before a powered off VM or template is moved to a host where it can be cloned.  If the provisioning engine were to attempt to clone from a template on a host entering Maintenance Mode, the clone operation would fail. This becomes particularly apparent in vCloud Director and vRealize Automation environments. Failure to provision new instances impacts the reliability of the service being provided.

Maintenance Mode Order

There have already been several improvements vSphere 6.0 in regard to reducing host evacuation times, especially for powered off VMs.  Now that they are done first, the opportunity for this type of error is reduced significantly, which results in a higher quality of service provided to your consumers.