CloudStack、OpenStack等四大云平台评测

软件产品开发公司Altoros Systems的IT基础设施设计师Vadim Truksha在美国《网络世界》上发表一篇文章,详细对比了CloudStack、Eucalyptus、vCloud Director和OpenStack等四个云平台。文章全文如下:

考虑到云计算有极大的潜力提高效率,显著节省成本,实现可升级的基础设施和高性能以及安全的数据存储,云计算仍然是目前IT领域最热门的话题之一。

然而,选择合适的云平台是很困难的。这些云平台都有支持意见和反对意见。因此,Truksha说,当一个客户问我和我的同事‘适合他的项目的最好的云平台是什么’的时候,我们决定深入考察现有的一些最著名的云平台,对比一下它们的功能并且在一个逐个排列的产品表格中总结研究的结果。我们测试了CloudStack、Eucalyptus、vCloud Director和OpenStack等四个平台。

下面你们将发现免费版和商业版云平台提供的功能、产品价格、说明文件的完整性和社区成熟度等信息。此外,在部署过程中发现的错误已通过修复瑕疵的详细指令修复了。

这个无偏见的对比的目标旨在帮助人们使自己的业务需求符合特定的云系统的能力, 并且最终选择最合适的产品。

CloudStack 3.0.0

CloudStack是一个管理数据中心计算资源的控制台。Zynga、诺基亚研究中心和Cloud Central等许多知名的信息驱动的公司已经使用CloudStack部署了云。除了拥有自己的API(应用程序编程接口)之外,这个平台还支持能够把一个亚马逊API转变为CloudStackAPI的CloudBridge Amazon EC2。你可以在这里查看一个详细的支持的指令列表。网址是:http://docs.cloudstack.org/CloudBridge_Documentation/Supported_Amazon_EC2_Commands_in_CloudBridge

主要特点:

- 不依赖于任何管理程序(KVM、XEN、ESXi、OVM和BareMetal)

- 任务(分配和管理权限)

- 虚拟网络(支持虚拟局域网)

- 资源池(让管理员限制虚拟资源,例如,限制一个账户创建的虚拟机的数量以及分配给一个账户的公共IP地址的数量,等等)

- 快照和卷

- 虚拟路由器、防火墙和负载均衡器

- 使用主机维护进行动态迁移

如果你们的数据中心以vSphere为基础,CloudStack将使用一个vCenter API。这意味着你将能够管理使用vSphere 4.1动态部署的数据处理中心。

价格:CloudStack将根据GNU Public License v3(GNU公共许可证第三版)免费发布。要获得付费的技术支持,你应该通过电子邮件与开发者联系。

社区:有一个在线社区免费提供及时的技术支持。你可以在论坛中找到许多CloudStack问题的解决方案。还有一个IRC(互联网中继聊天)频道,欢迎每一个人提出问题。

说明文件:如果你有基本的技术背景,你使用默认设置安装CloudStack平台是很容易的。如果需要更复杂的安装,你会遇到一些难题,因为说明文件不包含全部的复杂问题。这个手册提供一步一步的指令,但是没有提供这个平台总体如何运行的任何信息。

体验:我们实施了这个系统的安装和设置并且实验了VMware和KVM集群。这些主机使用CentOS 5.5和CentOS 6.2。此外,我们的工程团队把使用CloudStack部署的私有云连接到了RightScale管理控制台。这个平台很容易安装并且像预期的那样执行任务。

可能的问题和瑕疵补丁:当使用CentOS 6的时候,在运行libvirtd时会出现一些错误。在/etc/cgconfig.conf文件中增加如下代码可以解决这个问题:

group virt {

cpu {

cpu.shares = 9216;

}

}

在输入这个代码之后,重新启动/etc/init.d/cgconfig并且启动libvirtd。

在网站使用这个控制台也会产生一些问题。其中一个问题是vnc(虚拟网络计算机)服务器把127.0.0.1当作这个主机的默认的地址。要检查这个问题,执行下列指令:

netstat -nlp | grep kvm

tcp 0 0 0.0.0.0:5900 0.0.0.0:* LISTEN 11673/qemu-kvm

tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 11872/qemu-kvm

tcp 0 0 0.0.0.0:5902 0.0.0.0:* LISTEN 15227/qemu-kvm

tcp 0 0 0.0.0.0:5903 0.0.0.0:* LISTEN 12587/qemu-kvm

