Cloud Computing: Opportunities for Enterprise IT
Enterprise IT teams spend a significant amount of time in handling configuration management issues and resolving conflicts and testing applications & server configurations whenever patches are applied to servers or OS or any changes are made to applications or the middleware software. These issues not only increased the operational costs, they also increased time to market. Before discussing how to streamline configuration management of applications, we need to understand the background about how we got here.
Initially when the industry started building and running distributed applications, the standard process was to buy bunch of physical boxes (computer hardware) and put them in a server room. The application teams who built the applications had full ownership of their physical hardware and can deploy upgrades or install patches/software on the servers. This approach had the benefit of application teams having full ownership of their environments and they also had full visibility of the TOC for their application. As IT industry become more mature, industry realized that there are of lot of servers and utilization of the servers are low and also managing large number of servers means additional head count.
To overcome these issues, IT industry went thru huge server consolidation efforts. The idea was to buy large servers with optimal operational TOC and consolidate standalone servers of similar functionality, e.g. databases for various applications were consolidated on large enterprise database clusters consisting of multiple physical servers. Similarly web servers and app servers for various applications were consolidated on one or multiple large physical boxes. The server consolidation forced the companies to move towards software standardization, because it is much easier to consolidate similar software components, e.g. Oracle or DB2 database servers of the same version instead of trying consolidate different versions or types of databases on same physical boxes. In this new consolidated world application owners faced new challenges, any time they have to make changes to their application they have to go thru complicated change management and configuration control processes to make sure that by making changes for one application they don’t break or negatively impact other applications or services sharing the same resources.
Server consolidation and standardization increased the server utilization and reduced the TOC for running the datacenter. As a negative side effect, it reduced the time to market applications due to deployment complexities and complex change management processes. IT application teams are looking for flexibility and ownership of their environment and the IT datacenter/infrastructure folks are trying to manage complexity thru standardization, controls, and increasing server utilization. The root cause of this conflict is that every application requires some specialize tweaking of OS parameters, installation of custom libraries, etc. and when running multiple applications on the same physical hardware created conflicts as different applications sometime have conflicting needs for custom parameters and libraries. Also from business owners perspective this type of arrangements made it difficult to understand the total cost of ownership of their applications.