Elastic DRS or EDRS for short, is an awesome feature of VMware Cloud on AWS (VMC)

Imagine your current on premises data center could automatically scale up and down, based on the workloads / applications demands.

This is very hard to do in an on premises data center, and also costly.

What I will cover today is how EDRS makes auto-scaling so easy and cost effective for any organisation. I’ll also show you how easy it is to configure.

What would infrastructure auto-scaling mean for you?

  1. Sleep easier at night, not having to think about everything breaking
  2. Not having to size (and pay) your data center for peak consumption
  3. Not having to worry about unexpected high utilisation causing downtime or performance impact to your applications, at a very bad time. Think New Years Eve, someones birthday or worse Monday morning first thing…. Who needs that?

This is why EDRS is so good, it can remove all of the above stress from your life.

More details on EDRS can be found on the VMware Doc site, which can be found here.

Elastic DRS uses an algorithm to maintain an optimal number of provisioned hosts to keep cluster utilisation high while maintaining desired CPU, memory, and storage performance.

Elastic DRS monitors the current demand on your SDDC and applies an algorithm to make recommendations to either scale-in or scale-out the cluster. A decision engine responds to a scale-out recommendation by provisioning a new host into the cluster. It responds to a scale-in recommendation by removing the least-utilised host from the cluster.

The above animation shows a nice little overview of what EDRS does.

EDRS monitors the resource utilisation in the cluster, it makes a recommendation to scale out or scale in a cluster and generates an alert. This alert is processed immediately by provisioning a new host or removing a host from the cluster. EDRS also allows for randomness and spikes in utilisation, so it doesn’t just randomly add or remove hosts for a slight peak in utilisation.

The algorithm runs every 5 minutes and uses the following parameters:

  • Minimum and maximum number of hosts the algorithm should scale up or down to.
  • Thresholds for CPU, memory and storage utilization such that host allocation is optimized for cost or performance. These thresholds, which we list on the Select Elastic DRS Policy page, are predefined for each DRS policy type and cannot be altered by user.

How to configure EDRS

  1. The first step is to log into the VMC Console at https://vmc.vmware.com
  2. Select the SDDC that you would like to configure EDRS
  3. If you have more than one cluster in your SDDC, select that cluster then continue to step 4
  4. Select Actions, Edit EDRS settings

We now need to choose which EDRS policy we would like to use, there are four polices to choose from.

Lets take a look at the four polices in some detail.

Default Storage Scale-Out

The default policy for any VMC cluster or SDDC is the Default Storage Scale-Out policy, this policy adds hosts only when storage utilization exceeds the threshold of 75%.

Optimize for Best Performance

This policy adds hosts more quickly and removes hosts more slowly in order to avoid performance slowdowns as demand spikes. It has the following thresholds:

ResourceHigh ThresholdLow Threshold
CPU90% utilization50% utilization
Memory80% utilization50% utilization
Storage70% utilization20% utilization

Optimize for Lowest Cost

This policy adds hosts more slowly and removes hosts more quickly in order to provide baseline performance while keeping host counts to a practical minimum. It has the following thresholds:

ResourceHigh ThresholdLow Threshold
CPU90% utilization60% utilization
Memory80% utilization60% utilization
Storage70% utilization20% utilization

Optimize for Rapid Scale-Out

This policy adds multiple hosts at a time when needed for memory or CPU, and adds hosts incrementally when needed for storage.

This is a great way of auto scaling hosts for environments that need to grow quickly, think Disaster Recovery or Virtual Desktops.

Please note you must manually (or automate) remove these hosts when they are no longer needed. This policy has the following thresholds:

ResourceHigh ThresholdLow Threshold
CPU80% utilization0% utilization (no scale-in)
Memory80% utilization0% utilization (no scale-in)
Storage70% utilization0% utilization (no scale-in)

5. Back to our VMC Console, Select the required EDRS policy and click save

In my environment I have selected Optimize for Rapid scale out, which allows me to scale in increments of 4, 8 ,12 hosts at a time. This is a pretty amazing feature.

6. Go back to the summary view of the VMC cluster or SDDC that you applied the EDRS policy to. You should now see the selected EDRS policy

You are done, you can now live a stress free life with EDRS.