一旦这个地址是127.0.0.1,你应该在/etc/libvirt/qemu.conf配置文件中取消这行批注vnc_listen = "0.0.0.0" ,并且重新启动虚拟机。

结论:使用CloudStack管理控制台工作给我们的工程团队留下了深刻印象。这是一个提供广泛功能的迅速发展的工具,并且是免费提供的。它可以用于生产。但是,如果你使用VMware管理程序性,vCloud Director似乎是更好的选择。

Eucalyptus Open Source 2.0.3

Eucalyptus是另一个流行的云平台。索尼、Puma、美国航天局、趋势科技和其它公司已经选择利用它部署自己的私有云。Eucalyptus有免费版和商业版。商业版显然有更多的扩展功能。

使这个平台使用更方便的最大的优势之一是Eucalyptus API全面兼容亚马逊API。因此,基于亚马逊API的所有的脚本和软件产品都可以轻松地为你的私有云部署。Eucalyptus支持三个管理程序:XEN、KVM和ESXi。最后一个管理程序仅向企业云版用户提供。

主要特点:

- 任务(分配和管理权限)

- 不依赖于任何管理程序。

- 集群与分区。

- 灵活的网络管理、安全组和流量隔离。

价格:你可以选择开源软件的免费Eucalyptus云和Eucalyptus企业云。这里有关于功能差别的信息,网址是:http://www.eucalyptus.com/products/eee/features

社区:与其它开源软件社区一样,Eucalyptus有一个强大的设计,为这个平台的开发做出贡献并且帮助发现和修复瑕疵。我们在安装和设置这个产品的时候没有遇到任何困难,因此,我们不能评价这个社区有多大帮助。不管怎样,他们在开发这个产品方面做得非常好。

说明文件:产品说明书包含安装过程,但是没有提供使用这个软件工作的任何其它信息。潜在的用户应该有很强的技术背景,因为如果需要复杂的设置,这个指南没有提供有关虚拟化的信息,因此用处不大。

体验:我们的团队安装了这个平台的开源软件版,并且按照说明书提供的指令设置了这个平台。我们为云控制器使用CentOS 5.5,为主机使用CentOS 5.5和XEN管理程序。我们的云成功地添加到RightScale云管理平台。开源版本没有管理控制台,因此,你必须使用euca2tools或者把Eucalyptus和RightScale结合在一起。这个产品的商业版确实有一个管理控制台,从而使它对用户更友好。

可能的问题和瑕疵补丁

1. 一些附属程序不能依次安装。作为这个问题的解决方案,我们以软件包的方式一次安装这些程序。

rpm -Uvh python25-2.5.1-bashton1.x86_64.rpm

error: Failed dependencies:

libpython2.5.so.1.0()(64bit) is needed by python25-2.5.1-bashton1.x86_64

解决方案:

rpm -Uvh python25-2.5.1-bashton1.x86_64.rpm python25-devel-2.5.1-bashton1.x86_64.rpm python25-libs-2.5.1-bashton1.x86_64.rpm

2. 在安装完成之后,当启动控制器的时候可能出现如下错误:

/etc/init.d/eucalyptus-cc start

Starting Eucalyptus cluster controller:

Enabling IP forwarding(13)Permission denied: make_sock: could not bind to address [::]:8774

(13)Permission denied: make_sock: could not bind to address 0.0.0.0:8774

no listening sockets available, shutting down

Unable to open logs

Failed to start the CC!

要解决这个问题,应该关闭Selinux。

3. 如果你没有充分的使用XEN的体验,你在使用它的时候会遇到一些问题。在安装XEN完成之后,在装载到XEN内核的/etc/grub/menu.lst设置文件中,这个参数值“默认 = 1”应该改为“默认 = 0”。

4. 还要在CentOS中创建一个名为“libvirt”的组并且为这个组增加一个账户以便运行Eucalyptus。

结论:虽然开源软件版有许多问题,但是,有一些简单的绕过措施。此外,商业版提供了广泛的功能(VMware管理程序工具、兼容亚马逊AWS、AD和LDPA集成等等)。已经拥有虚拟化环境的用户能够使用Eucalyptus云增强自己的虚拟化环境,不用完全迁移到Eucalyptus。

vCloud Director 1.5

vCloud Director是VMware开发的用于部署云的平台。这个系统可以建立混合云。如果你的办公室的整个基础设施是使用VMware产品建立的,你在部署vCloud Director的过程中将不会遇到困难。你可以使用VMware vCloud Connector在私有云和公共云之间迁移虚拟机。

