Information Technology Reference
In-Depth Information
18.2 Advanced Capacity Planning
Large, high-growth environments such as popular internet services require a different ap-
proach to capacity planning. Standard enterprise-style capacity planning techniques are of-
ten insufficient. The customer base may change rapidly in ways that are hard to predict, re-
quiringdeeperandmorefrequentstatisticalanalysisoftheservicemonitoringdatatodetect
significant changes in usage trends more quickly. This kind of capacity planning requires
deeper technical knowledge. Capacity planners will need to be familiar with concepts such
as QPS, active users, engagement, primary resources, capacity limit, and core drivers. The
techniques described in this section of the topic were covered by YanandKejariwal( 2013 ) ,
whose work inspired this section.
18.2.1 Identifying Your Primary Resources
Each service has one primary resource , such as CPU utilization, memory footprint or
bandwidth, storage footprint or bandwidth, or network bandwidth, that is the dominant re-
source consumed by the service. For example, a service that does a lot of computation is
usually limited by the available CPU resources—that is, it is CPU-bound. Capacity plan-
ning focuses on the primary resource.
Services also have secondary resource needs. For example, a service that is CPU-
boundmay,toalesserextent,usememory,storage,andnetworkbandwidth.Thesecondary
resources are not interesting from a capacity planning point of view, with the current soft-
ware version and hardware models, but one of them may become the primary resource
later as the code or hardware changes. Consequently, these secondary resources should
also be monitored and the usage trends tracked. Detecting a change in which resource
is the primary resource for a given service is done by tracking the constraint ratio
(disk:CPU:memory:network) between the primary and secondary resources. Whenever a
new software version is released or a new hardware model is introduced, this ratio should
be recalculated.
Primaryandsecondaryresourcesarelow-levelresourceunitsthatdrivetheneedfor an-
cillary resources such as server instances, switch ports, load balancers, power, and other
datacenter infrastructure.
The first step in capacity planning is to identify your primary resources, as these are the
resources that you will focus on for capacity planning. You must also define a relationship
between yourprimaryandancillary usage.Whenyourcapacity planningindicates thatyou
need more of your primary resources, you need to be able to determine how much of the
ancillary resources are required as a result. As the hardware that you use changes, these
mappings need to be updated.
Search WWH ::




Custom Search