Best Practice #8: Resource Optimization
A reservation setting specifies the
A limit setting specifies the
A shares setting specifies the
minimum acceptable performance
maximum acceptable performance
entitlement during resource contention
Shares, on the other hand, are a different animal. First, shares only apply during times of contention. That is, you can give a machine 15M shares, and it won't run any faster—this is a common misunderstanding.
Preface: I don't like the way VMware writes this: shares are not indicative of the "importance" of a VM, either to the host or to the virtual administrator; they should just delete that sentence. What shares do is specific the entitlement of a VM during time of resource contention (which thankfully it clarifies).
Shares specify the relative importance of a virtual machine (or resource pool). If a virtual machine has twice as many shares of a resource as another virtual machine, it is entitled to consume twice as much of that resource when these two virtual machines are competing for resources. — vSphere 5.5 Resource Management Guide
A High setting equals
A Normal setting equals
A Low setting equals
2000 shares per vCPU
1000 shares per vCPU
500 shares per vCPU
20 shares per MB of vRAM
10 shares per MB of vRAM
5 shares per MB of vRAM
An easy—albeit not technically correct, but you will get the point—way of thinking about it is this: if all of my resources are fully committed, then there is contention. Remember, shares only apply when resources are constrained. So, assuming that everything is 100% committed, how many CPU cycles will be given to each VM based on its shares setting? That's what we see here:
Don't get me wrong, though: shares are great. In fact, one of the great benefits of shares is that it persists well across hardware and hardware upgrades.
If you use Shares, and you upgrade the host, for example, each virtual machine
stays at the same priority (keeps the same number of shares) even though each share represents a larger amount of memory, CPU, or storage I/O resources.— vSphere 5.5 Resource Management Guide
So make sure you check your slot size for your cluster if you configure reservations. This is a great reason to use the Web Client and upgrade to vSphere 5.5, because the cluster dashboard is more helpful: navigate to the Cluster | Monitor | vSphere HA | Summary and scroll down to Advanced Runtime Info to see the Slot size and current cluster utilization.