重要特点:

- 虚拟数据中心

- vShield安全技术

- 基础设施服务目录

- 多租户机构

- 自助服务门户

- VMware vCloud API、开放虚拟化格式和标注

价格:遗憾的是这个产品没有免费版。你必须与地区经理联系以便找到满足你需求的软件包的大致价格。

社区:VMware是这个市场的领导者之一,有一个庞大的社区。还有一个丰富的知识库,可用于免费的技术支持服务。这个产品有一个技术支持软件包。该公司还根据需求提供额外的付费技术支持。

说明文件:专有软件通常配置高质量的说明文件。这个平台也不例外。如果你认真遵守这个指南中提供的全部指令,就不会有困难。

体验:我们成功地安装和配置了vCloud Director。应该指出的是,为了安装这个平台,需要Red Hat。你安装这个平台需要的其它事情还包括vCenter (带集群和DRS)和vShield。

vCloud Director明显地使用vCenter API。这意味着vCloud Director的用户已经使用了vSphere中实施的全部功能。

结论:这是一个商业性产品。这对于一些用户来说是一个巨大的弱点。然而,如果你已经使用VMware用于虚拟化,vCloud Director将是最合适的选择。

OpenStack 2011.3

OpenStack 2011.3是用于部署云的一个开源软件平台。这个项目包括三个产品:Nova (类似于亚马逊的EC2)、Swift (类似于亚马逊S3)和Glance(一种为虚拟硬盘镜像提供发现、注册和交付服务的API服务器)。在我们的研究中,我们仅使用Nova。但是,你应该密切关注Swift。Swift为可访问的许多PB(1PB = 100万GB)数据提供可扩展的对象存储。包括CloudStack 3在内的许多厂商都支持OpenStack 2011.3。

目前,Nova全面支持两个管理程序:KVM和XEN。这个平台正在迅速地开发并且很快将提供更广泛的功能。这个技术在专业人员的大型社区是非常流行的并且得到了思科、戴尔、美国航天局、英特尔、AMD、思杰、Rackspace和RightScale等公司的支持。这个产品的核心是美国航天局开发的。

主要特点:

- 能够管理虚拟化的商品服务器资源

- 能够管理局域网

- 虚拟机镜像管理

- 安全组

- 基于任务的访问控制

- 项目与配额

- 通过网络浏览器的VNC(虚拟网络计算机)代理

价格:OpenStack 2011.3是开源软件并且能够免费下载。这个项目是各种贡献者开发的,而且其存在主要依靠用户的捐献。

社区:与本次研究提到的其它产品相比,OpenStack似乎拥有最大的和最活跃的社区。社区的成员总是愿意帮助其他人找到出现的任何问题的解决方案。

说明文件:然而,OpenStack的说明文件有些不完整。由于产品的迅速开发,这个说明文件不能及时地覆盖所有当前的问题和新特点。你必须经常访问论坛或者使用IRC得到需要的信息。

体验:我们成功地安装和设置了Nova、基础和控制面板,没有遇到任何重要问题。

结论:这个开源软件平台是免费的,是非常迅速地开发的。它展示了许多进步,但是,在它用于生产之前还需要许多的开发努力。OpenStack 2011.3已经兼容亚马逊API。这个控制面板项目目前正在考虑之中。

总结

如果你决定把你的业务迁到云中,你遇到的首要任务之一是选择一个最适合你的公司需求的平台。虽然也许很难理解厂商在营销说明中的承诺是什么意思,但是,我希望本文将提供一些帮助。这个研究是使用所有的云产品的结果,不是促销任何系统。

没有任何灵丹妙药。甚至最佳的云平台(如果存在的话)都很难满足所有的需求和使用案例。对于特定类型的业务来说,你需要调查全部有关的因素,定义你的典型任务,计算风险,分配预算,对比这个平台的能力和许可证成本。这将是一个妥协,无论你怎样看它。这个事情是一定要保证你在一开始就做出尽可能最好的选择。



