OpenStack has gotten a lot of attention the past few months.  As well as it should as it’s an ambitious project.  The question that I constantly ask, “What is the impact to the enterprise of these IaaS solutions.”  In theory when the OpenStack project is mature I should be able to move workloads from my private cloud to an OpenStack provider’s public cloud using my OpenStack console.   But the maturity of the OpenStack platform isn’t there which got me thinking of a bigger question.  Is Infrastructure as a Service (IaaS) as a platform something I can move my existing enterprise services?

There’s no doubt that PaaS, and SaaS solutions have a place in the traditional enterprise. If you are looking for a new ERP, a great case can be made for either PaaS or SaaS. However, when you look at traditional enterprise workloads that you want to implement or migrate to a IaaS provider the story changes considerably.

I consider the traditional enterprise as a medium to large organization with an established IT system. When you look at this definition I’m hard pressed to find a use case for moving workloads from the enterprise data center to a IaaS cloud.  Before, I get the folks at HP Cloud, Rackspace and VMware worked up let’s take a look at the fundamentals of IaaS and what use cases they apply best.

Cloud Definition
First let’s take a look at what defines a cloud service.  For a service to be considered a cloud offering it must have the following attributes:
- Elastic
- User Self Service
- Accessible via a broadband service
- Built on shared resources
- Measured Service

When we look at IaaS, Amazon’s AWS fits nicely into this definition.  It’s definitely elastic as it’s one of their biggest selling points.  In respect to self service if you have an e-mail address and credit card you can spin up an instance without ever talking to anyone.  It’s accessible via broadband including VPN type networks.  It’s built on a shared infrastructure and most importantly it’s a measured service.

One of the major perceived advantages to cloud computing is cost.  The nature of the applications residing on IaaS are different from those of PaaS and SaaS.  SaaS especially lends itself to a “pay for what you use” model. If you have 1000 e-mail accounts today you pay for 1000 e-mail accounts.  If that changes to 900 e-mail accounts you pay for 900 e-mail accounts.   AWS has this same model for IaaS.  If you need 300 Ghz of CPU and 1TB of storage for an hour  you pay for only the 1 hour of use.  The problem is that this model is geared toward cloud aware applications and developers.

If I have an application that benefits and is designed to take advantage of multiple instances then the AWS model works well.  For example during periods of high demand, I can spin up 10 more instances of my application server.  When the demand subsides, I turn off the instances.  Thus, I don’t have to build out for my surges and therefore save costs on overall compute.  But traditional enterprise applications are not built this way.  Generally speaking, if I need to go from supporting 1,000 users to 1,500 users I upgrade my server and become stuck with this fixed asset until I replace it.   Also, to take advantage of paying only for the CPU, Memory and Storage that you are using the virtual instance must not be running.  If we take a look at a traditional enterprise service like a simple file server, how often do you turn off your file server?  What about your messaging server or utility database servers?

These two attributes of the existing enterprise systems are examples of why IaaS isn’t making headway in the Enterprise.

The Enterprise Needs a New IT Service Model 

The problem isn’t the IaaS model.  The problem is that we try and shoe horn an old service model into a new delivery mechanism.  When looking at your workload the idea isn’t “Will running my existing messaging service in IaaS be cheaper/more reliable?”  The question is how do I want to provide messaging to my end users?  When you answer that question you can then begin to look at different delivery methods that may include IaaS, PaaS or SaaS.  We have to change our way of thinking around these traditional services to reap the benefits of cloud computing.

Your thoughts?  Have you dismissed cloud computing due to it’s perceived costs vs. self-hosting?

Tagged on:                                 

5 thoughts on “Does the Enterprise have a use for OpenStack and IaaS?

  • August 8, 2012 at 5:58 pm
    Permalink

    I agree with your conclusion:

    “The problem is that we try and shoe horn an old service model into a new delivery mechanism.”

    What we are seeing isn’t so much a migration from physical servers to virtual servers, but a change in the way we treat computing resources. IaaS has the highest cognitive barrier right now, because on the surface it *seems* like an easy comparison. “A compute instance is like virtual server hardware.”

    The Eureka! moment for me was when I realized that I no longer think of compute instances as permanent. Sometimes they live for a very long time, and sometimes they serve there purpose in a few hours or even a few minutes. At that moment, I stopped treating them like hardware.

    But IaaS has more to offer than compute, too. Object storage is a game changer for people (like me) who heavily develop outward-facing applications. We can store assets in object storage, use CDN to accelerate delivery, and have happier, more satisfied customers (and partners) without increasing our own maintenance load.

    Reply
    • August 8, 2012 at 8:00 pm
      Permalink

      Object oriented storage is a great feature that can be a game changer in the enterprise. I’m anticipating more off the shelf or SaaS products levering object oriented storage once standards are common across clouds.

      Reply
  • August 10, 2012 at 11:23 pm
    Permalink

    The assumption here is that users want to move their existing applications to cloud platforms. This is more appropriate if you are considering IaaS because they are easier to translate 1:1 i.e. you replace a physical device with a virtual device. What is more difficult is migrating an existing application to a PaaS. Using a PaaS makes a lot of sense for new projects but the nature of having to develop a specific way means it’s probably more work to move an existing project.

    Reply
    • August 12, 2012 at 1:03 pm
      Permalink

      Thanks for commenting David. You are right that PaaS makes a lot of since when developing a new application. Most cloud solutions lend themselves to new applications or efforts.

      Reply
  • Pingback: Understanding VMware vCloud vs. Openstack – Virtualized Geek

Leave a Reply

%d bloggers like this: