Methodology

The methodology listed is as follows:

Properly estimated and appropriately sized infrastructure components are an essential requirement for achieving scalability, availability, and optimal performance.

The main steps in capacity planning are as follows:

  • Demand analysis: In this step, we will collate all data about the current demand, workload, trends, and all aspects of usages of infrastructure such as CPU, memory, and the network. The key process steps are collecting infrastructure usage statistics using tools, preparing a questionnaire for each of the infrastructure elements, and compiling observations from all key stakeholders.
  • Current capacity analysis: Once we get all aspects of present and future demands of the user load on systems, we can analyze and determine whether the existing capability of the systems can meet those demands. We can establish the threshold and benchmark values for establishing whether the utilization of critical resources are optimum. We will relook at the current resource utilization for an extended duration and determine the following values:
    • Resources that are underutilized
    • Resources that are heavily utilized

A comparison of utilization against the threshold and benchmark values and an end-to-end analysis to identify the bottleneck. The inputs from the above values can be used to optimize capacity planning. For example, any resources that are underutilized for an extended duration of time can be consolidated or virtualized to increase utilization.

Similarly, resources that are consistently over-utilized can be planned for a capacity upgrade. The capacity can be increased for bottleneck resources in the landscape.

  • Future capacity planning: Leveraging historical data, trend analysis, and future workload prediction models can be used to arrive at the required server capacity. In addition to a prediction model, we should consider the vendor recommendations for capacity. Most of the vendors for hardware and software provide recommended configurations for optimal use of their products. This information will be used as key input in coming up with final capacity numbers. Hence, a combination of predicted capacity and vendor recommendations will be used to arrive at final capacity numbers.

Please note that it is important to test the target capacity values with the simulation models and expected workload. There may be many factors that cannot be accurately determined during the capacity planning exercise, mainly because the application is still under development, including:

  • Number, complexity, and data transfer rate with interfacing systems
  • Use of design patterns and number of tiers/layers in the architecture
  • Overhead caused by replication and cache/session replication
  • Any changes to workloads assumed during capacity planning
  • Overhead caused by batch jobs, offline reports, search crawlers, and application/system monitoring tools on the enterprise application
  • Use of open-source or COTS tools and frameworks in the engagement

All these factors will influence the overall performance, and so the initially estimated capacity/sizing numbers may need to be revisited. It is recommended to treat capacity planning as a two-step process: firstly, perform an initial assessment based on the future resource use and stakeholder interviews; secondly, test the new capacity leveraging simulations during the QA phases. This is to ensure that the planned capacity adequately meets future demands. During this stage, the capacity numbers may need to be fine-tuned based on application performance.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset