how to do capacity planning - team quest

Upload: paradescartar

Post on 14-Apr-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    1/18

    How to Do Capacity Planning

    It is very common or an IT organization to manage system perormance in a reactionary ashion,analyzing and correcting perormance problems as users report them. When problems occur,hopeully system administrators have tools necessary to quickly analyze and remedy the situation.In a perect world, administrators prepare in advance in order to avoid perormance bottlenecksaltogether, using capacity planning tools to predict in advance how servers should be conguredto adequately handle uture workloads.

    The goal o capacity planning is to provide satisactory service levels to users in a cost-eectivemanner. This paper describes the undamental steps or perorming capacity planning. Real lieexamples are provided using TeamQuest Perormance Sotware.

    WHITE PA

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    2/18

    Three Steps or Capacity Planning

    In this paper we will illustrate three basic steps or capacityplanning:

    Determine Service Level RequirementsThe rst step in the capacity planning process is to categorizethe work done by systems and to quantiy users expectationsor how that work gets done.

    Analyze Current CapacityNext, the current capacity o the system must be analyzed todetermine how it is meeting the needs o the users.

    Planning or the FutureFinally, using orecasts o uture business activity, uture systemrequirements are determined. Implementing the requiredchanges in system conguration will ensure that sucientcapacity will be available to maintain service levels, even ascircumstances change in the uture.

    Determine Service Level Requirements

    The overall process o establishing service level requirements rstdemands an understanding o workloads. Additionally, service

    levels are really just one o two major inputs to the capacity planningprocess. You also need to know something about orecasted utureprocessing requirements. Thereore, we have organized this sectionas ollows:

    First, we explain how you can view system perormance inbusiness terms rather than technical ones, using workloads.

    Next, we begin an example, showing workloads on a systemrunning a back-end Oracle database.

    Beore setting service levels, you need to determine what unityou will use to measure the incoming work.

    Finally, you establish service level requirements, the promisedlevel o perormance that will be provided by the IT organization.

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    2/18 How to Do Capacity Planning

    Implementing therequired changes insystem conguration willensure that sucient

    capacity will be availableto maintain service levels,even as circumstanceschange in the uture.

    WHITE PA

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    3/18

    Workloads ExplainedFrom a capacity planning perspective, a computer system processesworkloads (which supply the demand) and delivers service tousers.

    During the rst step in the capacity planning process, these

    workloads must be identied and a denition o satisactory servicemust be created.

    A workload is a logical classication o work perormed on a computersystem. I you consider all the work perormed on your systems as apie, a workload can be thought o as some piece o that pie.

    who is doing the work(particular user or department)

    what type o work is being done(order entry, nancial reporting)

    how the work is being done(online inquiries, batch database backups)

    It is useul to analyze the work done on systems in terms thatmake sense rom a business perspective, using business-relevantworkload denitions. For example, i you analyze perormance basedon workloads corresponding to business departments, then you canestablish service level requirements or each o those departments.

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subsc

    3/18 How to Do Capacity Planning

    It is useul to analyzethe work done onsystems in terms thatmake sense rom abusiness perspective,

    using business-relevantworkload denitions.

    WHITE PA

    Figure 2

    Workloads By Department

    Figure 1Workloads and Service

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    4/18

    Business-relevant workloads are also useul when it comes time toplan or the uture. It is much easier to project uture work when itis expressed in terms that make business sense. For example, it ismuch easier to separately predict the uture demands o the humanresources department and the accounts payable department on

    a consolidated server than it is to predict the overall increase intransactions or that server.

    An Example Using WorkloadsTeamQuest View chart below shows 24 hours (cropped to t thepage) o CPU utilization on an IBM F50 PowerPC system. The chart isuseul, but it provides a birds eye view o perormance, at best.

    In Figure 4, below, the Process Table chart o TeamQuest Viewreveals that during the same 24 hour period, 10,642 individualprocesses ran on this system. All o the utilization inormation orall o those processes was displayed together in our CPU utilizationchart. Wouldnt it be nice i we could show a similar chart, but displayutilization based on the major unctions being perormed on this

    system? Using TeamQuest Perormance Sotware, we can do justthat, by going through a process called workload characterization.

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    4/18 How to Do Capacity Planning

    It is much easier to

    project uture work whenit is expressed in termsthat make businesssense.

    WHITE PA

    Figure 3CPU Utilization

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    5/18

    We will leave the detailed instructions or perorming workloadcharacterization to another paper, or you can reer to the TeamQuestPerormance Sotware documentation. In a nutshell, workloadcharacterization requires you to tell TeamQuest PerormanceFramework how to determine what resource utilization goes withwhich workload. This is done on a per process level, using selectioncriteria to tell the TeamQuest Perormance Framework how todetermine which processes belong to which workloads.

    Figure 5, below, shows a list o workloads that have been characterizedso that the work o each o the 10,642 processes is attributed to oneo seven workloads. These workloads are dened according to thetype o work being done on the system.

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    5/18 How to Do Capacity Planning WHITE PA

    Figure 5Workload Defnitions

    Figure 4Process Table

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    6/18

    I you look careully you will see six explicitly dened workloads inFigure 5, but we said there were seven. The reason is that there isalways an OTHER workload in addition to the explicitly denedworkloads. Any resource utilization that does not match thecharacterization or any o the explicitly dened workloads becomes

    associated with OTHER. This ensures that no perormance dataalls through the cracks simply because it didnt match any o thedened workloads.

    In Figure 6, below, pink bars show utilization that did not matchthe characterization criteria or any o our dene workloads. Thereis little or no pink in the chart, demonstrating that we have done agood job o explicitly characterizing most o the work done on thisserver.

    All we did was dene some workloads based on the type o workbeing perormed on this server, but notice how much more useulthe inormation is that is provided in our new chart. Workloads canbe very powerul.

    Determine the Unit o Work

    For capacity planning purposes it is useul to associate a unit owork with a workload. This is a measurable quantity o work done, asopposed to the amount o system resources required to accomplishthat work.

    To understand the dierence, consider measuring the work done ata ast ood restaurant. When deciding on the unit o work, you mightconsider counting the number o customers served, the weight o

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subsc

    6/18 How to Do Capacity Planning

    Any resource utilization

    that does not match thecharacterization or anyo the explicitly denedworkloads becomesassociated with OTHER.

    WHITE PA

    Figure 6CPU Utilization by Workload

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    7/18

    the ood served, the number o sandwiches served, or the moneytaken in or the ood served. This is as opposed to the resourcesused to accomplish the work, i.e. the amount o French ries, rawhamburgers or pickle slices used to produce the ood served tocustomers.

    When talking about IT perormance, instead o French ries, rawhamburger or pickle slices, we accomplish work using resources suchas disk, I/O channels, CPUs and network connections. Measuringthe utilization o these resources is important or capacity planning,but not relevant or determining the amount o work done or the unito work. Instead, or an online workload, the unit o work may be atransaction. For an interactive or batch workload, the unit o workmay be a process.

    The examples given in this paper use a server running an appointment

    scheduling application process, so it seems logical to use a calendarrequest as the unit o work. A calendar request results in an instanceo an appointment process being executed.

    Establish Service LevelsThe next step now is to establish a service level agreement. A servicelevel agreement is an agreement between the service provider andservice consumer that denes acceptable service. The service levelagreement is oten dened rom the users perspective, typically interms o response time or throughput. Using workloads oten aids

    in the process o developing service level agreements, becauseworkloads can be used to measure system perormance in ways thatmakes sense to clients/users.

    In the case o our appointment scheduling application, we mightestablish service level requirements regarding the number orequests that should be processed within a given period o time, orwe might require that each request be processed within a certaintime limit. These possibilities are analogous to a ast ood restaurantrequiring that a certain number o customers should be serviced perhour during the lunch rush, or that each customer should have to

    wait no longer than three minutes to have his or her order lled.

    Ideally, service level requirements are ultimately determined bybusiness requirements. Frequently, however, they are based on pastexperience. Its better to set service level requirements to ensure thatyou will accomplish your business objectives, but not surprisinglypeople requently resort to setting service level requirements like,provide a response time at least as good as is currently experienced,

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    7/18 How to Do Capacity Planning

    For an interactive orbatch workload, theunit o work may be aprocess.

    Using workloads otenaids in the process odeveloping service levelagreements, becauseworkloads can be usedto measure systemperormance in ways thatmakes sense to clients/

    users.

    WHITE PA

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    8/18

    even ater we ramp up our business. As long as you know how muchthe business will ramp up, this sort o service level requirementcan work.

    I you want to base your service level requirements on present actual

    service levels, then you may want to analyze your current capacitybeore setting your service levels.

    Analyze Current Capacity

    There are several steps that should be perormed during the analysiso capacity measurement data.

    First, compare the measurements o any items reerenced inservice level agreements with their objectives. This provides the

    basic indication o whether the system has adequate capacity.

    Next, check the usage o the various resources o the system(CPU, memory, and I/O devices). This analysis identies highlyused resources that may prove problematic now or in the uture.

    Look at the resource utilization or each workload. Ascertainwhich workloads are the major users o each resource. Thishelps narrow your attention to only the workloads that aremaking the greatest demands on system resources.

    Determine where each workload is spending its time byanalyzing the components o response time, allowing you todetermine which system resources are responsible or thegreatest portion o the response time or each workload.

    Measure Service Levels and Compare to ObjectivesTeamQuest Model is a tool that can help us check measured servicelevels against objectives. For example, ater building a model o ourexample system or a three-hour window, 7:00 AM - 10:00 AM, thedisplay below (Figure 7) shows the response time and throughput o

    the seven workloads that were active during this time.

    By looking at the top line o the table, you can tell that the modelhas been successully calibrated or our example system, becausethe total measured AR% and Modeled AR% are equal. AR standsor Active Resource. An active resource is a resource that is made100% available once it has been allocated to a waiting process. Inthis case, the active resource is CPU.

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    8/18 How to Do Capacity Planning

    I you want to base yourservice level requirementson present actual servicelevels, then you may wantto analyze your currentcapacity beore settingyour service levels.

    WHITE PA

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    9/18

    Because no changes have been made in the system conguration,

    modeled response time and throughput or each workload shouldclosely match reality. In our example, the response time means theamount o time required to process a unit o work, which in the caseo our application, is an appointment request process. So this reportprovides us with an appointment request average response time oreach o our workloads that we could compare with desired servicelevels.

    Measure Overall Resource UsageIt is also important to take a look at each resource within your systems

    to see i any o them are saturated. I you nd a resource that isrunning at 100% utilization, then any workloads using that resourceare likely to have poor response time. I your goal is throughput ratherthan response time, utilization is still very important. I you have twodisk controllers, or example, and one is 50% utilized and the otheris swamped, then you have an opportunity to improve throughput byspreading the work more evenly between the controllers.

    The table below (Figure 8) shows the various resources comprisingour example server. The table shows the overall utilization or eachresource. Utilization or the our CPUs are shown together treated as

    one resource, otherwise each resource is shown separately.

    Notice that CPU utilization is about 65% over this period o time(7:00 AM - 10:00 AM on January 02). This corresponds with the bursto CPU utilization that was shown earlier in Figures 3 and 6.

    No resource in the report seems to be saturated at this point, thoughhdisk2 is getting a lot more o the I/O than either hdisk0 or hdisk1.

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    9/18 How to Do Capacity Planning

    I you nd a resourcethat is running at 100%utilization, then anyworkloads using thatresource are likely to havepoor response time.

    WHITE PA

    Figure 7

    Response Time and Throughput

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    10/18

    This might be worthy o attention; uture increases in workloadsmight make evening out the disparity in disk usage worthwhile.

    Measure Resource Usage by WorkloadFigure 9, shows the same period again, only now resource utilizationis displayed or the APPOINTMENTS workload. Note that this particularworkload is using 59% o the CPU resource, nearly all o the 65%utilization that the previous table showed as the total utilizationby all workloads. Clearly, the APPOINTMENTS workload is where acapacity planner would want to ocus his or her attention, unlessit is known that uture business needs will increase the amount owork to be done by other workloads on this system. In our example,

    that is not the case. Ramp-ups in work are expected mainly or theAPPOINTMENTS workload.

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    0/18 How to Do Capacity Planning WHITE PA

    Figure 8Overall Resource Usage

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    11/18

    The previous charts and tables have been useul or determining thatCPU Utilization is likely to be a determining actor i the amount owork that our system is expected to perorm increases in the uture.Furthermore, we were able to tell that the Appointments workload isthe primary user o the CPU resources on this system.

    The same sort o analysis can work no matter how you choose to setup your workloads. In our example, we chose to treat appointmentprocesses as a workload. Your needs ma cause you to set up yourworkloads to correspond to dierent business activities, such as aWholesale Lumber unit vs. Real Estate Development, thus allowingyou to analyze perormance based on the dierent requirements o

    your various business units.

    Identiy Components o Response TimeNext we will show how to determine what system resources areresponsible or the amount o time that is required to process a unito work. The resources that are responsible or the greatest share othe response time are indicators or where you should concentrateyour eorts to optimize perormance. Using TeamQuest Model we

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    1/18 How to Do Capacity Planning

    The resources thatare responsible orthe greatest share othe response time areindicators or where

    you should concentrateyour eorts to optimizeperormance.

    WHITE PA

    Figure 9Resource Utilization by Workload

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    12/18

    can determine the components o response time on a workload byworkload basis, and you can predict what the components will beater a ramp-up in business or a change in system conguration.

    A components o response time analysis shows the average resource

    or component usage time or a unit o work. It shows the contributiono each component to the total time required to complete a unit owork.

    Figure 10, above, shows the components o response time or theAPPOINTMENTS workload. Note that CPU service time comprisesthe vast majority o the time required to process an appointment.Queuing delay, time spent waiting or a CPU, is responsible or therest. I/O resources made only a negligible contribution to the totalamount o time needed to process each user call.

    The ASMAIN workload, shown in Figure 11, is more balanced. There

    is no single resource that is the obvious winner in the contest or thecapacity planners attention (however, make note o the queue delayor hdisk2).

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    2/18 How to Do Capacity Planning WHITE PA

    Figure 10APPOINTMENTS Components oResponse Time

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    13/18

    Plan or the Future

    How do you make sure that a year rom now your systems wont beoverwhelmed and your IT budget over extended? Your best weaponis a capacity plan based on orecasted processing requirements. You

    need to know the expected amount o incoming work, by workload.Then you can calculate the optimal system conguration or satisyingservice levels.

    Follow these steps:

    First you need to orecast what your organization will require oyour IT systems in the uture.

    Once you know what to expect in terms o incoming work, youcan use TeamQuest Model to determine the optimal system

    conguration or meeting service levels on into the uture.

    Determine Future Processing RequirementsSystems may be satisying service levels now, but will they be ableto do that while at the same time meeting uture organizationalneeds?

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    3/18 How to Do Capacity Planning

    Your best weapon is acapacity plan based onorecasted processingrequirements.

    WHITE PA

    Figure 11ASMAIN Components oResponse Time

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    14/18

    Besides service level requirements, the other key input into thecapacity planning process is a orecast or plan or the organizationsuture. Capacity planning is really just a process or determining theoptimal way to satisy business requirements such as orecastedincreases in the amount o work to be done, while at the same time

    meeting service level requirements.

    Future processing requirements can come rom a variety o sources.Input rom management may include:

    Expected growth in the business Requirements or implementing new applications Planned acquisitions or divestitures IT budget limitations Requests or consolidation o IT resources

    Additionally, uture processing requirements may be identied romtrends in historical measurements o incoming work such as ordersor transactions.

    Plan Future System ConfgurationAter system capacity requirements or the uture are identied, acapacity plan should be developed to prepare or it. The rst step indoing this is to create a model o the current conguration. From thisstarting point, the model can be modied to refect the uture capacityrequirements. I the results o the model indicate that the current

    conguration does not provide sucient capacity or the uturerequirements, then the model can be used to evaluate congurationalternatives to nd the optimal way to provide sucient capacity.

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    4/18 How to Do Capacity Planning

    Capacity planning is

    really just a process ordetermining the optimalway to satisy businessrequirements such asorecasted increases inthe amount o work to bedone, while at the sametime meeting servicelevel requirements.

    WHITE PA

    Figure 12Setting Up TeamQuest Model

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    15/18

    Our base model in Figure 12 was representative o 300 usersgenerating appointment/calendar requests on our system. Fromthere we have added steps in increments o 30 users until theincoming work has increased by one-hal again as much. This ramp-up in work has been added only or the APPOINTMENTS workload,

    because no such increase was indicated or other workloads whenwe did our analysis o uture processing requirements in the previoussection.

    TeamQuest Model will predict perormance o the current systemconguration or each o the steps we have set up. Figure 13 is achart generated using TeamQuest Model showing the predictedresponse time or each workload.

    As we can see, the response time starts to elongate ater 390users.

    Figure 14 is a chart showing predicted response time using a stack

    bar chart that also shows the components o response time. Noticethe substantial increase in CPU wait time ater the number o usesreaches 360. It seems that the perormance bottleneck is CPUresource.

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    5/18 How to Do Capacity Planning WHITE PA

    Figure 13Predicted Response Time

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    16/18

    Figure 15 shows the same stack bar chart, but this time TeamQuestModel was told to predict perormance i the system involved waschanged to a p670 1100Mhz 4-CPU system. Clearly, the newer, asterarchitecture not only allows us substantial growth, but reduces ouroverall response time to a more realistic level and still allows us theheadroom to experience additional growth i needed.

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    6/18 How to Do Capacity Planning WHITE PA

    Figure 15Predicted Response Time AterUpgrade

    Figure 14Predicted Response Time

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    17/18

    Capacity Planning Process

    In summary, we have shown these basic steps toward developing acapacity plan:

    Determine service level requirements Dene workloads Determine the unit o work Identiy service levels or each workload

    Analyze current system capacity Measure service levels and compare to objectives Measure overall resource usage Measure resource usage by workload Identiy components o response time

    Plan or the uture Determine uture processing requirements Plan uture system conguration

    By ollowing these steps, you can help to ensure that yourorganization will be prepared or the uture, ensuring that servicelevel requirements will be met using an optimal conguration. Youwill have the inormation necessary to purchase only what you need,avoiding over-provisioning while at the same time assuring adequate

    service.

    Reerences

    The Value Proposition or Capacity Planning, EnterpriseManagement Associates, October 2003.

    An Operation Analysis Approach to Capacity Planning,TeamQuest Corporation, TQ-WP13.

    Consolidating Applications onto Underutilized Servers,TeamQuest Corporation, TQ-WP20.

    TeamQuest Model, UNIX and Microsoft Windows Systems, UserGuide, TeamQuest Corporation, TQ-01241.

    Copyright 2007 TeamQuest Corporation. All Rights Reserved. Subscr

    7/18 How to Do Capacity Planning

    By ollowing these

    steps, you can helpto ensure that yourorganization will beprepared or the uture,ensuring that servicelevel requirements willbe met using an optimalconguration.

    WHITE PA

  • 7/29/2019 How to Do Capacity Planning - Team Quest

    18/18

    TeamQuest Corporationwww.teamquest.com

    Americas

    One TeamQuest WayClear Lake, Iowa 50428USA+1 641.357.2700+1 [email protected]

    Europe, Middle East and AricaBox 1125405 23 Gothenburg

    Sweden+46 (0)31 80 95 00United Kingdom+44 (0)1865 [email protected]

    Asia PacifcLevel 6, 170 Queen StreetMelbourne, VIC 3000Australia+61 3 9641 2288

    [email protected]

    Copyright 2007 TeamQuest CorporationAll Rights Reserved

    TeamQuest and the TeamQuest logo are registered trademarks in the US, EU, and elsewhere. All other trademarks and service marks are theproperty o their respective owners. No use o a third-party mark is to be construed to mean such marks owner endorses TeamQuestproducts or services.The names, places and/or events used in this publication are purely ctitious and are not intended to correspond to any real individual,

    group, company or event. Any similarity or likeness to any real individual, company or event is purely coincidental and unintentional.NO WARRANTIES OF ANY NATURE ARE EXTENDED BY THE DOCUMENT. Any product and related material disclosed herein are only urnishedpursuant and subject to the terms and conditions o a license agreement. The only warranties made, remedies given, and liability acceptedby TeamQuest, i any, with respect to the products described in this document are set orth in such license agreement. TeamQuest cannotaccept any nancial or other responsibility that may be the result o your use o the inormation in this document or sotware material,including direct, indirect, special, or consequential damages.You should be very careul to ensure that the use o this inormation and/or sotware material complies with the laws, rules, and regulationso the jurisdictions with respect to which it is used.The inormation contained herein is subject to change without notice. Revisions may be issued to advise o such changes and/or additions.U.S. Government Rights. All documents, product and related material provided to the U.S. Government are provided and delivered subject tothe commercial license rights and restrictions described in the governing license agreement. All rights not expressly granted therein arereserved.