几种常见云计算平台分析比较.docx
- 文档编号:26616397
- 上传时间:2023-06-20
- 格式:DOCX
- 页数:24
- 大小:697.68KB
几种常见云计算平台分析比较.docx
《几种常见云计算平台分析比较.docx》由会员分享,可在线阅读,更多相关《几种常见云计算平台分析比较.docx(24页珍藏版)》请在冰豆网上搜索。
几种常见云计算平台分析比较
云计算平台比较分析
云计算按照应用层次,主要划分为 IaaS、PaaS 和 SaaS 三种层次的应用,
这里主要分析常见的 IaaS 平台。
目前市面上常见的 IaaS 应用主要有 Amazon
的 AWS,基本上已经成为整个行业的标准。
IaaS 在开源领域也是百花齐放,最著名的开源平台为:
Eucalyptus、Openstack 和 Cloudstack、Opennebula、Nimbus,在国内社区比
较火热的主要是前三种,所以在这里主要分析一下前三种平台。
1. 云平台分析
1.1. Eucalyptus
1.1.1. 概述
Elastic Utility Computing Architecture for Linking Your Programs
To Useful Systems(Eucalyptus) 是一种开源的软件基础结构,用来通过计
算集群或工作站群实现弹性的、实用的云计算。
它最初是美国加利福尼亚大学
SantaBarbara 计算机科学学院的一个研究项目,现在已经商业化,发展成为
了 Eucalyptus Systems Inc。
不过,Eucalyptus 仍然按开源项目那样维护和
开发。
Eucalyptus Systems 还在基于开源的 Eucalyptus 构建额外的产品;它
还提供支持服务。
Eucalyptus 是在 2008 年 5 月发布 1.0 版本,在 2009 年与 Ubuntu 进行合作,
成为 Ubuntuserver9.04 的一个重要特性,目前最新版本是 2.0.3,可以选择
Xen、KVM 作为虚拟化管理程序,对 vSphere ESX/ESXi 提供了支持。
Eucalyptus 主要是用 C 和 Java 开发的,其中 CLC 是由 java 完成的,Tools
是由 perl 完成的,其他的都是 C 完成的。
1.1.2. 架构
图表 1 Eucalyptus 架构图
Eucalyptus 主要有五个组件组成,分别是:
CLC(Cloud Controller:
云控
制器)、CC(Cluster Controller:
集群控制器)、NC(Node Controller:
节点
控制器)、SC(Storage Controller:
存储控制器)和 Walrus。
CLC云控制器:
负责管理整个系统。
它是所有用户和管理员进入
Eucalyptus 云的主要入口。
所有客户机通过基于 SOAP 或 REST 的 API 只与
CLC 通信。
由 CLC 负责将请求传递给正确的组件、收集它们并将来自这些组件
的响应发送回至该客户机。
这是 Eucalyptus 云的对外 “窗口”。
Walrus:
负责管理对 Eucalyptus 内的存储服务的访问。
请求通过基于 SOAP
或 REST 的接口传递至 Walrus。
CC集群控制器:
负责管理整个虚拟实例网络。
请求通过基于SOAP或
REST 的接口被送至 CC。
CC 维护有关运行在系统内的 Node Controller 的全
部信息,并负责控制这些实例的生命周期。
它将开启虚拟实例的请求路由到具
有可用资源的 Node Controller。
NC节点控制器:
主要负责控制主机操作系统及相应的
hypervisor(Xen、KVM 或 VMWare)。
必须在托管了实际的虚拟实例(根据来自
CC 的请求实例化)的每个机器上运行 NC 的一个实例。
SC 存储控制器:
实现了 Amazon 的 S3 接口,SC 与 Walrus 联合工作,用
于存储和访问虚拟机映像、内核映像、RAM 磁盘映像和用户数据。
其中,VM 映
像可以是公共的,也可以是私有的,并最初以压缩和加密的格式存储。
这些映
像只有在某个节点需要启动一个新的实例并请求访问此映像时才会被解密。
一个Eucalyptus云安装可以聚合和管理来自一个或多个集群的资源。
一
个集群 是连接到相同 LAN 的一组机器。
在一个集群中,可以有一个或多个 NC
实例,每个实例管理虚拟实例的实例化和终止。
1.1.3. 安装
图表 2 多集群安装拓扑图
1.1.4. 具体功能
1) 可用来在 Amazon 的 EC2 基础设施上创建一个公共云,或者在您的数据中心
内创建私有云。
2) 虚拟化和云快照功能,可提升集群的可靠性。
3) 与 EC2 和 S3 的接口兼容性(SOAP 接口和 REST 接口)。
使用这些接口的几
乎所有现有工具都将可以与基于 Eucalyptus 的云协作。
4) 支持运行在 Xen hypervisor、KVM 和 vmwar vSphere ESX/ESXi 之上的 VM
的运行。
5) 用来进行系统管理和用户结算的云管理工具。
6) 能够将多个分别具有各自私有的内部网络地址的集群配置到一个云内。
1.1.5. 优缺点
1) 开源和开发:
Eucalyptus 的创建是为了促进云计算平台方面的交流和研究。
它以源
代码的形式提供免费使用,这就使得您很容易透过其表面看到它的实质,或是针对自
己的需求创建该平台的扩展。
开发的步调很快。
特性以及改进不断被添加到
Eucalyptus,但是目前只有部分源代码开放。
2) 杰出社区:
Eucalyptus 具有一个由愿意与他人免费共享自己见地的热情而博学的用
户组成的杰出社区。
他们的论坛是您获得支持并与其他 Eucalyptus 用户交互的一个
很好的途径。
3) 公共云:
Eucalyptus 可很容易地作为一个公共云安装和运行在 Amazon 的 EC2 框
架上。
4) 私有云:
Eucalyptus 可被作为运行在您的基础设施之上的私有云安装于防火墙后的
数据中心内。
这样,您就获得了对安全性和环境的全面控制。
5) 可移植性:
得益于 Eucalyptus 与 Amazon 的 EC2 API 的兼容性以及 Eucalyptus
的灵活性,可以很容易地将应用程序从一个云迁移到另一个云。
甚至可以创建混合云
来同时使用公共和私有云。
6) 经过了良好的测试:
Eucalyptus 现在是 Ubuntu Enterprise Cloud 的一部分,并
且是全球数千个 Ubuntu 服务器的一个组件。
这种测试规模将会很快巩固
Eucalyptus 平台的稳定性。
7) 商业支持:
当前支持的商业服务只有 Amazon 的 EC2,随后会逐渐增加多种客户端
接口。
8) 兼容的系统:
Eucalyputs 可以兼容多个 linux 发行版,包括
Ubuntu、CentOS、Redhat、openSUSE 以及 freeBSD。
9)
1.1.6. 应用
将具体应用程序整体打包制作成系统,通过 Eucalyptus 管理系统装载到一
个虚拟机实现上。
1.2. OpenStack
1.2.1. 概述
OpenStack 是在 2010 年 7 月由 Rackspace Cloud 和 NASA(美国航天局)共
同开发支持,整合了 Rackspace 的 CloudFilesPlatform 和 NASA 的 Nebula
Platform 技术,目的是能为任何一个组织创建和提供云计算服务。
目前已经有超过 150 个公司与机构参与 OpenStack 项目,包括
Crtrix、Dell、AMD、Inter、Cisco、HP 等。
主要有三个核心项目组成,分别
是:
计算(nova)、对象存储(swift)和镜像管理(Glance)。
每个项目可以独
立安装运行。
OpenStack 是用 Python 完成的。
Ubuntu 作为 OpenStack 的首选系统,很多
OpenStack 的文档都是基于 Ubuntu 来完成的。
1.2.2. 架构
图表 3 openstack 组成架构图
从上图可以看到,OpenStack 主要有三个子项目,Nova、Swift 和 Glance。
Nova:
也称之为 OpenStackComputer,是云计算控制器,主要负责控制
IaaS 云计算平台,其功能类似于 Amazon 的 EC2。
Swift:
也称之为 OpenStack Object Storage,是一个可扩展的对象存储系
统,支持多种应用,例如复制和存档数据、图像或视频服务、存储次级静态数
据、开发数据存储整合的应用,存储超大容量数据等。
其功能类似于 Amazon
的 S3。
Glance:
也称之为 OpenStack Image Service,是一个虚拟机镜像的存储、
查询和检索系统。
OpenStack 也可以单独提供其中的每个子项目搭建云平台,当然也可以将这
三部分组合起来。
1.2.3. 实现原理
OpenStack首先将数据中心虚拟化,利用管理程序提供应用程序和硬件之
间抽象的对应关系。
如图:
OpenStack 通过两个方法实现数据中心虚拟化。
1. 为每个服务器提供了抽象的硬件(例如第一台主机 HOST 1 ,其实提供
了抽象的 4 台主机,而上面的四台主机或许是一台抽象的服务器)。
2. 实现对每个服务器资源的更好的利用,利用了虚拟机,下图是更多的实
现
上面每个虚拟的服务器,或者网络,或者存储设备之后都是一个 Pool,这样
无论对资源的分配还是对请求响应都是更加灵活而有效。
OpenStack 完成数据中心虚拟化后,OpenStack 提供对云进行管理的一层,
负责在云上部署各种应用和文件,同时还要提供对应用和文件的检索,创建和
分配虚拟机,当虚拟机用完之后还要撤销,要提供用户和管理员接口,用户要
能知道自己的应用的情况,管理员也要能知道整个云的运行情况,负责云存储
的分配,检索,收回。
1.2.4. 具体功能
OpenStack 有很多关键特性,这些特性主要有:
1) 管理虚拟化的产品服务器和相关资源(cpu,memory,disk,network),提高其
提高其利用率和资源的自动化分配(具有更高的性价比)。
2) 管理局域网(Flat,Flat DHCP, VLAN DHCP ,IPv6),程序配置的 IP 和 VLAN,能
为应用程序和用户组提供灵活的网络模式。
3) 带有比例限定和身份认证:
这是为自动化和安全设置的,容易管理接入用
户,阻止非法访问。
4) 分布式和异步体系结构:
提供高弹性和高可用性系统
5) 虚拟机镜像管理:
能提供易存储,引入,共享和查询的虚拟机镜像
6) 虚拟机实例管理:
提高生命周期内可操作的应用数量,从单一用户接口到
各种 API,例如一台主机虚拟的 4 台服务器,可以有 4 中 API 接口,管理 4
个应用。
7) 创建和管理实例类型(Flavors):
为用户建立菜单使其容易确定虚拟机大
小,并作出选择。
8) iSCSI 存储容器管理(创建,删除,附加,和转让容器):
数据与虚拟机分
离,容错能力变强,更加灵活。
9) 在线迁移实例。
名称
项目历史与运营团队
社区规模和活跃程度
沟通交流
Eucalyptus
最初是 UCSB 的 HPC 研究项
目,2009 年初成立公司来支
持该项目的商业化运营。
整个
管理团队对开放源代码项目的
管理和运营方面具有丰富的经
验。
社区健全,规模较大,活跃
程度较高。
有 2.5 万个
Eucalyptus 系统在运行,客
户量大。
社区健全,规模较
沟通比较方便。
OpenStack
OpenStack 是服务器托管公
司 RackSpace 与 NASA 共同
发起的开放源代码项目。
社区规模较小,主要参与者
为支持/参与该项目的公司
人员。
目前有
AMD、Intel、Citrix、HP,DE
LL, cisco,Microsoft 等超过
104 个组织加入。
使用系统的人越来
越多,社区的沟通
会更方便。
对于一
合理的问题都能得
到核心技术人员的
解答。
名称
授权协议
许可证管理
商业模式
Eucalyptus
社区版采用 GPLv3;
企业版使用自定义的
商业授权协议。
社区版不需要安装许可证;
企业版需要在云控制器
(CLC)节点上安装许可证。
社区版免费使用;企业版按
照处理器核心总数收费,用
户购买的许可证针对特定版
本永久有效。
OpenStack
Apache 2.0 授权协
议。
不需要许可证。
免费使用。
1) 授权、许可证、商业模式比较
2) 项目团队、社区活跃、沟通比较
大,活跃程度较高。
个成熟的开源系统,
3) 系统构架比较
10) 动态 IP 地址:
注意管理虚拟机是要保持 IP 和 DNS 的正确
11) 安全分组:
灵活分配,控制接入虚拟机实例。
12) 按角色接入控制(RBAC)。
13) 通过浏览器的 VNC 代理:
快速方便的 CLI administration。
1.2.5. 与 Eucalyptus 的不同
以下是从网络上找到的分析报告。
Eucalyptus 和 OpenStack 对比分析报告
名称
系统架构
Eucalyptus
Eucalyptus 是一个与 Amazon EC2 兼容的 IaaS 系统。
它包括云控制器(CLC)、
Walrus、集群控制器(CC)、存储控制器(SC)和节点控制器(NC)。
CLC
负责高层次的资源调度。
Walrus 是 一个与 Amazon S3 类似的存储服务,主要用于存
储虚拟机映像和用户数据。
CC 是一个集群的前端,负责协调一个集群内的计算资源,
并且管理集群内的网络流量。
SC 是一个与 Amazon EBS 类似的存储块设备服务,可以用来存储业务数据。
NC 是最
终的计算节点,通过调用操作系统层的虚拟化技术来启动和关闭虚拟机。
OpenStack
OpenStack 是一个与 Amazon EC2 兼容的 IaaS 系统。
OpenStack 包括 OpenStack
Compute 和 OpenStack Object Storage 两个部分。
OpenStack Compute 又包含 Web
前端、计算服务、存储服务、身份认证服务、存储块设备(卷)服务、网络服务、任务
调度等多个模块。
OpenStack Compute 的不同模块之间不共享任何信息,通过消息传
递进行通讯。
是核心,
名称
概述
用户权限
资源池和虚拟机管
理
Eucalyptus
通过 Eucalyptus 自身的 web
界面,及其 firefox 插件
hybridfox 访问云平台;
Euca2ools 包提供了访问、
操作 Eucalyptus 的命令行界
面
Eucalyptus 社区版有两种类型
的用户:
管理员,普通用户。
在 Eucalyptus 企业版中进一步
提供了用户组。
web
管理镜像,管理用
户,配置云,以及
其他。
命令行可以
进行其他管理方面
的操作。
OpenStack
通过 openstack 的
OpenStack 将用户分成如下几
web 可以进行实
名称
操作系统
备注
Eucalyptus
CentOS5.4
采用源码包进行安装和配置,并且将安装写成安装脚本。
OpenStack
CentOS5.4
由于 OpenStack 社区相对较少,帮助的资料相对较少,官方是在
Ubuntu 10.04 上安装,因此安装遇到了一定的困难。
名称
XenServer
KVM
XenServer / XCP
VMWare
LXC
HyperV
Eucalyptus
Y
Y
Y
Y
OpenStack
Y
Y
Y
Y
Y
Y
可以下载证书,
OpenStack Object Store 可以利用通用服务器搭建可扩展的海量数据仓库,并且通过冗
余来保证数据的安全性。
5) 系统安装和配置
6) 用户界面
这里主要指 WEB 界面,及其命令行的交互方式:
dashboard 访问云平台;
个类别:
例,密钥,卷,镜
Euca2ools 包提供了访问、 admin;itsec;projectmanage 像,角色权限等的
操作 Eucalyptus 的命令行界 r;netadmin;developer
面;
7)具体功能点评估
注:
Y 代表支持,“”代表不支持,O 代表第三方支持,P 代表要付费
管理。
命令行可以
进行其他管理方面
的操作
8)商务评估 3 商务
从商务上进行软件选型,性价比通常是一个决定性的因素,因此需要考虑如下几个方面:
1.授权协议/许可证管理 — 以全部开放源代码为 10 分,部分开放源代码扣 1 分。
商
业版本需要在控制节点安装许可证不扣分,需要在所有计算节点安装许可证扣 1 分,许可
证需要每年更新者扣 1 分。
2.价格指数 — 以全部功能免费使用为 10 分,以企业版的模式提供全部功能的软件,
每台物理服务器每花费 500 美元扣 1 分。
3.运营团队 — 以运营团队的规模、背景、影响力评分,存在的主观因素较多。
4.社区因素 — 以开发者和用户社区的规模和活跃程度评分,存在的主观因素较多。
5.沟通交流 — 以个人与运营团队、开发者社区、用户社区之间的沟通顺畅程度评分,
存在的主观因素较多。
结合上面几点评估,其柱状图如下:
9)3.2 功能评估
从功能上进行虚拟化管理软件选型测评项如下:
1.虚拟化技术支持 — 仅支持一种虚拟化技术为 6 分,每增加一种虚拟化技术加 1 分,
10 分封顶。
2.安装配置 — 以按照官方文档进行安装配置的难易程度评分,存在的主观因素较多。
3.开发/使用文档— 以官方所提供的开发与使用文档的详尽程度评分,文档详尽程度越
高者得分越高。
4.功能与界面 — 综合评分,涵盖用户进行物理资源和虚拟资源管理、虚拟机生命周期
管理、访问虚拟机资源和存储资源的难易程度,用户界面的美观易用程度,以及综合用户
体验。
5.二次开发 — 基础得分 6 分,提供与 Amazon EC2 相兼容的程序调用接口者加 3 分,
提供二次开发接口但是与 Amazon EC2 不兼容者加 2 分。
6.监控报表 — 基础得分 6 分,依系统所提供监控与分析功能的详尽程度加分。
结合上面几点评估,其柱状图如下:
注:
上面商务评估,功能评估的数据还是大致反映了 OpenStack 跟 Eucalyptus 两者的情
况的。
1.2.6. 应用
其应用与 Eucalyptus 比较类似。
在 controller 的 web 管理页面上导入实
现制作好的操作系统模板或者 xen 等 vm 模板,加载进去即可使用。
1.3. CloudStack
CloudStack 被 crtrix 收购后,刚刚加入 Apache 软件基金会,各项条件都
不够成熟,目前更多的还是处于研究分析时期。
1.4. Hadoop
准确的来讲,Hadoop 不算作是一个云平台。
Hadoop 是一个能够对大量数据
进行分布式处理的软件框架。
但是 Hadoop 是以一种可靠、高效、可伸缩的方式
进行处理的。
Hadoop 是可靠的,因为它假设计算元素和存储会失败,因此它维
护多个工作数据副本,确保能够针对失败的节点重新分布处理。
Hadoop 是高效
的,因为它以并行的方式工作,通过并行处理加快处理速度。
Hadoop 还是可伸
缩的,能够处理 PB 级数据。
此外,Hadoop 依赖于社区服务器,因此它的成本
比较低,任何人都可以使用。
Hadoop 带有用 Java 语言编写的框架,因此运行
在 Linux 生产平台上是非常理想的。
Hadoop 上的应用程序也可以使用其他语
言编写,比如 C++。
Hadoop 的主要应用主要包括 web 搜索、bigdata 存储应用、分布式计算等,
而对于类似 IaaS 的功能(例如虚拟化等)基本上未涉及。
2. 分析结论
建议采用 OpenStack。
3. 参考资料
1)
2)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 常见 计算 平台 分析 比较