Wednesday, March 7, 2012

Infrastructure Capacity Planning

Capacity planning is not unique to Information Technology Infrastructure. We see the need for capacity planning in many industries and organizations.
  • A manufacturer of auto parts needs to plan the factory capacity meet the expected demand
  • A city needs to plan for the capacity of its electricity, water supplies and transportation
  • A family or an individual needs to plan for how much living space they would need
  • A school needs to plan to accommodate the expected number of students

For IT infrastructure, capacity planning involves the need to estimate the demand for infrastructure components such as processing power, storage and network bandwidth. If the infrastructure is hosted centrally in a data center, capacity planning needs to take into account the physical space required to add more infrastructure components in the future.

Processing Power

Processing power depends primarily on the following elements:

  • The raw speed and the architecture of the central processing unit
  • The raw speed of the primary memory and the speed of the interconnection between the central processing unit and the primary memory
  • The raw speed of the storage unit and the speed of the interconnection between the central processing unit and the storage unit


The actual processing power that is perceived by an application is dependent on the nature of the application (is the application CPU-intensive or I/O-intensive?, is the application single-threaded or multi-threaded) and many other factors such as the ability of the processor to process multiple threads simultaneously and the ability of multiple processors to work in parallel.

Storage

Storage is a central element of many information systems. Storage is of particular importance to large organizations and to large service providers (examples include: public email providers such as Google Gmail, Yahoo, Microsoft Hotmail etc., search engines such as Google Search, Microsoft Bing, media repositories such as Lexis Nexis etc.)

Storage systems and components come in many different flavours. Some are made for very fast access (think solid state disks) and others are made for slow access and larger capacities (think optical storage).

Capacity planning for storage involves determining the need for fast and slow access to storage, segmenting storage systems into categories and identifying the required capacity for each segment.

Often, capacity utilization increases faster than expected; especially when the usage of an application takes off. So, capacity planning involves allowing for unforeseen usage for storage.

Network Speed and Bandwidth

Modern information systems are designed such that most processing happens in a centralized facility and the processed results are delivered to uses in many locations. The need to transport the processed results to user locations as well the need to ensure that the data transfers between processing components are fast requires that the speed and the bandwidth of the network that connects them are adequate.

The race to provide better speed and bandwidth has been a key factor in the competition between various network service and equipment providers over the past two decades.

Network connectivity may be wired or wireless. Thus far, most connectivity between large systems is based on wired connections (1G, 10G, Fiber etc.). However, consumer connections are increasingly becoming wireless - WiFi, 3G, 4G etc.

Typically, the greater the speed and the bandwidth, the greater the cost. Other factors that influence cost are the quality of support and the amount of redundancy and fault tolerance that is built into the network.

Capacity planning is not an easy task. The uncertainty in how the infrastructure will be used in the future makes it very challenging. There is a need to balance the cost of paying for excess unused capacity to the probability that utilization by applications will exceed the planned capacity.

Cloud computing and virtualization try to pool capacity into structures that are uniformly accessible by applications and thereby potentially increasing the capacity utilization without increasing the risk of exceeding the planned capacity. We will look at cloud computing and its relationship to capacity planning in another article.

Copyright © 2012 Suresh Peram. All rights reserved.

Friday, May 14, 2010

Strategic Planning for IT Infrastructure

Infrastructure is a long term capital investment, with most equipment having a life span of 3 to 10 years. Strategic planning is necessary to ensure that the infrastructure meets the current and the future business needs, considering the rapidly changing technology environment. So, there are two things that drive this strategic planning: (1) business needs of the organization and (2) technological changes.

It is interesting to note that even of the business needs of the organization remain constant (which they don’t most of the time), obsolescence and technological changes require planning for infrastructure replacements, additions or subtractions. For example, newer technology may make it cheaper to purchase and maintain a newer server than retain an older server. Technologies like virtualization enable multiple applications running on different operating systems to make use of the same server, especially when the server is has a newer, faster central processing unit, larger memory and higher network and storage bandwidth. Such newer servers can be used to consolidate and replace two or more older servers. When the maintenance costs of these older servers are greater than the purchase cost of the newer server, it becomes financially and operationally expedient to take this approach.

Technological changes often make older systems obsolete or in some cases make it expensive to continue to make changes to the software running on the older systems. In such cases, there is an added software development cost to replace the older system with a newer system. Even so, it may turn out that such a change is beneficial, when one considers the whole set of organizational costs, such as the cost of recruiting and training employees, and the loss of business opportunities.

Finally, the technological environment may present an entire different opportunity – such as cloud computing. If suitable cloud computing environments become available, organizations may be able to eliminate portions of their infrastructure and choose to run applications in the cloud using a cloud provider. Some large organizations are running their email systems in the cloud and some large software vendors are themselves offering cloud solutions. No doubt, organizations will be concerned about security; but if suitable security measures are implemented by the cloud providers, organizations may warm up to clouds more and more over time.

Suresh Peram LinkedIn