Chapter 18. Capacity Management

Capacity management is the process of maximizing system output based on customer demand and business value while minimizing the costs to the humans supporting the systems. Historically, sysadmins focused on tuning system utilization to maintain good latency for real-time access systems or to reduce job runtime on batch systems. In contemporary environments, sysadmins may focus on scaling resource pools in self-maintained data centers, applications in cloud services, or both for hybrid environments.

In this chapter, I define capacity and capacity management and provide a framework to help you understand your capacity management planning process. This will help you prioritize the different engineering tasks involved in capacity management.

What Is Capacity?

Before I define capacity management, I need to talk about capacity. Capacity goes beyond just the absolute value of CPU, disk, or memory. Defining capacity also includes the measurable quantity of output producible while maintaining standards of quality and performance.

Capacity is not an exact measurement in systems but rather an approximation based on the information that you have. Over time, accumulated experience with how your customers use your system will allow you to fine-tune the capacity indicators you use to understand your system’s capacity.

There are different measurements of capacity, depending on the specific metrics that matter to the system you are supporting. And there are a ...

Get Modern System Administration now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.