Eucalyptus, CloudStack, OpenStack and OpenNebula: A Tale of Two Cloud Models

Over the last five years, since the release of the first open-source version of OpenNebula in March 2008, we have been involved in many presentations, discussions and meetings where people wanted to know how OpenNebula compares with the rest of open-source Cloud Management Platforms (CMPs), mostly with Eucalyptus and OpenStack. The most common understanding is that all CMPs are competing in the same market, trying to fill the same gap. Consequently, people jump to the wrong conclusion that after years of a fierce competition, there will only be one winner, a single open-source CMP in the market. However, as discussed by Joe Brockmeier in his post “It’s Not Highlander, There Can Be More Than One Open Source Cloud”, there is room in the market for several open-source CMPs that, addressing different cloud niches, will fit together into a broad open cloud ecosystem.

We have prepared this article to briefly describe our experience about the different types of cloud models, and our view about how the main open-source CMPs are targeting their needs. Do not expect a table comparing side-by-side the size of the communities, technical features of the different tools, or the management structure of the projects. We have tried to focus only on their general approaches, on their overall position in the cloud market, and, of course we have tried to be as neutral as possible.

Two Different Cloud Models

Although there are as many ways to understand cloud computing as there are organizations planning to build a cloud, they mostly fall between two extreme cloud models:

  • Datacenter Virtualization: On one side, there are businesses that understand cloud as an extension of virtualization in the datacenter; hence looking for a vCloud-like infrastructure automation tool to orchestrate and simplify the management of the virtualized resources.
  • Infrastructure Provision: On the other side, there are businesses that understand cloud as an AWS-like cloud on-premise; hence looking for a provisioning tool to supply virtualized resources on-demand.

Yes, we know, we said that we wanted to focus only on open-source CMPs. However we have intentionally used two of the principal cloud “products”, VMware vCloud and AWS, a proprietary CMP and a cloud service, because they are the most well known implementations of both models. We will go even a step ahead and claim that most of the users in the first cloud model explicitly express their willingness to find an open alternative to vCloud because it is too expensive, because they want to avoid vendor lock-in, or because it cannot be adapted to meet their needs. Equally, users in the second cloud model explicitly mention Amazon as the type of cloud they want to build internally.

The following table describes the main characteristics of both types of clouds. This is not an exhaustive list, I’m just putting it here to illustrate some of the differences between both philosophies.

Datacenter Virtualization Infrastructure Provision
Applications Multi-tiered applications defined in a traditional, “enterprise” way “Re-architected” applications to fit into the cloud paradigm
Interfaces Feature-rich API and administration portal Simple cloud APIs and self-service portal
Management Capabilities Complete life-cycle management of virtual and physical resources Simplified life-cycle management of virtual resources with abstraction of underlying infrastructure
Cloud Deployment Mostly private Mostly public
Internal Design Bottom-up design dictated by the management of datacenter complexity Top-down design dictated by the efficient implementation of cloud interfaces
Enterprise Capabilities High availability, fault tolerance, replication, scheduling… provided by the cloud management platform Most of them built into the application, as in “design for failure”
Datacenter Integration Easy to adapt to fit into any existing infrastructure environment to leverage IT investments Built on new, homogeneous commodity infrastructure

This classification of existing cloud models is not new. The “Datacenter Virtualization” and “Infrastructure Provider” cloud models have received different names by different authors: “Enterprise Cloud” and “Next Generation Cloud” by many analysts, “Cloud-in” and “Cloud-out” by Lydia Leong, “Enterprise Cloud “and “Open Cloud” by Randy Bias, “Enterprise Cloud” and “Private Cloud” by Simon Wardley, “Private Cloud” and “Public Cloud” by Matt Asay, and “Policy-based Clouds” and “Design for fail Clouds” by Massimo Re Ferrè, who also categorized these models as “Design Infrastructure to support Applications” versus “Design Applications that leverage Infrastructures”.

Two Different Flavors of Cloud Management Platforms

Existing open-source CMPs can be placed somewhere in between both models. We have created a chart, the CMP Quadrant, aiming to aid corporations to better understand the present and future landscape of the cloud market. One of the dimensions is the “Cloud Model” and the second one represents “Flexibility” in terms of the capabilities of the product to adapt to datacenter services and to be customized to provide a differentiated cloud service. This dimension captures the grade of adaptability of the product, and goes from low to high. Finally, we have placed in the chart the main open-source players in the cloud ecosystem: Eucalyptus, CloudStack, OpenStack and OpenNebula… or at least those tools that are commonly compared to OpenNebula by our users and customers.

Some important clarifications,

  • We are not suggesting that one position (read “tool”) in the chart is better than other, only that some of the CMPs are so different that cannot be compared, they are on completely different tracks (read “zones in the Quadrant”).
  • The chart does not represent absolute values, the relevant information is in the relative positions of the CMPs with respect to their “Cloud Model” and “Flexibility”.
  • The openness of the software is orthogonal to this chart, you can also use it to compare proprietary CMPs.
  • Any CMP can be used to build either public or private clouds, all of the CMPs in the Quadrant implement cloud APIs.
  • And last, but not least, this map is not static, the different CMPs will move right, left, up or down over time, but they cannot be simultaneously in different places. There is not a single perfect solution for every possible scenario.

