我们用这篇文章来简单的描述下我们在不同的云模型上的使用经验,以及我们对于主要的开源CMPs的观点。不要指望我们会放在一起来并排比较社区的大小,不同的工具的技术特征,或者项目的管理架构。我们试图只专注于他们的一般的处理和在整体云市场的位置,当然,我们也会尽可能的保持中立态度。
两种不同的云模型
虽然有很多方式来理解云计算,也有很多构建云的机构,但是他们大都介于两种极端的云模型之间:
- 数据中心虚拟化(Datacenter Virtualization): 一方面,有些商家把云作为数据中心的一个虚拟化扩展;因此,他们寻求一种像vCloud的基础自动化工具来管理和简化虚拟化的资源。
- 基础设施供应(Infrastructure Provision): 另一方面,有些商家则把云
当做像AWS一样的内部云;因此他们寻求一个配置工具来支持随需应变的虚拟化资源。
下面的表格描述了两种不同类型云的主要特性。这不是个详单,我列出这些只是想说明两者不同的设计哲学。
Datacenter Virtualization | Infrastructure Provision | |
---|---|---|
应用 | 在传统方式中定义一个多层应用,“企业”方式 | “重构”适合云范式的应用 |
接口 | 功能丰富的API和管理入口 | 简单的云APIs和自助入口 |
管理能力 | 虚拟和物理资源的完整生命周期的管理 | 底层基础设施抽象的虚拟资源的简单生命周期管理 |
云部署 | 大部分私有 | 大部分公有 |
内部设计 | 由数据中心复杂性自下而上的设计 | 由云接口的高效实现自上而下设计 |
企业应用能力 | 高可用,强容错,副本集,调度任务···通过云平台提供 | 它们大多数构建到应用程序中,像“错误的设计” |
数据中心继承 | 很简单的适配与任何存在的基础设施环境 | 建立在新的,同类商品的基础设施上 |
两种云管理平台的不同特色
现有的开源的CMPs可以放置在两种模式间。我们创建了一个图表,CMP象限,旨在帮助企业更好的了解现在和未来的云市场前景。一个维度是“云模式”,第二个维度代表“灵活性”,按照产品对数据中心服务的适应性和自定义性提供一个分化型的云服务,这个维度从低到高表示了产品适应性的等级。最后,我们在图表中放上主要的云生态系统开源产品:Eucalyptus, CloudStack, OpenStack 和 OpenNebula….或者那些用户通常用来和OpenNebula比较的工具。
一些重要的说明,- 在这个图中我们不比较各个“工具”间的好坏,因为一些CMPs相比有很多不同,所以他们也就具有了不同的轨道(在象限中的区域).
- 这个表中表示的不是绝对的值,相关信息表示的是CMPs的“云模型”和“灵活性”的相对位置。
- 在软件开放性方面这个图中是相交的,你也可以用它来比较私有的CMPs。
- 任何CMP都可以用来构建私有或者公有的云,在图中所有的CMPs都继承自云APIs。
- 最后,但并非不重要的,这个图不是静态的,不同的CMPs将随着时间左右上下移动,但是他们不能同时在不同的地方。对每个可能的场景没有一个完美的解决方案。
比较vCloud 到 AWS 或者比较 vCloud 到 OpenStack 就像是比较苹果到橘子一样,正如,Massimo Re Ferrè 和Boris Renski分别的表达的一样。虽然都是水果但口味不同。那就是说,由于所有的工具都是使用来做云计算,那么必然在提供的功能上有些重叠性。这种重叠往往比那些工具更接近“云模式”的轴线。
在设计理念和目标市场上OpenNebula 和Eucalyptus有些根本上的不同,他们在象限的相反区域服务于不同的需求和继承与不同的理念。他们代表接近于vCloud 和AWS的开源软件的化身。同样地很多公司比较OpenNebula 和OpenStack因为它们都代表着厂商对于灵活性的需求,因此错误的认为它们都能使用同一种类型的云。
展望未来
在OpenNebula中,我们不认为一种云模型将能支配其他的,他们或许会在很长一段时间内聚集在一起,至少十年吧。因此,由于一个单独的CMP不能满足所有人的需求,我们看到一个带有多个产品的云空间聚集于不同的环境和行业。这是自然进化,同样也发生其他市场上。这四个开源的CMPs将共存,在某些情况下还会一起工作在一个广阔的云生态系统上。
- 一些企业使用混合的企业云作为私有云服务。他们正在实施一种云架构,当计算能力飙升时使用OpenNebula企业云结合OpenStack- 或者 Eucalyptus-基础云.
- 其他一些公司使用来自于不同工程的组件构建云,OpenNebula的集成功能允许它使用OpenStack Swift 或者OpenStack Quantum作为一个数据中心存储块和网络管理集成在一起.
我们确信短期内我们将会看到一些开源的CMPs工作在一起,同时寻求自己在云市场的不同位置。