Monday, April 18, 2011

Cloud Computing, what is it really?

I have been in a lot of discussions recently where Cloud Computing is being discussed more then before. I wanted to take a break from EITRP and talk about this term and it's increasing use. Most of the definitions of Cloud Computing include the following words in some order and combination: elastic computing, remotely delivered, associated with SLAs, end user platform independent delivery method, scalable, and billed by usage.

Essentially, most people look at Cloud Computing as a change in the delivery of an application from a company run data center to a managed, remote facility that provides SLAs for the application and bills for actual usage of the application and the amount of data being stored. Most definitions of Cloud Computing also speak to underlying technologies like virtualization, elastic scalability, or hyper-scale data centers.

I believe that Cloud Computing is less about the technology and delivery method, and more about how people think about their information technology (IT) needs and operate what would traditionally be their IT departments. Cloud Computing is more about efficiency, essentially reviewing all current application and data needs, and instead of modifying existing processes to fit changing needs, it is about creating new methods for application delivery. I look at Cloud Computing as the point in time that IT leadership stops using old ways of deploying servers, installing applications and defining the method folks will use those applications. Cloud Computing is about IT leadership embracing and creating new ways to be more efficient with service delivery and how that delivery spans business, process, technology and finance.

Physical Infrastructure

A lot of interpretations of Cloud Computing involve eliminating a company of it's server infrastructure and utilizing shared billable resources from companies like Rackspace, ServerPronto, Amazon, or 1&1 just to name a few. This is commonly called Infrastructure as a Service (IaaS).

Cloud does not mean you ditch all your servers and use Amazon for your core business operations, it means you throw out all your processes when designing new solutions and design solutions around modern delivery and operational processes and newer proven technologies. This is a difficult change for many organizations, IT has developed many habits over the years and other teams have come to expect things from IT done in a certain way.

Staff Infrastructure

There is a common perception within IT departments that staff can be cut back or eliminated by the use of Cloud Computing. This perception largely builds out of the expectation that Cloud Computing is the 100% use of hosted infrastructure, and enables a company to function without the traditional roles of System Administrator, Storage Engineer or Operations Staff.

This belief is often misplaced. By utilizing IT environments that are more automated and/or hosted at alternate locations, the need for IT staff does not diminish, the skill sets that are needed and the required expertise changes. Many IT organizations that are utilizing new methods for operations that are born out of Cloud Computing are finding that traditional IT operations roles are become more architectural in nature and the skill sets are more closely aligned with Software Engineers then system administration staff.

Traditional IT roles involved in deployment of servers will be more focused on capacity planning, knowledge transfer with the application development teams and strategy development for the use of new and emerging tools and technologies. Modern IT departments that have embraced these new engagement models, look to the other organizations to drive tools based on their business needs, while the IT organization provides thought leadership around implementation and strategy. IT staff can not longer be just technical experts, they must understand the business, the financials of the company, the organizational goals and how that relates to technology.

Cloud Computing is not about the use of some new modern technology, although that is a by-product. Cloud Computing is not about throwing away your servers and buying cycles from other companies, but that is often done as part of it. Cloud Computing is a new method of thinking about IT. It is about starting with the business requirements and needs of an organization and enabling those need through the most automated, efficient way possible. This will be a combination of new skills for staff, new use of technology and different models for procuring, using and retiring resources.

Most importantly, Cloud Computing is not a product to be bought. It is a set of items, methods and best practices for deploying the multitude of products, tools and solutions that IT has at it's disposal and utilizing new ones for efficiency when they become available. Cloud Computing is a mindset for efficiency that enables dynamic businesses.

Now I want to touch on Enterprise Information Technology Resource Planning (EITRP) before I close out this post and show how resource planning across an organization enables a more dynamic IT environment that is sensitive to the business's needs. EITRP enables organizations to map the organizational goals, processes, rules and resources that a company has at it's core. This mapping enables clear modeling and simulation of changes to the environment. Cloud Computing provides the operational model for implementing the resources documented within EITRP.