Comparing vCloud to AWS or comparing vCloud to OpenStack is like comparing apples to oranges as it has been clearly expressed by Massimo Re Ferrè and Boris Renski respectively. Both are fruits but with very different flavor. That being said, it is clear that since all the tools enable infrastructure cloud computing, there is always some overlap in the features that they provide. This overlap tends to be larger for those tools that are closer on the “Cloud Model” axis.

There are fundamental differences in philosophy and target market between OpenNebula and Eucalyptus They are in opposite zones of the Quadrant servicing different needs and implementing completely different philosophies. I would say that they represent the open-source incarnations closer to vCloud and AWS respectively. In the same way many companies compare OpenNebula with OpenStack because both represent flexible solutions that can be adapted to their needs, but wrongly think that both enable the same type of cloud. It is also clear that Eucalyptus and OpenStack meet the same need and so compete for the same type of cloud.

Looking to the Future

In OpenNebula, we do not think that one cloud model will dominate over the other. They may converge at the very long term, but not before 10 years. Consequently, and because a single CMP can not be all things to all people, we will see an open-source cloud space with several offerings focused on different environments and/or industries. This will be the natural evolution, the same happened in other markets. The four open-source CMPs will coexist and, in some cases, work together in a broad open cloud ecosystem.

To a certain extent, this collaboration has started yet. Some of our users have reported experiences using OpenNebula with other cloud platforms:

  • Some corporations are mixing an Enterprise Cloud with an in-house Cloud Service. They are implementing a cloudbursting architecture where an OpenNebula enterprise cloud bursts to an OpenStack- or Eucalyptus-based cloud when the demand for computing capacity spikes.
  • Other corporations are using components from different projects to build their cloud. The integration capabilities of OpenNebula are allowing its integration with OpenStack Swift or OpenStack Quantum for object/block store and networking management respectively in the data center.

We are sure that in the short term we will see some of the open-source CMPs working together, while at the same time finding ways to differentiate themselves in their own cloud markets.

10 replies
  1. Ahmed Kamal
    Ahmed Kamal says:

    Great article Ignacio! I find with my customers that it usually depends on how much the customer is willing to:
    - Re-architect applications
    - Embrace and design for failure

    and accept xaaS model, vs the other end of sprinkling management sugar on existing traditional app. At http://cloud9ers.com/ many customers do not want to go the AWS route, although I believe in the longer term it should be “better” FWIW

Trackbacks & Pingbacks

  1. […] Open source cloud OS and cloud models […]

  2. […] Although there are as many ways to understand cloud computing as there are organizations planning to build a cloud, they mostly fall between two extreme cloud models: […]

  3. [...] understood enterprise cloud computing as en evolution of data center virtualization to host both cloud-aware and traditional applications. So we aimed to combine existing virtualization technologies with multi-tenancy, automatic [...]

  4. [...] described in a previous post our experience about the different types of cloud models, and our view about how the main open-source Cloud Management Platforms (CMPs) are targeting their [...]

  5. [...] 怎样用好Eucalyptus? By qyjohn, February 24, 2013 10:24 am 来自OpenNebula项目的Ignacio M. LIorente最近发表了一篇题为EUCALYPTUS, CLOUDSTACK, OPENSTACK AND OPENNEBULA: A TALE OF TWO CLOUD MODELS的博客文章,从应用场景的角度分析了Eucalyptus、CloudStack、OpenStack和OpenNebula这四个云管理平台的不同点。Ignacio认为VMWare vCloud和AWS分别代表了数据中心虚拟化和按需获取计算资源的两种典型的应用场景,如上所述四个开源云管理平台基本上都是以VMWare vCloud或者AWS为参考原型但是在实现细节上又与参考原型有所差别。Ignacio将开源云平台与其参考原型之间的差异之处称为灵活性(Flexibility),并以数据中心虚拟化、按需获取计算资源、低灵活性、高灵活性为四象限将如上所述四个开源云管理平台放到不同的位置(如下图所示)。Ignacio进一步指出这个图例并不是为了说明某个开源云平台优于其他开源云平台,而是为了说明不同的开源云管理平台适用于不同的客户需求以及不同的应用场景。以目前的状况而言,私有云市场规模很大,客户需求以及应用场景之间的差别很大,并不存在一个能够通吃所有应用场景的云管理平台。未来Eucalyptus、CloudStack、OpenStack和OpenNebula这四个云管理平台之间既有竞争也会有合作,并在这种竞争与合作并存的关系中找准适合自己的市场和客户。 [...]

  6. [...] solidify OpenNebula’s positioning versus its rivals. If you want to delve into that, he wrote another blog post this week that includes this handy [...]

  7. [...] solidify OpenNebula’s positioning versus its rivals. If you want to delve into that, he wrote another blog post this week that includes this handy quadrant: Source: OpenNebula Related researchSubscriber [...]

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *


4 × one =

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>