Vsphere Ha Slot Size

  1. Vsphere Ha Slot Size Chart
  2. Vsphere Ha Slot Size Chart
  3. Vsphere Ha Slot Size Calculation
  4. Vsphere 6.5 Ha Slot Size

Recently I have been asked by my customers and also blog readers πŸ™‚ about VMware HA Admission Control. As this topic is often misunderstood, this post covers some information about this important feature of VMware vSphere HA.

Slot size is comprised of two components, CPU and memory. VSphere HA calculates the CPU component by obtaining the CPU reservation of each powered-on virtual machine and selecting the largest value. If you have not specified a CPU reservation for a virtual machine, it is assigned a default value of 32MHz. If VM1 has 2GHZ and 1024MB reserved and VM2 has 1GHZ and 2048MB reserved the slot size for memory will be 2048MB+memory overhead and the slot size for CPU will be 2GHZ. Basic design principle: Be really careful with reservations, if there’s no need to have them on a per VM basis don’t configure them.

In this post you will find answers for the following questions:

  1. What is Admission Control?
  2. What is and how to check slote size?
  3. When and which Admission Control Policy should I use? How to solve Insufficient Resources for HA failover?

Admission control is used to ensure that sufficient resources are available in a cluster to provide failover protection and to ensure that virtual machine resource reservations are respected. There are three Admission control policies:

  1. Percentage of Cluster Resources Reserved Admission Control Policy
  2. Host Failures Cluster Tolerates Admission Control Policy

It's very important to mention that Percentage of Cluster Resources Reserved and Host Failures Cluster Tolerates are based on CPU and memory reservations at Virtual Machine (VM) level (it ignores resource pools reservation settings). But only? Nope, also overhead reservation is taken into considerations. So the formula is:

Vsphere Ha Slot Size

Configured Reservation for VM + Overhead Reservation

Overhead Reservation depends on VM configuration and usage (for example: RAM, devices etc). It means that for a large VMs with not configured reservation (equals 0), there is a noticeable Overhead Reservation!

Specify Failover Hosts

The easiest option (it does not mean the best πŸ™‚ ) of Admission Control. vSphere HA attempts to restart its virtual machines on one of the specified failover hosts.

Host Failures Cluster Tolerates

With the Host Failures Cluster Tolerates admission control policy, vSphere HA uses slot to ensure that a specified number of hosts can fail and sufficient resources remain in the cluster to fail over all the virtual machines from those hosts.

Slot is a logical representation of CPU and memory. Depending on vSphere version, the default slot size is 0 MB of RAM and 256 MHz CPU (4.1 and earlier) or 0 MB of RAM and 32Mhz (5.0 and later).

The admission control is performed by VMware HA with the following steps:

  1. Calculates the slot size (based on powered-on VMs and selections the largest value).
  2. Determines how many slots each host in the cluster can hold.
  3. Determines the Current Failover Capacity of the cluster.
  4. Determines whether the Current Failover Capacity is less than the Configured Failover Capacity.

So let's make an example. As shown on the above figure, we have three ESXi hosts each with a different amount of available CPU and memory resources:

  • ESXi1 - 9GB of RAM and 9Ghz of CPU
  • ESXi2 - 6GB of RAM and 9Ghz of CPU
  • ESXi3 - 6GB of RAM and 6Ghz of CPU

There are five powered-on VMs:

  • VM1 and VM2 - 1GB of RAM and 2GHz of CPU
  • VM3 - 2GB of RAM and 1GHz of CPU
  • VM4 and VM5 - 1GB of RAM and 1GHz of CPU

As mentioned earlier, the slot size is the largest value so in this example: the slot size is 2GHz of CPU and 2GB of memory.

So how many slots are available per hosts?

  • ESXi1 - 3 slots
  • ESXi2 - 3 slots
  • ESXi3 - 4 slots

If ESXi3 host fails, we have available 6 slots (3+3) so sufficient resources are available in a cluster to provide failover protection (one slot available yet to create).

Since vSphere 5.x, it is possible to configure the default slot size via Web Client:

If you use Standard Client or vSphere 4.x, you need to change some advanced parameters such as das.slotmeminmb and das.slotcpuinmhz. For more information please follow VMware KB here.

Percentage of Cluster Resources Reserved

The Percentage of Cluster Resources Reserved works different - vSphere HA ensures that a specified percentage of aggregate CPU and memory is reserved for failover.

The admission control is performed by VMware HA with the following steps:

  1. Calculates the total resource requirement for all powered on machines in the cluster.
  2. Calculates the total host resources available for the virtual machines.
  3. Calculates the current CPU and Memory failover capacity for the cluster (specified by administrator).
  4. Determines if either the current CPU failover or current memory failover is less than the corresponding failover capacity.

As shown on the above figure, there are five VMs and three ESXi hosts and the total VMs requirements for the powered-on VMs is 6GB of RAM and 7GHz of CPU. To calculate the Current CPU Failover Capacity we use the following formula:

(Total host resources - Total VMs requirements) / Total host resources

so CPU: (24-7) / 24 = 70% and Memory: (21-6) / 21 = 71%

If you specify 33% CPU and Memory Failover Capacity, you have around 35% of resource available for new VMs yet πŸ™‚

Insufficient Resources for HA failover

Sometimes you can get the following error during configuring vSphere HA with Admission Control enabled:

Insufficient Resources for HA failover

Vsphere

In most of all cases, the above error can happen when you configure Host Failures Cluster Tolerates Admission Control policy. Why? For example you have a large VM (with large reservation so slot size is also large) and when vSphere HA calculates powered on VMs and available slots on all ESXi hosts, it can be a situation when sufficient resources are not available in a cluster to provide failover protection. To solve this problem you should revise the VMs reservations or reconfigure Admission Control to use the Percentage of Cluster Resources Reserved policy.

When and which Admission Control Policy should I use?

Vsphere ha slot size chart

Generally I use the Percentage of Cluster Resources Reserved policy because it's much simpler and more flexible than Host Failures Cluster Tolerates Admission Control policy. Of course, you have to remember that when you add or remove ESXi hosts from your cluster, you need to reconfigure percentages. Also if you have an unbalanced vSphere Cluster you should use the Percentage of Cluster Resources Reserved policy.

Conclusion

Vsphere Ha Slot Size Chart

I hope that Admission Control is understandable for you now πŸ™‚ For more information (much deeper) please follow a fantastic book written by Duncan Epping: VMware vSphere 5.1 Clustering Deepdive πŸ™‚

The Advanced Runtime Info box might display a smaller number of available slots in the cluster than you expect.

When you select the Host Failures Cluster Tolerates admission control policy, view the Advanced Runtime Info pane that appears in the vSphere HA section of the cluster's Monitor tab in the vSphere Web Client. This pane displays information about the cluster, including the number of slots available to power on additional virtual machines in the cluster. This number might be smaller than expected under certain conditions.

Vsphere Ha Slot Size Chart

Cause

Vsphere Ha Slot Size Calculation

Slot size is calculated using the largest reservations plus the memory overhead of any powered on virtual machines in the cluster. However, vSphere HA admission control considers only the resources on a host that are available for virtual machines. This amount is less than the total amount of physical resources on the host, because there is some overhead.

Vsphere 6.5 Ha Slot Size

Reduce the virtual machine reservations if possible, use vSphere HA advanced options to reduce the slot size, or use a different admission control policy.