Infrastructure as a Service

Infrastructure On Demand

Subscribe to Infrastructure On Demand: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get Infrastructure On Demand: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Managed Services Authors: Nick Basinger, Elizabeth White, Pat Romanski, Liz McMillan, Rajeev Gupta

Related Topics: Cloud Computing, Cloud Interoperability, Infrastructure On Demand, Cloudonomics Journal, SaaS Journal, Infrastructure 2.0 Journal

Blog Feed Post

Cloud Computing: Are You Looking for IaaS or PaaS Provider?

If you’re in the SaaS (Software as a Service) business, and are following the Cloud Computing trends, you really need to understand the difference between the offers. Of course, I’m not talking about Cloud, like Apple’s Mobile :), but only Cloud Computing.

As of today, we have at least 3 big players (Amazon, Google and Microsoft) and some other ones from smaller players (like GoGrid, Flexiscale and Mosso to name a few of them). What is really important when choosing a Cloud Computing Platform is to understand what they offer and how they are different from each others. Of course the pricing models can vary quite a lot, with some providers offering SLAs, some offering virtualized hardware whereas some others one mean real hardware, etc.

But more than that, what really matters is do you need an infrastructure or a plaform, or if you’re fond of acronyms, are you the IaaS guy or the PaaS one?

That question is really important as it’s not easy to switch from one to the other.

Let’s explain the difference by analyzing the Cloud Computing offers from the 3 big players named above.

Google, through it’s App Engine offer, enable you to host your websites and your data on the Cloud and enable you to use some of their successful services like BigTable. What is important to understand is their pricing model and their APIs/Services. Two things are important to note :

  • You can only host Python applications (erh… web applications) as of today and you pay per bandwidth, storage and CPU used for hosting this web application,
  • You can easily integrate with other Google Services and Google Accounts.

Microsoft, offers a way to host your .Net applications on the Cloud with a pricing model yet to be officially announced, and offers integration with some Microsoft services/applications.

Amazon on the other end, does not offer a way to host your web applications out-of-the-box on the Cloud, but simply provide virtualized hardware on which you can do whatever you’d like to (well, as usual it’s it a bit more complex than that, but that’s pretty much it).

So basically, Google and Microsoft offers are PaaS solutions: they offer a Platform on which you can deploy your applications. On the other end, Amazon offers an IaaS solution: an Infrastructure which you can use.

So your choice has to be made carefully and need to analyze:

  • Vendor Lock-in: if you deploy on Google or Microsoft Clouds, you make a choice on both technologies and with which services you’d like to integrate,
  • Ease of Use: deploying a web application is easier to do than deploying and managing a complete infrastructure,
  • PaaS or IaaS: do you want the Cloud Provider to offer you a way to host your applications (if you can accomadate with their technical restrictions) or an infrastructure allowing you to host your applications (without restrictions) the way you want?

I guess, it must be quite clear from this blog post that I’m not really fond of PaaS. Surely IaaS means more work for the customer, but you’re the one in charge of that virtualized infrastructure, allowing you to deploy complex applications on the Cloud, something I guess most of the time you won’t be able to do with the PaaS approach.

On the other end, if your goals are integration with Google and Microsoft services and you want to make sure you Gadget (don’t know the word for Microsoft sites) can scale, then it makes sense to deploy on those platforms.

Reblog this post [with Zemanta]

Read the original blog entry...

More Stories By Jerome Bernard

Jerome Bernard has over eight years experience developing distributed applications applied to a wide range of applications from banking to insurances as well as distributed applications using Jini. He is a committer on many OSS projects like Elastic Grid, Rio, Typica and JiBX. He is currently working on Elastic Grid, an OSS project which focuses on the productivity of developers and organizations that use Java enterprise applications, enabling them to easily deploy, manage and scale applications running on virtualized compute assets, whether that be across public or private clouds, like Amazon EC2.