ackspace和NASA近日联手推出的云计算软件堆栈OpenStack在开源软件与云计算业界激起阵阵涟漪。简单来说,OpenStack为那些希望给用户提供云服务的托管供应商们创造了进入云计算领域的机会,就像Parallels Virtuozzo为Web托管公司开发了虚拟化私有服务器。

  随着对实际云计算与IaaS背后安全问题的理解逐渐加深,OpenStack为用户在将业务迁移到私有云或公共云之前提供了安全方面的自助云服务和私有测试实验室。在云计算业界,OpenStack虽然被誉为是最重要的产品,但同样存在缺陷。

  想搭上云计算供应商Amazon这艘航母吗?那么,你就需要转向市场上 的另一款开源云计算产品Eucalyptus。Eucalyptus推出已经有3个年头了,对于IaaS产品而言算是不短的时间了。Eucalyptus 最初源于圣巴巴拉市(Santa Barbara)加州大学计算机科学院的一个研究项目,到2009年它成为盈利型项目。

  Eucalyptus的优势

  首先,Eucalyptus的一大优势就是自身的开源软件组件无需修改即可使用,这也意味着它可以轻松地运行在没做修改的GNU Linux内核上。Ubuntu的内嵌云计算平台同样也是基于Eucalyptus的,下载后即可安装使用,操作起来更是非常的方便。

  但这些都不足与Eucalyptus最大的优势相提并论:它设计了与Amazon的EC2平台兼容的开放编程接口(API)。这意味着一家评估 EC2的公司可以在免费的操作系统上使用免费软件来构建相互兼容的测试实验室。同样Amazon的用户,也可以在将工作移向实际云环境之前采用 Eucalyptus从事开发工作。此时的Eucalyptus更是减轻了决策者对于云计算的忧虑。

  有趣的是,Eucalyptus也曾被NASA加利福尼亚州的Ames研究中心应用到Nebula平台项目上来,直到碰到Eucalyptus 部分未开源部分才迫使他们放弃了Eucalyptus。最初的问题仅仅是扩展性问题,这也是大部分产品最初都会遇到的问题,但是Eucalyptu与 NASA的裂痕发展到无法挽回的地步,却是因为NASA发现Eucalyptus不愿向该项目提供解决扩展性问题的代码,即便是该项目并未与 Eucalyptus Systems Inc(Eucalyptus幕后的实体公司)造成利益冲突。

  因为Eucalyptus项目并非完全开源。Eucalyptus幕后公司维护着部分代码,这些代码关系到商业版Eucalyptus Enterprise Edition(E3)的诸多特性,例如管理、SAN集成、更为出色的后台数据库以及与VMware的兼容性,这些功能对公司而言,既不可能也不愿意开 源。而OpenStack则是100%的开源产品,虽然它目前还没有提供以上特性功能,但是这些已都被列入了它的技术发展路线。

  Eucalyptus也并非100%实现了与Amazon EC2的兼容。虽然它实现了大部分EC2的APIs(以及部分EC3 APIs),但是它不是,也不愿意成为完全的EC2副本。Eucalyptus的出色之处在于及时交付、创建新服务器的守护进程,接近实时的自动化。这不 光减轻了IT资源的负担,同时也提高了应对突发需求的效率。只要被交付的服务器是其支持的类型(主要针对EC2用户),都可以很好地使用 Eucalyptus取代EC2,或是将Eucalyptus作为迁移服务器或模块至EC2之前的测试区。

  目前,Eucalyptus是仅有的全功能云计算产品,它遵守包括自身在内的任何标准,同时它选择了同这个市场的最大赢家Amazon结盟。Eucalyptus依靠它在IaaS的声誉获得了重要的市场份额。

  OpenStack会如何影响开源

  从历史上来看,开源社区对经济发展与计算机业创新都有着深远的影响。众所周知,开源软件推动了早期的单机应用向商业化转型。在数据库方面,我们 只需观察MySQL和PostgreSQL;在Web服务器方面,同样有着开源的Apache;而应用服务器方面,则有Tomcat,JOnAS、 JBoss、Jetty和GlassFish;在编程与脚本语言方面,有Java、Perl和PHP。GNU Linux更是对商业化操作系统以及手机操作系统做出了众多贡献。

  OpenStack承诺为云计算商品提供技术支持。虽然市场总为非开源项目留有空间,但开源软件同样对其影响深远,它推动着创新与系统间的相互协作。

  理论上,OpenStack以全开源方式提供给我们所需的功能。尽管它已经吸引到一线厂商的关注(Citrix、Dell、NTT等),但毕竟 还只是个功能有限又缺乏成熟与稳定的“开发测试版”。而占据优势的Eucalyptus又将对开源云计算平台市场产生怎样的影响?它会随着市场变化,在兼 容性和开放性上逐渐完善,还是固守成规默默地退出历史舞台?一切都需要市场的检验


你可能感兴趣的:(CloudStack、OpenStack等四大云平台评测)