当前位置:文档之家› 云计算平台架构对比分析

云计算平台架构对比分析

云计算平台架构对比分析刘冬1.概述云计算平台近年来炒得非常火热,要建设或选用相应的云计算平台就需要对目前业界已有的平台进行分析对比,本文就是对比了目前业界已有平台的情况综合分析形成结论报告。

众所周知,云计算分为三个层次:IaaS、PaaS、SaaS。

●IaaS,Infrastructure as a Service,基础架构即服务●PaaS,Platform as a Service,平台即服务●SaaS,Software as a Service,软件即服务由于我们在未来主要是为某一行业提供专业的软件服务,即实现SaaS服务,那么重点就要对IaaS和PaaS进行对比和分析。

2.IaaS平台分类介绍2.1 Amazon AWS亚马逊AWS将硬件设备等基础资源封装成服务供用户使用,主要提供了弹性计算云EC2和简单存储服务S3。

2.2 OpenStack是一个美国国家航空航天局和Rackspace合作研发的,以Apache许可证授权,并且是一个自由软件和开放源代码项目。

OpenStack是一个云平台管理的项目,它不是一个软件。

这个项目由几个主要的组件组合起来完成一些具体的工作。

OpenStack是一个旨在为公共及私有云的建设与管理提供软件的开源项目。

它的社区拥有超过130家企业及1350位开发者,这些机构与个人都将OpenStack作为基础设施即服务(简称IaaS)资源的通用前端。

OpenStack项目的首要任务是简化云的部署过程并为其带来良好的可扩展性。

本文希望通过提供必要的指导信息,帮助大家利用OpenStack前端来设置及管理自己的公共云或私有云。

OpenStack 是由Rackspace 和NASA 共同开发的云计算平台,帮助服务商和企业内部实现类似于Amazon EC2 和S3 的云基础架构服务(Infrastructure as a Service, IaaS)。

OpenStack 包含两个主要模块:Nova 和Swift,前者是NASA 开发的虚拟服务器部署和业务计算模块;后者是Rackspack 开发的分布式云存储模块,两者可以一起用,也可以分开单独用。

OpenStack 是开源项目,除了有Rackspace 和NASA 的大力支持外,后面还有包括Dell、Citrix、Cisco、Canonical 这些重量级公司的贡献和支持,发展速度非常快,有取代另一个业界领先开源云平台Eucalyptus 的态势。

OpenStack是IaaS(基础设施即服务)组件,让任何人都可以自行建立和提供云端运算服务。

此外,OpenStack也用作建立防火墙内的“私有云”(Private Cloud),提供机构或企业内各部门共享资源。

Cisco WebEx 就采用了OpenStack。

2.3 CloudStackCloudStack是一个开源的具有高可用性及扩展性的云计算平台。

目前Cloudstack支持管理大部分主流的hypervisors,如KVM,XenServer,VMware,Oracle VM,Xen等。

同时CloudStack是一个开源云计算解决方案。

可以加速高伸缩性的公共和私有云(IaaS)的部署、管理、配置。

使用CloudStack 作为基础,数据中心操作者可以快速方便的通过现存基础架构创建云服务。

CloudStack是早期受Citrix资助,从OpenStack分离出来的,并由Citrix捐献给Apache Software Foundation。

2.4 EucalyptusElastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus)是一种开源的软件基础结构,用来通过计算集群或工作站群实现弹性的、实用的云计算。

它最初是美国加利福尼亚大学Santa Barbara 计算机科学学院的一个研究项目,现在已经商业化,发展成为了Eucalyptus SystemsInc。

不过,Eucalyptus 仍然按开源项目那样维护和开发。

Eucalyptus Systems 还在基于开源的Eucalyptus 构建额外的产品;它还提供支持服务。

其特点是:1.与EC2 和S3 的接口兼容性(SOAP 接口和REST 接口)。

使用这些接口的几乎所有现有工具都将可以与基于Eucalyptus 的云协作。

2.支持运行在Xen hypervisor 或KVM 之上的VM 的运行。

未来版本还有望支持其他类型的VM,比如VMware。

3.用来进行系统管理和用户结算的云管理工具。

4.能够将多个分别具有各自私有的内部网络地址的集群配置到一个云内。

2.5 OpenNebulaOpenNebula是Reservoir项目的一部分,是2005年欧洲研究学会发起的虚拟基础设备和云端运算计划的虚拟化管理层的开源实现。

OpenNebula的核心部分是Front End,即ONE。

从开发平台的角度来看,OpenNebula采用C++实现核心ONE,使用Ruby 开发的各种Driver来实现具体的功能。

整体系统只有一个核心部件,故在开发平台上做得很少。

OpenNebula是一款为云计算而打造的开源工具箱。

它允许你与Xen,KVM或VMware ESX一起建立和管理私有云,同时还提供Deltacloud适配器与Amazon EC2相配合来管理混合云。

除了像Amazon一样的商业云服务提供商,在不同OpenNebula实例上运行私有云的Amazon合作伙伴也同样可以作为远程云服务供应商。

2.6 RackspaceRackspace (NYSE:RAX)全球三大云计算中心之一,1998年成立,是一家全球领先的托管服务提供商,在全球拥有10个以上数据中心,管理超过64000台服务器。

2.7 TerremarkTerremark公司是一家信息技术服务提供商。

Terremark公司在全球范围内,公司在美国,欧洲和拉丁美洲的庞大和多样化的网络连接和访问数据中心,为客户提供服务,其中包括主机托管,主机托管,灾难恢复,安全性,数据的存储和云计算服务(Terremark公司)。

Verizon计划收购Terremark,用于完善自己的云平台。

3.PaaS平台分类介绍3.1 Cloud FoundryCloudFoundry 是VMware主导使用Ruby开发的一款开源PaaS云计算平台,类似于Salesforce旗下的Heroku,遵从OpenStack云计算平台规范。

接下来重点介绍。

3.2 HerokuHeroku 是一个商业的Rails主机托管解决方案,提供的是“无需准备的部署服务”,因为操作和扩展都是自动的,无需任何系统管理。

虽然相较于其它服务商而言Heroku目前的价格较高。

3.3 Google App EngineGoogle App Engine 是一种让您可以在Google 的基础架构上运行您的网络应用程序。

Google App Engine 应用程序易于构建和维护,并可根据您的访问量和数据存储需要的增长轻松扩展。

使用Google App Engine,将不再需要维护服务器:您只需上传您的应用程序,它便可立即为您的用户提供服务。

3.4 OpenShiftOpenShift是一个面向开源开发人员开放的平台即服务(PaaS)。

红帽OpenShift通过为开发人员提供在语言、框架和云上的更多的选择,使开发人员可以构建、测试、运行和管理他们的应用,从而重新定义了PaaS市场。

以红帽全面的JBoss专业知识为基础,OpenShift凭借创新的特性(包括CDI)领导PaaS市场,并支持Java EE 6,从而将PaaS的能力扩展到更丰富和更苛刻的应用。

建立在红帽开源领导地位基础上的OpenShift旨在终结PaaS的厂商锁定,使用户可以选择自己应用运行在哪个云提供商的云中。

OpenShift将作为在线服务来提供。

3.5 Windows AzureWindows Azure是微软基于云计算的操作系统,和Azure Services Platform一样,是微软“软件和服务”技术的名称。

Windows Azure的主要目标是为开发者提供一个平台,帮助开发可运行在云服务器、数据中心、Web和PC上的应用程序。

云计算的开发者能使用微软全球数据中心的储存、计算能力和网络基础服务。

Azure服务平台包括了以下主要组件:Windows Azure;Microsoft SQL数据库服务,Microsoft .Net服务;用于分享、储存和同步文件的Live服务;针对商业的Microsoft SharePoint和Microsoft Dynamics CRM服务。

4.平台对比分析从对比可以看出在IaaS和PaaS两类平台上,都有开源的平台,并且由不同的商业公司在后面进行支持。

在开源代码的协议中主要采用Apache License V2.0和GPL V3.0两个主要的。

在平台的开发语言方面涉及有C/C++,Java,Python,Ruby 等不同的开发语言。

这些平台的开发语言方面可能并不是非常重要的,关键是平台所提供的上层应用的支持情况。

IaaS层主要是硬件的自动化管理,人与机器的解耦合,获得效率,牺牲性能。

PaaS层主要是应用的自动化管理,应用与OS的解耦合,获得弹性,牺牲控制。

还是开始所强调的,我们是要完成SaaS的构建,因此会更注重在PaaS的选择。

接下来,我们就以Cloud Foundry为例进行详细的分析。

5.Cloud Foundry介绍5.1 概述在云计算的三个层次中,Cloud Foundry处于PaaS层。

如下图:与此同类的PaaS平台中最知名的当属Google App Engine(简称GAE)。

与GAE相比,Cloud Foundry最大的特点还是开源、开放。

开源Github上开放源码,并鼓励社区贡献和check-in;目前所有核心模块都已经开源;开放的开发平台和流程,VMware R&D与社区开发者采用相同的代码审核和签入流程;Apache 2开源许可协议。

开放支持多种语言、框架、服务和底层IaaS基础平台;支持多种运维方式,公有,私有,。

下面这个图可以很清晰的表现出CloudFoundry开源、开放的特点。

一个三角形的三条边:右下:封装了各种IaaS的封装,包括Amazon AWS、VMWare vSphere、OpenStack等多种商用、开源的IaaS平台。

左下:提供了对MySQL、Redis等多种服务的支持,在开发社区中也有人提供了对Oracle等企业级应用数据库的支持。

相关主题