Server application loads are rarely consistent, and server capacity planning is the art and science of tracking computing resources and performance over time in order to identify and address potential resource shortages. Capacity planners must ensure that each server has the resources that it needs when it needs them. But capacity planning is a challenging pursuit, especially for virtualized servers. Today's IT administrators need a combination of virtualization-aware tools and sound management practices to handle sudden and pronounced capacity demands that can occur on virtual servers.
Virtualization complicates capacity planning
To appreciate capacity planning issues on virtualized servers, it's important to remember the basic goals of capacity planning. Good capacity planning allows an organization to measure computing resource use over time and make informed decisions about resource availability and allocation to ensure that a server has the resources it needs when those resources are needed. Too many unused resources will just sit idle and waste company capital, and too few resources will hurt application performance and impair the user's experience.
Traditional physical servers made it relatively easy to track resources over time because each server ran a single application and had plenty of spare capacity. Resource use growth was typically slow and predictable.
By comparison, virtualized servers run multiple workloads and make much more extensive use of the physical server's computing resources. It's easy to find servers running at over 80% resource utilization. Multiple workloads means multiple applications demanding resource growth, so changes in resource use can occur faster than on physical servers. In addition, virtualization supports easy and seamless workload migration between physical servers. Moving a virtual machine to another server – especially a server that is already highly consolidated – can easily result in resource shortages and application performance issues.
The underlying reason for capacity planning problems is generally not related to server hardware or virtualization software. Instead, capacity planning problems are usually the result of poor systems management techniques and loose IT or business policies. For example, it's easy for an IT administrator to create a new virtual machine and allocate resources to it, but if that VM is later idled or abandoned by the VM's owner, it continues to run on the server, where it still demands resources and overhead. If business policies prompted the VM's owner or IT staff to remove idle or unneeded VMs in a timely manner, those computing resources could be recovered and re-used, easing the demand for more computing capacity.
Capacity planning management software
Capacity planning relies on software tools to measure and report server resource use over time, make future capacity predictions and upgrade recommendations based on resource usage patterns, and generate alerts and alarms when computing resource shortages demand immediate attention.
There are countless capacity planning tools available for the enterprise. Some are dedicated products that specialize in virtualization-aware capacity planning, such as Solar Winds Virtualization Manager. Capacity planning is also frequently available as part of management suites, such as VMware Capacity Planner as part of vCenter Operations Manager, or capacity planning as a part of up.time Enterprise Edition software. Regardless of your choice, a capacity planning tool must be virtualization-aware and compatible with the hypervisors deployed across the business.
However, it's important to remember that tools are only as good as the IT staff and overall business environment where those tools are deployed. The most powerful and expensive capacity planning software is useless if the IT staff doesn't utilize the information or adhere to established business policies. For example, capacity planning in a highly consolidated environment must often include lifecycle management and workload balancing practices. Otherwise, unneeded VMs will continue to demand resources without doing any meaningful business work, and migrations can become impossible when overburdened servers have inadequate resources left to take on failovers.
The problem of poor capacity planning
Poor capacity planning can manifest in a variety of ways, but the effect is usually subtle. One common issue is simple neglect, where IT professionals fail to use capacity planning tools available to the business. When the IT staff doesn't pay attention to growing resource demands, workloads can experience resource shortages that result in performance degradation and poor user experiences. In extreme cases, workloads can become unstable or crash. A routine assessment of capacity planning data could have revealed the growth in resource use and allowed IT administrators to upgrade resources or rebalance workloads to prevent performance problems.
Migration problems are another telltale sign of poor capacity planning. For example, administrators may have adjusted resource provisioning to accommodate increased resource use for local VMs, but left inadequate resources for VM failover or migration from other servers. This typically manifests as migration failures to the resource-starved servers, which could easily have been upgraded or rebalanced to avoid migration problems if capacity planning information had been used properly.
A third common problem is the lack of VM lifecycle management. It's easy to create a new VM, but every VM requires computing resources, whether it's doing any useful business work or not. VMs that have outlived their usefulness can be decommissioned to recover their resources, but this only works when IT administrators pay attention to the VM and know when a VM is still needed. Proper lifecycle management adds processes for justifying a new VM and establishes policies for VM review and decommissioning. Otherwise, VMs are simply forgotten, wasting resources and compelling organizations to upgrade.
Capacity planning is a critical role for today's IT administrator, allowing the business to track computing resources and ensure that every workload can access adequate resources over time to maintain VM performance and avoid workload disruptions. Capacity planning requires virtualization-aware tools, but those tools must be used regularly and in concert with sound business practices to yield the best value to an organization. Otherwise, workloads are placed at risk and the business will inevitably grapple with poor workload performance, disgruntled users, potential downtime, data loss and wasted capital.