The ‘cloud’ is definitely an often used (and misused) buzz word in today’s technology industry. So what exactly is a cloud? What is a cloud made of? Is it any different from hosting? These are some of the matters that I will address in this post.
So what is a cloud?
Wikipedia defines Cloud Computing as “internet-based computing, whereby shared servers provide resources, software, and data to computers and other devices on demand, as with the electricity grid. Cloud computing is a natural evolution of the widespread adoption of virtualization, service-oriented architecture and utility computing. Details are abstracted from consumers, who no longer have need for expertise in, or control over, the technology infrastructure “in the cloud” that supports them.” (retrieved Jan 6, 2011)
Let’s take a closer look and break it down a bit.
“…shared servers provide resources…”
So the cloud is made of shared servers working together in a manner that results in the abstraction of the underlying infrastructure from the user or the consumer.
The cloud is elastic, which means, it can scale to any extent to help you manage utilization “spikes”, just like an electricity grid. If your business application or website suddenly requires more resources or above normal utilization due to that marketing campaign you just launched, the cloud will be able to provision and make available resources to you “on the fly” during your time of need and then “de-provision” these resources when utilization is back to normal. Because the cloud abstracts the underlying infrastructure, this entire process is invisible to the consumer.
“…a natural evolution of the widespread adoption of virtualization, service-oriented architecture and utility computing.”
By now, you would have realized it. If you need shared servers working together, abstracted from the user, dynamically scalable to any business demand – you need virtualization. But, does simply having the leanest, meanest hypervisor in the market help you implement the cloud? No. It is as important that you have a robust management solution. If your abstracted infrastructure cannot understand how a utilization spike on your application looks like, how will you be able to provide “on demand” services to your users? If your cloud infrastructure does not have visibility on the health of your ‘service’, how can it predict or understand a need to scale up dynamically?
Without doubt, management is an indispensable component of the cloud. I explained this in greater detail in an earlier post.
This is why System Center, with components like Operations Manager, Virtual Machine Manager and Opalis are key players in your journey to hosting your own ‘private’ cloud.
“Details are abstracted from consumers, who no longer have need for expertise in, or control over, the technology infrastructure ‘in the cloud’ that supports them”
This re-affirms the abstraction of the underlying infrastructure. The business does not need to know what hardware, operating environment or hypervisor you’re running on. All the business cares about is the ‘service’. To be able to ensure availability the ‘service’ at any scale that the business requires dynamically, abstracting everything else is a key characteristic of the cloud.
Hosting vs. Cloud:
So is the cloud what my hosting provider offers me?
Well, it depends. Many hosting providers today state that they bring you the cloud. In reality, some of them actually do, others don’t. The key message here is that mere server hosting is not cloud. Only when the benefits I discussed above are realized, then behold — we have a cloud.
If your “cloud” hosting provider states something like they will give you a ‘dedicated’ HP blade server with 2.5GHz Processor, 4 GB RAM, 80 GB SAN storage, 80 GB backup storage, a dedicated Cisco firewall and a 1 TB monthly traffic included – chances are they have missed the cloud by a mile!
Why? Because they are simply not providing you a cloud – shared servers that provision resources on demand. Instead, they are just giving you a hosted server. There is no elasticity, no dynamic resource provision and no abstraction. In a real cloud, you wouldn’t know what hardware spec you’re running on, simply because it doesn’t remain constant – just as your business doesn’t remain constant.
Interesting. So why should I care about the cloud?
My colleague Michael Mansour lists out top 10 reasons why the cloud is changing the consumer and business landscape. His post is definitely worth a read.
‘Stop Press’ Humor: Wikipedia also defines ‘cloud’ as a visible mass of water droplets or frozen ice crystals suspended in the atmosphere. Certainly not the cloud we’re talking about!