I am often asked by customers, vendors or internal teams to explain CPU capacity planning for large production databases running on VMware vSphere.
In summary there are a few simple best practices to follow for sizing CPU for large production databases:
- Plan for one vCPU per physical CPU core.
- Consider NUMA and ideally size VMs to keep CPU and memory local to a NUMA node.
- Right-size virtual machines. Add vCPUs only when needed.
Generally this leads to a couple of common questions: