Share what you know with millions of people
Focus is the best place to turn what you know into remarkable content
0
What's your definition of Cloud?
In response to my question yesterday about cloud standards (http://www.focus.com/questions/information-technology/it-time-cloud-standards/#) I got a twitter reply saying "can we have #cloud standards is we don't even have standard definitions?"
It's a fair comment and in the spirit of that, how do you define cloud computing?
Wikipedia says "“Cloud Computing is Internet-based computing, whereby shared resources, software, and information are provided to computers and other devices on-demand, like the electricity grid.”
NIST says (they bureaucratic, they never do anything by halves);
Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model promotes availability and is composed of five essential characteristics, three service models, and four deployment models.
Essential Characteristics:
On-demand self-service. A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service’s provider.
Broad network access. Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, laptops, and PDAs).
Resource pooling. The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g., country, state, or datacenter). Examples of resources include storage, processing, memory, network bandwidth, and virtual machines.
Rapid elasticity. Capabilities can be rapidly and elastically provisioned, in some cases automatically, to quickly scale out and rapidly released to quickly scale in. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be purchased in any quantity at any time.
Measured Service. Cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported providing transparency for both the provider and consumer of the utilized service.
Service Models:
Cloud Software as a Service (SaaS). The capability provided to the consumer is to use the provider’s applications running on a cloud infrastructure. The applications are accessible from various client devices through a thin client interface such as a web browser (e.g., web-based email). The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings.
Cloud Platform as a Service (PaaS). The capability provided to the consumer is to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages and tools supported by the provider. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, or storage, but has control over the deployed applications and possibly application hosting environment configurations.
Cloud Infrastructure as a Service (IaaS). The capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage, deployed applications, and possibly limited control of select networking components (e.g., host firewalls).
Deployment Models:
Private cloud. The cloud infrastructure is operated solely for an organization. It may be managed by the organization or a third party and may exist on premise or off premise.
Community cloud. The cloud infrastructure is shared by several organizations and supports a specific community that has shared concerns (e.g., mission, security requirements, policy, and compliance considerations). It may be managed by the organizations or a third party and may exist on premise or off premise.
Public cloud. The cloud infrastructure is made available to the general public or a large industry group and is owned by an organization selling cloud services.
Hybrid cloud. The cloud infrastructure is a composition of two or more clouds (private, community, or public) that remain unique entities but are bound together by standardized or proprietary technology that enables data and application portability (e.g., cloud bursting for load-balancing between clouds).
What do readers use as their definition of Cloud Computing?
Events
- Dos and Don'ts of Small Business Marketing May 29 @ 11 am PT
- Lead Nurturing 202: The Next Generation May 31 @ 11 am PT
- The Tricks to Paid Media June 6 @ 11 am PT
- Display Advertising for Brand Awareness June 20 @ 11 am PT





