Looking out my window, I can see fluffy clouds floating by. I find myself wondering how I would feel if I knew my applications and data were stored in some great electronic nebula, a cluster of computers far away, possibly scattered around the globe communicating through thin copper and glass connections. Makes you go…hmmmm.
Thanks for indulging my philosophical moment. Cloud computing is classically categorized into three areas: Software as a Service (SaaS), Platform as a Service (PaaS) and Infrastructure as a Service (IaaS). SaaS and PaaS have been popular for quite some time; just look at Google Mail (SaaS) and Salesforce.com (PaaS) for great examples.
I think that the real excitement is Infrastructure as a Service (IaaS). I had recently attended a Gartner conference on Application Integration and enjoyed a fascinating presentation by Werner Vogels, CTO of Amazon, on how his company is not only virtualizing servers but also virtualizing relational databases and networks. The customer use-cases that he shared were astonishing; one customer, in particular, needed one thousand nodes to run complex pharmaceutical simulations and was able to accomplish it in terms of days rather than months. And, by the way, they did it for a microscopic fraction of the cost of creating or even renting a dedicated data-center.
IaaS changes the game for IT. It provides a way to deal with provisioning the resources you need, be they small (a few hundred servers) or grand (10,000 servers+), in an efficient and affordable way. The basic idea with Amazon’s IaaS approach is providing complete infrastructure capabilities, while billing on a “pay-as-you-go” model. You only pay for the infrastructure that you are actually using.
Now, stop and re-read that last sentence. That’s right; I stated: “You only pay for the infrastructure that you are using.” We are not just talking about server capacity when we speak of IaaS. We are also referencing virtualized databases and virtualized private networks. In our internal IT shops, don’t we consider our universe to be composed of servers, databases and networks?
IaaS is REALLY cool because it opens up a lot of opportunity for the business world, where IT resources may be limited or non-existent. Since it’s the holidays, let’s consider the use case of retailers who had to ramp up for their busiest season of the year. Our fictitious company, myRetailCo, needs to expand web-server and internal server capacity and even further bulletproof their networks against failures. In the old days, this meant spending money to buy additional servers, enter into extended service agreements with comm providers and such. But consider what is happening here; they were betting (yes, making a calculated guess) that they would need the additional capacity. If they didn’t need the capacity, they spent money directly from their bottom-line on resources that were unnecessary. Not to mention, all of the personnel time for configuration (which probably exceeded the cost of each system). Sure, they could deploy the servers on upcoming projects, but the money may not have had to be spent for six more months.
Now, what if myRetailCo could log into a web-site, provision one hundred servers and a virtual network using a credit card? In 1 day? And, here’s the best part, only pay for the capacity that they actually use!
Many IT pundits would argue that no one is going to put mission-critical apps in a cloud, but instead keep them behind the firewall. I’m not sure that I agree with that premise. The cloud offers platform-level fault-tolerance, backup capabilities and can even address multi-tenancy issues for single-tenancy applications. The use cases are plentiful; overflow capacity, disaster recovery… the list goes on. Migration of client-server apps is one of the most likely candidates, as a company ventures into adoption of a cloud strategy.
The immediate questions that come to mind are:
- Can the IaaS providers handle the influx of capacity-provisioning demands from a world hungry to add capacity inexpensively and reliably?
- Is the cloud model financially sustainable for IaaS providers?
- Will companies move their client-server applications to the cloud?
- What supportive technologies are available, now, to assist migration to the cloud?
It’s going to be very exciting to watch as the industry offers its answers…