Web APIs are growing at a phenomenal rate. According to Programmableweb, the number of publicly available APIs grew from 105 in 2005 to 8000 by the end of 2012, and by June 2013 the number had jumped to 9000. With enterprises going through major transformations driven by cloud, big data and mobility trends, APIs are the connective tissue of the ecosystem and interface between software programs to provide access to data and other services. Going beyond simple data access, APIs enable highly flexible infrastructure and platform availability from infrastructure and platform service providers. Moreover as everyday devices get connected to the internet, the vision of Internet of Things will require ‘things’ to provide APIs that hide underlying complexity, and deliver the right data at the right time in a manner that can scale.
Capacity management and planning is the process of determining the supply of compute and other IT resources needed by an organization to meet the dynamic demands for these resources. In the context of OpenStack, in this blog I describe Startup Capacity Management, when first building out the Cloud, and Operating Capacity Management, for ongoing updates to resources for meeting user demands on the cloud deployment.
Traditional IT capacity management has employed simple forecasting-based approaches for capacity planning of dedicated IT infrastructure running limited number of applications. However, with the advent of virtualization and Cloud-based services, simple approaches no longer suffice because of the dynamic nature of supply and demand. The supply side is dynamic – VMs can be placed on any host, and can be migrated between hosts. Performance of applications can be impacted by other applications sharing the same compute, storage or network infrastructure. The demand is also dynamic, with seasonal, weekly or monthly peaks and one off dynamic peaks. A fundamental step in making the datacenter efficient is to understand the supply and demand of the IT resources. The supply consists of the resources such as compute, storage and network and the demand arises from the applications and services consuming these resources to fulfill business needs.