20 Answers
You are each right when you touch on the components of what makes up "the cloud". I'm always amazed that we talk in acronyms and components but can't seem to deliver the 25 second pitch on what the cloud is. That an industry full of so many brilliant people can be so foggy about the cloud is the very reason my company tag line is "The Cloud Beyond The Fog". The end user community has a very poor understanding of what the cloud is today. Such poor understanding breeds mistrust, and mistrust breeds inaction.
So is it any wonder Osterman Research just completed a survey of over 100 IT execs at firms who average 400 employees each and discovered that "total cloud spending" among those firms in 2010 was just over $6200 annually... or about $23 per seat. For the year. In total. That's pathetic. But it's understandable once you realize that no one shops for "the cloud". They buy utility that is served from remote, professionally managed facilities (a/k/a the cloud).
"The Cloud" is a marketing term, and a poor one at that.. not just an IT term poorly marketed. Private, Public, IaaS, PaaS, SaaS.. (and on his server farm he had some drives... E I E I O)... I personally hate the term and I sell it all day long. It's a lame name. It's vague and ethereal and complicated. No wonder smart business people are foggy about it and uncertain how to benefit from it.
To get beyond the alphabet soup of acronymity, I tell my business clients that the cloud is just 21st century time sharing with systems and resources more powerful and reliable than any mainframe of the past. Whether they need a dev environment, a DR target or an application, those old enough to remember the 70's get it instantly, without me explaining PaaS, IaaS or SaaS to them.
Younger clients ask "isn't the cloud just another term for Internet hosting"? My answer is "sort of, except on steroids". I hosted web servers for 15 years before repositioning myself and rolling out a newco to focus on "the cloud". The main difference between hosting in the traditional sense and today's cloud services, is that hosting is still mostly done using inexpensive dedicated servers with direct attached storage. So hosting providers may seem like cloud resources when marketed to a unsuspecting buyer who doesn't know better. But each of those servers is a low-availability point of risk and a show stopper when they go down.
By my definition, true cloud resources must be resilient and designed for 100% uptime. While we can quibble about uptime stats and what constitutes system availability in another discussion, the over arching design goal is resilience, fault tolerance and high availability. That of course requires virtualization, but virtualization done right. Not just some VM's spread on a dedicated hosting server.
Doing it right requires scalable infrastructure to support elasticity. This means VM's properly clustered using VMotion or an equivalent migration component, with load balancing, resource shifting, RAID or dispersal based storage on SAN, preferably replicated across redundant stacks in multiple geo separated data centers.
True cloud computing puts the greatest point of failure at the user's end of the connection. And it delivers platforms, dev environments, storage or software 24/7/365 with little margin for error, excuse or apology other than what happens at the OS or application layer. Bad apps are bad apps, whether they're run on internal servers, dedicated internet servers or the cloud. But a "real cloud" provider should be able to deliver access to that bad app reliably, unless the customer broadband fails.
People rarely wonder if the power that lights their office was generated with coal, natural gas or nuclear energy. Cloud computing will have come into its own when apps and storage "show up" on the endpoint as a utility, rented without capex, and without regard for where the app is hosted or a thought about reliability. Done right, it's just 21st century time sharing.
Cloud Computing is a re-branding of existing Internet technologies into a utility type function that encompasses the best of dyanmic, high available, fault tolerant, capacity-on-demand techniques. Similar to your monthly cell phone service, you use the service without the knowledge of what goes on behind the scenes and expect the service to be available 7x24.
To me, cloud at its core is defined as " access to what I need, when I need it, and I pay for only what I use." Embedded in this is elasticity, high availability, and capability for access from any Internet location.
The three main layers of cloud then break down by what the consumer wants to be someone else's problem:
* SaaS: "Deliver an application I can configure for my needs, and take care of everything underpinning that" (examples: Google Apps, Microsoft BPOS, SalesForce.com)
* PaaS: "Deliver an infrastructure and development platform I can build and deploy custom applications on, and take care of..." (examples: Force.com, Google Apps Engine, Microsoft Azure, Amazon Elastic Beanstalk)
* IaaS: "Deliver an infrastructure-only platform I can build and deploy server instances on, and take care of..." (examples: Rackspace CloudServers, Amazon EC2 and S3)
These layers have important distinctions - some people simply need CPU/RAM/storage instances to scale out or in; others need a place for their developers to rapidly deploy applications without involving infrastructure people; and many want a full off-the-shelf application delivered without investing heavily in equipment or manpower.
The notion of "private cloud" depends on your point of view. If you're building the infrastructure, it's not cloud at all. If you're a consumer, it may be cloud-like (and probably IaaS or SaaS) if resource management and investment are completely invisible to you.
My thoughts... Private = virtualization in drag. Hybrid = valid approach towards the cloud
I like the NIST definition and use it whenever I am talking to someone seeking a technical definition. For non-technical folks who have seen the Microsoft commercials (http://bit.ly/bOxG8e ), I tell them that the cloud provides the ability to request computer services in the same way one searches for a flight from DC to Atlanta. There is no concern for the plane’s engine, no checking flaps before takeoff, and no checking the sobriety of the pilot. One has a certain amount of time and money and uses that to get from DC to Atlanta by requesting a service. If the service fails, one penalizes the service provider (free ticket, free hotel accommodations, etc). Most folks get this. The Microsoft commercial, while some argue it is not really about the cloud, helps to get folks thinking about the possibilities.
I'd have to agree with Paula's assessment that while a lot of these responses are correct, they are also too technical for the average executive without an IT background to grasp.
Here's the basic difference for me, from the consumer's point of view: When you use software "in the cloud", you're essentially renting it instead of buying it. If you store your files on a server in the cloud, it's like keeping paper files at another location instead of your own, but with instantaneous access to them. There are pros and cons to both of these.
With the software side of it, pros include not having to keep physical copies of CDs around, and automatically getting updates to the software as soon as they're issued. Cons include being forced to buy upgrades you may not have needed, and possibly being forced to by additional licenses if you have computers that die and you replace them with different machines.
With the file storage, pros include having your files in a secure location that can't be harmed by disasters such as fires, storms or hackers that might hit your company's computers. Cons include having your files in another company's control; if they go out of business or their server is destroyed by fire, storm, or hackers what's going to be the status of your files?
Nothing beats the NIST definition. And I found one of the replies to this question interesting...suggesting the definition cannot be used when describing cloud computing to business users because "their eyes glaze over."
Though I don't dispute the ocular challenges, IT needs to stops shying away from them. If the business is to have any chance of determining when investments in cloud computing are right for their enterprise, they need to understand what computing is. THE BUSINESS must govern business information technology investments and the days of excusing themselves from the conversation because it is "technical" should be long gone.
Nothing is better than the NIST definition when it comes to making this cumulus less nebulous.
If at the mailbox with a neighbor or in an elevator with a man on the street I would simply say "The cloud is the internet connecting you to services you want to use, where everything is running at a remote location driven from your PC or smart phone." Then I might add "like Flicker, Facebook or TurboTax, you use their space and computing power, sometimes free and other times for money."
Chad and Lynn have an excellent point. Many, many customers are confused by this. They wonder how much is truly different from the past and how much is marketing spin.
If you are in the cloud business, especially one for a particular industry segment or vertical -- and you have technology that meets some equivalent of the NIST definition for attributes of cloud operation -- you have an alternate approach (one that may satisfy the technophiles and the marketing team). Define what a cloud is for your segment.
Here is in an example (in a different segment than mine, so I do not create the impression of using this post to hawk my own product).
Sample: Definition of CRM Cloud (e.g., Salesforce) simplified from the NIST defintion.
A CRM Cloud provides convenient, reliable and high-speed CRM functionality, wherever, whenever, and as much as you need it.
* It is on-demand: You can setup new products, call centers, sales force members whenever you need--without needing a "software project." You can add or change CRM and SFA rules whenever you need (also without need of a project).
* It is globally accessible: Your entire team, be they managers, sales force, call centers, etc, can use the system and get required information from anywhere (browser, mobile app, etc.)
* It is like as elastic and reliable as a utility: Not only it fast and available 24/7, you will also have the same speed and performance regardless of how many call centers, sales people, campaigns, and customers you add.
Contrast this with a CRM system maintained by your team -- or hosted by another -- that requires software projects for changes, VPN projects for global access, and IT projects for server and database upgrades to support significant growth.
This type of definition lets customers focus on the benefits (in cloud-compatible terms) and leaves the underlying software and systems "magic" to the engineers.
So with this "definition" in mind, would you say you could build your own private cloud on-premises with Hyper-V or VMWare? I am seeing more and more people touting this "Private" cloud concept, but the more I listen the more I think people think Cloud == "Virtulisation In Drag".
My take on this is definitely the "ability to access computing power as a utility, just as I access electricity / water etc."
What's your take on this whole build your own Private Cloud buzz?
A Cloud service is a technology service that you pay a monthly fee for, a service which doesn't have any equipment installed on your site, and a service that is primarily delivered through a web browser.
I really don't see any differences between IaaS and PaaS. To me, there is SaaS, which means applications like Salesforce, NetSuite, RightNow, and SuccessFactors. Then there is IaaS or PaaS or whatever you want to call it which means Amazon's EC2, Rackspace's CloudServers, and maybe Microsoft's Azure and whatever Google is doing, though I don't know anyone who uses Azure or Google's mystery offering.
Then there is the private cloud, which basically just means using virtualization techniques on a pool of largely depreciated hardware in a large organization.
Either IaaS or PaaS needs to disappear as an acronym. There are just 2 applications of public cloud things at this point -- Applications or Infrastructure that you are renting.
I think there is a very big difference between IaaS and PaaS. An IaaS is just as you say, infrastructure made available to you on a cost per use basis. Not neccessarily monthly, but much smaller increments like processor cycles (one of the fundamental differences between hosted virtulisation and cloud). With an IaaS you are responsible for everything other than the physical tin. With a PaaS you operate at a level of abstraction above that utilising OS, network, frameworks etc to run your applications you build. A SaaS is a level of abstraction above that again. Each of the three have a place.
PS. There are plenty of excellent case studies of people using Microsoft's PaaS, Azure.
I always found that this infographic was popular on our blog: http://bimeanalytics.com/blog/cloud-computing-care-2/
It gives you a very basic overview of what cloud computing is all about, as well as some interesting stats. Some of the basic advantages of being in the cloud are explained, and there are some easy-to-read visuals about the differences between traditional IT and cloud computing.
I've deployed a robust EC2 infrastructure and have looked into Rackspace's offering in depth.
All I know is that I actually work on cloud stuff, and I can't keep all the acronyms straight. I don't see how people who aren't actually doing this have a chance of understanding what any of them mean.
I believe the cloud space is killing itself with too many complex acronyms that don't really mean enough right now.
If I can't follow the conversations you're having with a ton of SaaS / IaaS / PaaS references thrown about rampantly, who exactly is your target audience ?
Softwares, Hardware , Internet at your steps whenever you want & as per the need without any CAPEX.
When you need a Phd to read an answer (as you do with most of the above and frankly, most other definitions I've read), you know there's something wrong. Which is why I've written a fair amount on how "cloudy" and amorphous the term is.
In general I've come to peace with the notion that cloud computing is: "pieces and parts of an application and its associated data can reside anywhere, and the consumer of that application and/or data needs no knowledge of where any individual piece resides."
At least I can more or less understand that (since my partner and I wrote it). I think that distills everything said above.
I typically use two definitions for cloud computing. Why two? The NIST definition doesn't address the business stakeholders' view of cloud computing. Their eyes glaze over when you talk about pooled resources, IaaS etc. For the business stakeholders I keep it simple: cloud computing is a pay-as-you-go service that provides access to technology services (applications etc.) over the Internet. I quickly turn to address the business stakeholder concerns. For example, what's the benefit, how does it impact the way I do my business, how do I get from here to there, what's the risk?
I do use the NIST definition when speaking with technical stakeholders. I also address the characteristics of cloud computing (e.g., pooled resources, on-demand/automated provisioning, elasticity, self-service and usage based chargeback (or showback)). I typically white board the cloud stack and highlight the characteristics that help them address the opportunities within their environment.
I wrote a white paper on the basics of cloud computing http://www.akilisystems.com/resource-center/ (not trying to promote it here). I use this document to establish a level set with customers on cloud computing: what it is, what's the value and what's the risk.
No matter what definition we use I think what's most important is that we understand what problem the customer is trying to solve, or what new service is enabled with cloud computing. Starting with an understanding of the customer and their needs is key in framing the cloud discussion.
While some view NIST's definition as a bit "bureaucratic," it is relatively concise (i.e., a two-page MS Word document, http://csrc.nist.gov/groups/SNS/cloud-computing) and a result of consensus across many parties. As a result, it is a great starting point for culling out a short definition
When asked what cloud computing is, I usually provide the following:
"There are a lot of buzzwords out there. "Cloud" is a buzzword of current popularity. Stepping back, true cloud computing provides computing services (be it applications, storage, or whatever) to you as a utility. You don't need to but hardware or commence IT projects to set up it. You pay for what you use, and no more. Like a utility, you can "turn up" or "down" what you need without complex projects, changes in your expected performance, etc."
Stepping back, a LOT of people claim to provide "cloud-based" services. Some of these are true clouds. Some are only ASPs pretending to be cloud providers. Others offer offer he configurability of SaaS but lack the expected "rapid elasticity" of what a real cloud offers (we have all been there, one part of the architecture is limited by a really big, multi-CPU database).
When I hear someone say they are a cloud provider, I use two acid tests (http://www.lagrangianpoints.com/2011/02/two-acid-tests-for-real-cloud-computing) to see if it meets my definition of a "true cloud":
The Self-Service Test: Can I do everything myself, or do I need their teams to do things. If I don't get self-service it is not a cloud? If their developers need to actually submit a software build to configure what I want, they are clearly an ASP
The Elasticity Test: Can I scale demand up by a lot (not 3x but 100x to support volume from a Super Bowl commercial or American Idol voting) -- either automatically or with a a few hours notice? Does my performance remain relatively constant (and my cost go down). If so, I am on a "true cloud." If not, I am only getting SaaS-based delivery.
"Cloud Technology" is a revolution in marketing, not technology. The IT world has played this game before with "Web 2.0". It's re-branding with the aim to create buzz and profit.
From the customer's perspective? Services and/or infrastructure located on the Internet.
Answer This Question