Cloud Computing

A quick primer for the business.

June, 2011

Cloud Computing Easily the hottest buzzword in the tech theater today is "cloud computing" or "the cloud".

So what is it? Cloud computing is the concept of using a pooled collection of computing resources from a remote location via a network (NIST document here). These resources (networks, servers, storage, etc.) can belong to the enterprise itself (private cloud), be offered from a service provider (public cloud), be part of a limited consortium (community cloud), or a combination thereof (hybrid cloud). The term "cloud" comes from the abstract depiction of a network or more recently, the Internet as a cloud in computer system diagrams. We geeks use a cloud as a metephor to depict a magical place where all the important stuff happens, but we don't necessarily care what's inside it because it's someone else's responsibility. Cloud computing represents the natural evolution of enterprise as well as consumer computing made possible by the maturation of technologies such as broadband, virtualization, service-oriented architectures, and the like.

Though the term is just now becoming a household name in the IT world, cloud computing has been ubiquitous for more than the last few years. Probably the easiest example of cloud computing in use today is free web-based e-mail (e.g., GMail or Yahoo! Mail) or web-based applications such as Google Docs.

There are a few different degrees of cloud computing with which you should be familiar. The most basic iteration is what we call Infrastructure as a Service (IaaS) wherein the enterprise accesses, provisions, and controls servers, storage, and other infrastructure which resides in the cloud. IaaS requires the enterprise consumer to provide management over the resources in the cloud, while the service provider takes care of basic care and feeding. The highest level of cloud iteration is Software as a Service (SaaS) wherein the enterprise makes use of an application served up by the provider most commonly via a web browser. In between is Platform as a Service, wherein the enterprise deploys its application(s) onto the provider's cloud who handles the operating systems and associated environments.

So why should you care? There's a huge potential to save money, that's why. Of course, inherent to that lies some risk, which I'll talk about in a moment. Let's look at the fundamental advantages and disadvantages you should consider.

The first advantage is cost. First and foremost, you're being relieved of the capital investment associated with aquiring the computing hardware and software that tends to be obsolete before it shows up on your loading dock. Because the service provider can leverage virtualization and other technologies to deliver the computing services more efficiently, they can capitalize on economies of scale and offer these services to you at a much lower cost than the consumer can provide on their own. Whether these funds are now moved into the expense column or can be capitalized is now a matter between you and your CFO.

The aforementioned virtualization technologies also brings an unprecedented level of flexibility and agility. Dynamic or elastic provisioning means that the enterprise can consume computing resources "on-demand". Open enrollment season? Quarterly earnings set to release? No problem; provision more processing power to your cloud-based web server. Basically, you pay "by the drink" for the amount of utility you consume. Most often, all of this allocation is self-service and does not require the intervention of the service provider.

Now let's look at some of the disadvantages.

The first objection usually layed at the Account Manager's feet is security. How will you protect my data? Where HIPAA or PCI are concerned, what are the compliance implications? Certainly the appeal for the service provider is the ability to gain efficiences by pooling resources so as to provide services at a lower cost. But this means that one client's data could be at risk of mixing with another's, and that's just not acceptable. The prescription here is patience. The vendor has heard this objection before and is likely to have a remedy that will satisfy Audit. On the other hand, it just might not work. Get your provider in the same room with Legal and have a frank discussion about how the solution is purported to work.

Another common disadvantage is the work required to integrate a cloud service into your legacy environment. Depending upon the business and the degree to which technology makes it go, this can be a real problem and often dictates which applications get migrated to the cloud.

For me, the biggest issue facing the enterprise with respect to cloud computing is control. Often, the enterprise's technologies are the lifeblood of core processes that generate revenue, power the operation, and provide goodwill. If you need something changed on your manufacturing floor (and you haven't offshored it), you walk downstairs and you change it. If that process is now under the control of a service provider (with hundreds of customers) and governed by a service-level agreement, your flexibility is limited. At the end of the day, this is YOUR business.

Like most things in life, cloud computing isn't a one size fits all solution. Consider carefully which applications can safely be migrated to a service provider given the criticality to your business, the security risks, and of course, the cost implications.