vSphere 6.0 HA and Component Protection with vMSC

I had a query recently about changes to vSphere 6.0, especially when it comes to vSphere HA and Component Protection (VMCP) with vMSC, vSphere Metro Storage Cluster. The question is very straight forward – do all the same advanced setting recommendations for PDL and APD apply to vMSC on vSphere 6.0 as they did for vSphere 5.5? Or do we have some new recommendations now around PDL and APD for vMSC with the introduction of VMCP in vSphere 6.0?

I reached out to a few folks about this. I’m not going to describe APD or PDL in this post; they have been covered many times in the past. I’m also not going to cover VMCP in too much detail – my good pal Duncan has already done a great write up on this. In a nutshell, the cool thing about VMCP is that you can have different behaviours on VMs when an APD or PDL condition is detected. Here is where you turn it on in the vSphere HA configuration window:

VMCPWhen this is turned on, the following features are no longer disabled:

enabled-VMCPWhile these are global settings, one can now override these cluster wide responses on a per-VM basis if necessary, in the Add VM Overrides section. Simply add the VM and choose the setting you wish to change:

VM OverrideBut back to the question at hand – what should we do with these settings in a vMSC configuration such as an EMC VPLEX?

The storage vendor documentation should always be consulted for particular guidance. The recommendation from EMC for VPLEX in vSphere 5.0 is to set the following:

  • disk.terminateVMonPDLDefault = true
  • das.maskCleanShutdownEnabled = true

The recommendation from EMC for VPLEX in vSphere 5.5 is to set the following:

  • disk.terminateVMonPDLDefault = default
  • VMkernel.Boot.terminateVMOnPDL = true

The feedback I received on whether we could use the same options in 6.0 was that yes, we could use the same advanced settings. However from a usability perspective, the preferred and recommended method is for folks to start using the new VMCP options and not use the advanced option disk.terminateVMonPDLDefault. You might ask why that is the case? The reasons are as follows:

  • ​VMCP can be set at cluster level (and thus applicable to all hosts in the cluster). Where as the *terminateVMonPDL* advanced option is to be set explicitly for each host in the cluster.
  • VMCP offers per-VM override settings and hence PDL remediation can be set at VM level
  • VMCP settings can be controlled via API/UI instead of an advanced option

Duncan has also written this blog post detailing what these VMCP settings should be set to with vMSC. Duncan also tells me that the vMSC whitepaper will soon be updated for vSphere 6.0.

So there you have it. Yes, you can still use the advanced option, but VMCP, while offering the same functionality, is a simpler and more granular approach.

You can read more about VMCP in the vSphere 6.0 Availability Guide.