VMware Cloud Community
OrkanNamedMork
Contributor
Contributor

CPU and RAM Over Commitment - General Strategies

Hey All,

I need to come up with some general guidelines for VMware Cluster resource commitment levels. I have a team dedicated to VM builds that meets once a week. I want to provide them a report they can use to determine cluster commitment levels are nearing the need for growth. I'm thinking to define specific CPU and RAM commitment maximums by cluster. When these are reached we would do no further builds to the cluster until it's grown or resources freed up.

What commitment ratios are you all using in general? vCPU to pCPU ratio are you using (4:1, 1:1)? What about RAM?

I'm also considering break up clusters by vCPU count of the VMs and have strict ratios for each; =<4 vCPU on a 4:1 cluster, 5-8 vCPU on a 2:1 and >8 on a 1:1. We’d have to define RAM levels as well.

Thoughts on this? How have some of you approached this?

1 Reply
roconnor
Enthusiast
Enthusiast

Depends..

In regards to vCPU to pCPU ratios have a look at Scott Lowe's Whitepaper "Best Practices for Oversubscription of CPU, Memory and Storage in vSphere Virtual Environments"

he comments

"…for every additional workload beyond a 1:1 vCPU to pCPU ratio, the vSphere hypervisor needs to invoke processor scheduling in order to distribute processor time to virtual machines … experts suggest that vSphere “real world” numbers are in the 10:1 to 15:1 range. Still others indicate that VMware itself has a real world recommended ratio range of 6:1 to 8:1."


The whitepaper finds that

1:1 to 3:1 is no problem

3:1 to 5:1 may begin to cause performance degradation

6:1 or greater is often going to cause a problem


Also have a look at Find vCPU to Physical CPU Ratio with PowerCLI | vNoob, The script will give you the ratio per host, but best to change threads to cores, as hyper threading is generally best applied but ignored.

$hostthreads=$vmhost.extensiondata.hardware.cpuinfo.numcputhreads

$hostthreads=$vmhost.extensiondata.hardware.cpuinfo.NumCpuCores


hope that helps

Reply
0 Kudos