Vsphere Ha Slot Size Calculation
- Re: URGENT:::HA slot size calculation: Does no. Of VCPU impact the slot size calculation? Troy Clavell Nov 11, 2010 10:53 AM ( in response to swamy ) from my under the vCPU is listed as the VM(s) with the highest vCPU count.
- If no VM level reservation is configured, Minimum CPU size of 256 MHZ and memory size of 0 MB + VM memory overhead will be considered as CPU and Memory slot size. Calculation for Number of Slots in cluster:-Once we got the Slot size for memory and CPU by the above method, Use the below calculation.
For a long time I have been sizing vSphere clusters for customers and I am regularly asked how I work out the overcommitment ratio and calculate the suitable percentage of cluster resources to reserve for HA.
How does HA calculate how many slots are available per host? Of course we need to know what the slot size for memory and CPU is first. Then we divide the total available CPU resources of a host by the CPU slot size and the total available Memory Resources of a host by the memory slot size. This leaves us with a slot size for both memory and CPU.
This calculator is focused on Virtual Server clusters, for VDI solutions I recommend the VDI Calculator by @andreleibovici.
This calculator allows this to be done quickly and easily while giving advice as to the availability level recommended for the cluster based on its size.
All you need to do is enter the follow details into the Yellow fields.
1. The Number of ESXi hosts
2. The total CPU sockets per host
3. Ghz per Core
4. Physical Cores per CPU Socket (Not Hyper-threads)
5. Total RAM per host
6. Total number of VMs
7. The Desired Availability Level (N+x)
Next enter the total number of vCPUs and vRAM assigned (or expected to be) assigned to VMs in the cluster.
The calculator will then output the following:
1. Total Cluster Resources
This is the total Physical Cores and physical RAM in the cluster.
2. The total Cluster Ghz
Self Explanatory
3. The percentage of Cluster Resources reserved for HA
This is calculated from the availability level specified.
Note: The recommended Availability level is calculator and displayed on the same line as the “Desired Availability Level”.
4. The total available Cluster Resources
This is the total cluster resources, minus the percentage of cluster resources reserved for HA. Note: This is not how vSphere HA calculates available cluster resources. This is a method I use which is conservative and ensures performance does not degrade in the event of the configured availability level.
Finally, it calculates
5. The Overcommitment Ratio for CPU and RAM
This is represented as a ratio, so a result of “1” means no overcommitment.
A result of “4” would be a 4:1 overcommitment or 400%.
The tool then shows a “Rule of Thumb” for overcommitment levels of the vSphere cluster.
Simply modify the number of hosts, Cores per Socket and RAM per host until you have the desired overcommitment levels, then you can Print the sizing chart for your design.
Posted on 07 Feb 2011 by Ray Heffer
VMware HA (High Availability) admission control is something I wanted to understand better so I started making notes gathered from various sources on the subject, and in particular the way slot sizes are calculated. Duncan Epping’s Yellow Bricks site already covers HA very well and I bow down to his knowledge on the subject, well worth checking out. Also I would strongly recommend VMware vSphere 4.1 HA and DRS Technical Deepdive by Duncan Epping and Frank Denneman which I purchased at Comcol.nl which they shipped to me in the UK in just two days.
That said, I thought I would share my own views and notes I have taken on the subject. The vSphere Availability guide states “A slot is a logical representation of memory and CPU resources. By default, it is sized to satisfy the requirements for any powered-on virtual machine in the cluster.” - In simple terms a slot can be consumed by a single virtual machine, but a virtual machine may consume more than one slot.
When you create an HA enabled cluster, the default admission control policy is set to “Host failures cluster tolerates”. It is important to understand how this works to avoid any ‘schoolboy errors’ or mis-calculations in your design.
Rule # 1: Remember this, “The hostess with the mostess” - the ESX host with the most available slots will be taken out of the equation when calculating HA admission control. If your ESX cluster has 6 hosts with 16GB memory, and one host with 32GB memory then this will be excluded from the calculation.
Calculating the Slot Size (memory and CPU)
Firstly, do any virtual machines have a reservation on the CPU or memory? If so, then the virtual machine with the largest reservation on a given host is taken into account. For virtual machines that have no reservations, the slot size is calculated with the CPU at 256Mhz and memory at the VM overhead (E.g. 123.73MB - See page 28 of vsp_41_resource_mgmt.pdf). Repeat this for the remaining virtual machines on the host (see flowchart).
Flowchart Example
Lets say that we have 10 virtual machines (1 vCPU each) and two of them have reservations as follows:
VM 1 - Has a CPU reservation of 700Mhz, and no memory reservation.VM 2 - Has a CPU reservation 500Mhz and memory reservation of 1024Mb.VM 3 to 10 - No reservations on memory or CPU. (keeping this example simple)
The slot size calculation will take the largest reservation for memory and CPU. In this example the result would be:
CPU: 700MhzMemory: 1147.73MB (1024Mb plus overhead)
Rule # 2: Remember that the biggest reservation will be used for memory and CPU. If no reservations are set, then it will use 256Mhz for the CPU and 0MB + virtual machine overhead for the memory.
Calculating the Number of Slots Available
Vsphere Ha Slot Size Calculation Formula
Now we have the slot size for our ESX host, the next step is to work out how many slots we have. In order to calculate this, simply divide the CPU and memory available on the host by CPU and memory slot size. For example, using our figures above (700Mhz and 1144.73Mb), say our host has 5934 Mhz CPU available and 7126MB memory, our slot sizes will be 8 for the CPU and 6 for the memory.
5934 /700 = 87126 / 1147.73 = 6
Result: Take the smaller of the two, and our ESX host has 6 available slots. Do this for each host in the cluster and you have the total number of slots available in your cluster (minus the host with the most slots).
Rule # 3: It will always use the smallest number of slots from CPU or memory.
What Does This All Mean?
Now we understand how slots are calculated on each of our ESX hosts, it gives us a better insight when determining how your HA will be configured. Here is a simple check-list of questions you should ask yourself:
Vsphere Ha Slot Size Calculation Chart
- Do any of my virtual machines have CPU or memory reservations set?
- Are all of my ESX hosts of the same specification, or do I have one or two with significantly more CPU or RAM?
- How many host failures do I need to tolerate?
Vsphere Ha Slot Size Calculation Calculator
Some possible solutions:
Vsphere Ha Slot Size Calculation Calculator
Vsphere Ha Slot Size Calculations
- Don’t use virtual machine reservations unless absolutely necessary, instead use resource pools with reservations as these are not used in the slot size calculation.
- Keep the hosts in your cluster of similar specification (same CPU and memory) otherwise it could be eliminated when calculating the number of slots to use.
- Do you need an HA policy based on a number of host failures? Use ‘Percentage of cluster resources reserved as failover spare capacity’.