Server virtualisation has given us the flexibility to keep up with the ever changing demands placed on the business operations. A phone call asking for a new server to be provisioned the next day would have been almost impossible in the physical world but not in virtual, as you can provision a new virtual server under 5 minutes! This flexibility often leads to capacity issues down the road as demand grows faster the the available infrastructure. So the topic today is how to start a capacity plan as part of the overall design.
Any capacity plan, will evaluate the four ingredients used in capacity planning: CPU, RAM, Disk, Network. These can be manipulated depending on the needs.
A simple example: Lets say we have a physical machine with the following specs:
- CPU: 3,000MHz per core
- RAM: 4GB
- Disk: 500GB
- Network: 2 1GbE NICs
Now the question is when virtualise this physical server, will the new VM need to match the above specs? If the answer was yes, then there would no need for virtualisation! The average utulization for physical server is usually very low.
Using above example lets say the actual utilization rates were:
- Peak CPU utilization: 10%
- Peak RAM utilization: 25%
- Disk Capacity utilization: 30%
- Network utulization: 5%
The above results mean the new VM only needs the following specs to match the current physical server:
- CPU: 3,000MHz x 10% = 300MHz
- RAM: 4GB x 25% = 1GB (1.5GB needed to start VM)
- Disk: 500GB x 30% = 150GB
- Network: 1GbE NICs 5% is a very low usage but we will likely go with 2 for redundancy)
Collecting data from physical servers is an integral part of the capacity planning phase.
I’ll cover the other parts of capacity planning in greater detail as time allows.
Thanks for reading.