“开源云计算管理平台”研究报告(Ver 1.0)中国电信.上海理想信息产业(集团)有限公司研发中心2011年7月29日中国.上海.浦东新区杨高南路5788号中国电信信息园区B4座目录“开源云计算管理平台”研究报告 (1)1概述 (4)1.1研究背景及目的 (4)1.2研究目标 (5)2OpenStack分析 (6)2.1OpenStack简介 (6)2.1.1OpenStack背景 (6)2.1.2OpenStack组件介绍 (7)2.1.3OpenStack贡献者 (8)2.2系统架构 (8)2.3体系结构 (9)2.3.1服务架构 (9)2.3.2nova架构 (11)2.3.3glance架构 (12)2.3.4swift架构 (13)2.4功能特色 (14)2.4.1OpenStack特点 (14)2.4.2nova功能介绍 (15)2.4.3glance功能介绍 (16)2.4.4swift功能介绍 (17)2.5部署方式 (19)2.5.1部署环境需求 (19)2.5.2部署方式 (19)2.5.3部署nova (20)2.5.4部署glance (25)2.5.5部署swift (26)2.5.6部署dashboard (43)2.6开发方式 (45)2.6.1展现层 (45)2.6.2业务逻辑层 (45)2.6.3持久化层 (45)3ABI Cloud分析 (45)3.1ABICloud简介 (45)3.2系统架构 (46)3.3体系结构 (46)3.4功能特色 (47)3.5部署方式 (48)3.6开发方式 (50)4Openstack与ABI Cloud简要对比 (51)5Openstack vs 其他开源软件 (52)5.1计算节点虚拟化技术 (52)5.2系统架构比较 (53)5.2.1Eucalyptus (53)5.2.2openNebula (56)5.2.3openQRM (58)5.2.4XenServer (59)5.2.5ORACLE VM (59)5.2.6CloudStack (61)5.2.7ConVirt (61)5.3相关开源软件的商务及服务 (61)6开发方案 (64)1概述1.1 研究背景及目的云计算是国家“十二五”规划重点发展项目,电信运营商作为云计算的关键推动者和应用者,牵动着各个行业的目光和关注。
一方面,电信运营商正在积极引入云计算,实现计算、存储与带宽资源的按需提供,更好的支撑业务运营;另一方面,云计算服务也是电信运营商商业模式转变的必然选择,通过整合云计算产业链的力量,新一代IDC、ICT服务快速成为电信运营商对外提供云计算服务的主要领域。
从云计算服务角度看,云计算服务可以分为基础设施即服务(IaaS,Infrastructure as a Service)、平台即服务(PaaS,Platform as a Service)、软件即服务(SaaS,Software as a Service)三类。
分别面向各类用户提供虚拟数据中心、应用开发和测试环境、以及各类在线软件服务。
云计算涵盖IaaS 层、PaaS层、SaaS层众多层面的技术和业务,是一个复杂而庞大的技术、业务体系,而 IaaS层是核心基础。
在实际应用中,IaaS实现云计算应用IT基础设施的资源池管理,它将把计算、存储、网络等作为服务提供给用户,使得用户能够按需获取IT基础设施。
它由计算机硬件、网络、平台虚拟化环境、效用计算计费方法、服务级别协议等组成。
作为电信运营商来说,IaaS主要应用对象是IDC。
由于中国电信具有数量庞大的IDC资源,IDC通过IaaS的成功应用可为PaaS和SaaS提供重要的基础支撑,并可结合IDC增值服务,进一步为客户提供部分的或整体的虚拟数据中心的能力和服务。
在IaaS应用中,提供IaaS服务涉及IaaS基础架构管理和运营支撑管理两部分内容:1)IaaS基础架构管理:对云计算资源实现统一监控和维护管理功能,通过建立云计算基础架构管理平台提供各类网络、主机、存贮设备等IT资源信息库和配置信息库,实现灵活、直观和可扩展的资源管理;建立IaaS资源池统一的故障、告警信息监视处理平台,快速掌控资源池的故障和告警情况,帮助运维人员快速定位故障;基于系统长期运行数据,提供云计算服务平台运行情况分析功能,全面掌握服务运行状况;提供云计算服务的业务配置管理,支持云计算服务的启动、停止、删除、回收。
2)IaaS运营支撑管理:云计算服务运营管理系统可以有效支撑整个云计算服务的正常运营,包括业务定义、业务开通、业务计费、客户自助服务等。
系统可基于系统内置的云计算服务通用模型结合企业服务运营特点自定义符合运营需要的云计算业务模型和计费模型。
可灵活定制云计算业务管理所需的业务订购流程、业务开通流程、业务去订购流程、业务终止流程和客户自助服务流程等,快速、高效的完成客户的业务开通或终止请求。
系统提供完善的业务计费功能,有效记录用户不同业务的使用情况,并提供完整详细的账单记录供用户查询。
系统向最终用户提供自助服务平台,用户可以根据系统提示快速自助完成业务订购、服务启用、服务停止、账单查询等所需操作。
IaaS运营支撑管理可根据IaaS服务流程及业务需要进行灵活定制开发,而IaaS基础架构管理则需实现对整个IDC内资源池的控制和管理。
目前,国内有部分厂商也提供了相应的针对云计算基础架构管理的研究,主要是以开源为基础,但产品的可靠性、底层虚拟化技术的兼容性、开放性等问题较突出。
从中国电信所开展的几个试点省所云计算应用来看,IaaS基础架构管理平台仍以微软、IBM 等厂商平台实现,各系统对虚拟化软件的兼容性相对不足,且系统庞大,部署和实施较为复杂,且开放性和可维护性较弱,很难适应IaaS应用服务的灵活性和适应性。
基于此,研究开发自主知识产权的云计算管理平台是电信运营商进行自主可控云计算技术研发的基础,本报告将针对IaaS基础架构管理平台进行研究,通过对OpenStack、ABICloud等多个云计算基础架构管理平台进行分析研究,旨在通过对目前主流开源云计算管理平台项目的全面调查、综合分析和科学判断,确定目标开源云计算管理的选择是否正确可行的技术方案,以决定开源云计算管理平台取舍的重要依据,也是软件项目建设施工过程中必需的指导文件,并可为中国电信自主云计算管理平台研发提供技术基础论证。
1.2 研究目标本文重点以Openstack和ABICloud为研究对象,从系统架构、体系结构、功能特色、部署和开发方式等角度进行分析,详细对比二者在相关技术领域的特性,同时结合对其他开源软件的分析,包括Eucalyptus, OpenNebula, OpenQRM, XenServer, Oracle VM, CloudStack, ConVirt等,并通过对这些相关开源软件系统架构、技术支撑等的简要分析,从而形成针对开源的云基础架构管理平台相对完整而清晰的报告。
同时分析各产品的开放性、兼容性特点,以及满足与IaaS 业务运营所需要的开发与集成能力,为确定和选择开源平台实现中国电信云计算IaaS管理平台奠定技术基础。
2OpenStack分析2.1 OpenStack简介2.1.1OpenStack背景OpenStack是一个美国国家航空航天局和Rackspace合作研发的云端运算软件,以Apache许可证授权,并且是一个自由软件和开放源代码项目。
其主要包括三个项目:计算项目、面向对象数据存储项目、虚拟机器磁盘镜像服务。
OpenStack作为一种免费的开源平台,帮助服务提供商实现类似于亚马逊EC2和S3的基础设施服务。
OpenStack有两个主要部分--Nova,起初是为NASA的计算处理服务而开发;Swift,是 Rackspace开发的存储服务组件;还有一部分是Glance,提供镜像服务。
Rackspace称其目标是推动互操作服务的发展,或者说是允许客户在云服务提供商之间迁移工作量,使其不被服务提供商限制。
OpenStack项目结合了Rackspace公司云存储技术和NASA的虚拟服务器部署与业务流程引擎,可以实现单个计算机环境及集群 CPU环境的部署。
q OpenStack社区成员Rackspace, NASA, Dell, Citrix, Cisco, 和Ubunto Linux发行商Canonical、Extreme Networks等超过70个成员。
微软并不是该项目成员,但表示其Hyper-V 虚拟化软件支持OpenStack平台。
q版本第一版本是Austin(2010年10月发布),第二版本是Bexar(该版本改善了存储能力、增加了软件镜像库以及对IPV6的支持),当前版本是Cactus,下一版本是Diablo。
q开源原因目前大多数云计算软件平台通常都是围绕一个中心组件进行架构,就如同数据库服务器一样,使用一个服务器集群来策划和控制虚拟服务器。
在一个相对较小的规模中,可模拟像Amazon web服务与应用(AWS)的大型云计算环境运行,但是它无法转化至成千上万的节点。
而开源云计算厂商往往都关注其功能性,但是却没有满足关于规模方面的需求。
尽管当前发布的版本还不支持VMware和微软的Hyper-V,但OpenStack的目标是要支持多种虚拟服务器。
OpenStack是提供建立公共云和私有云的开放源码软件。
OpenStack是一个社区开放源码软件项目,以帮助任何组织运行的虚拟计算或者存储云。
OpenStack社区维护着OpenStack Compute(NOVA),OpenStack Object Storage (SWIFT),和OpenStack Image Service(GLANCE)集合。
q OpenStack目标:为公共云和私有云客户提供可扩展的,弹性的云计算q OpenStack核心的基本要求:云必须是简单的实施和大规模扩展。
2.1.2 OpenStack 组件介绍1)NOVA :云计算控制器,拟机配置网络和存储,实现在线2)SWIFT :对象存储系统余和容错的对象。
但它并不是文储系统 (real-time data stora 存储系统 (long term storage s 久性的数据。
比如说,适合存储存储,文档的备份。
没有“单点swift 具有更强的扩展性、冗余和3)GLANCE :镜像服务是一个为三种方式:使用swift 来存储储;直接使用S3存储。
图介绍,用来启动和维护一组虚拟机实例,以及现在迁移等。
系,存储大规模扩展数据的大容量系统,具有内件系统 (file system) ,也不是实数storage system) 。