1 引言
云计算并不是一个全新的名称。1961年,图灵奖得主John McCarthy提出计算能力将作为一种象水、电一样的公用事业提供给用户。2001年,Google CEO Eric Schmidt在搜索引擎大会上首次提出“云计算”的概念。2004年,Amazon陆续推出云计算服务,成为少数几个提供99.95%正常运行时间保证的云计算供应商之一。2007年,随着IBM,Google等公司的宣传,云计算概念开始获得全球公众和媒体的广泛关注。
云计算目前并没有统一的定义。根据Wikipedia,云计算是一种基于互联网的计算新方式,通过互联网上异构、自治的服务为个人和企业用户提供按需即取的计算。而Berkeley大学则认为云计算是指Internet上以服务发布的应用以及支撑这些服务的数据中心的软件和硬件。
笔者则认为,云计算的概念不仅仅局限于计算,实际上直接称为“云”更加合适,云的本质是网络为用户提供的按需即取的服务Service on Demand,包括基于提供计算能力,存储能力,以及网络能力的各种服务的组合。正是因为服务的按需即取的特性,需要对应于计算能力、存储能力、交付能力的各种计算资源、存储资源,以及网络资源的按需即取的资源池管理和弹性提供。
从业务提供方式上,云可以提供3种业务:IaaS将虚拟化的资源直接按需提供给客户;PaaS在虚拟化的云计算平台上建立支持多种业务的应用平台,再将应用接口和开发环境、运行环境提供给外部;SaaS在虚拟化的云计算平台上提供按需定制和快速部署的应用软件租用服务。目前,业界研究最多的是IaaS和PaaS,本文将针对IaaS(对应基础云)和PaaS(对应业务云)的关键技术,实现方案以及云的标准化进行阐述。
2 关键技术
2.1 虚拟化
虚拟化是实现云计算的最重要的技术基础,虚拟化技术实现了物理资源的逻辑抽象和统一表示。通过虚拟化技术可以提高资源的利用率,并能够根据用户业务需求的变化,快速、灵活地进行资源部署。
2.1.1 虚拟化平台架构
在云计算环境中,通过在物理主机中同时运行多个虚拟机实现虚拟化。多个虚拟机运行在虚拟化平台上,由虚拟化平台实现对多个虚拟机操作系统的监视和多个虚拟机对物理资源的共享。
总的来说,我们认为虚拟化平台是三层结构,最下层是虚拟化层,提供基本的虚拟化能力支持;中间层是控制执行层,提供各控制功能的执行能力;最上层是管理层,对执行层进行策略管理、控制,提供对虚拟化平台统一管理的能力。如图1所示,虚拟化平台应该包含虚拟机监视器Hypervisor,虚拟资源的管理,虚拟机迁移,故障恢复,策略管理(如提供虚拟机自动部署和资源调配)等功能实体。各部分具体功能描述如下:
(1)虚拟机管理:主要保护VM的创建、启动、停止、迁移、恢复和删除等能力,虚拟机映像管理,虚拟机运行环境的自动配置和快速部署启动等能力。虚拟机管理可根据主机节点/虚拟机的CPU,内存,I/O,网络等资源使用情况,自动地在不同主机节点之间迁移VM,使得VM的性能得到保障。也包含主机节点的失效保护,即当一个主机节点失效后,该功能实体能将其上的服务自动转移到其他节点上继续运行。
(2)高可用Cluster:用于保证主机节点的失效保护,当一个主机节点失效后,Cluster自动将其上的服务转移到集群中的其他节点上继续运行。该Cluster还可具有负载均衡和存储集群的能力。
(3)动态资源调配:虚拟存储、网络创建、配置、修改和删除等能力。当一个VM的内存、外出或网络资源不足时,可临时借用同节点中其他VM暂时不使用的同类资源。
(4)动态负载均衡:兼顾能源消耗和工作负载的均衡。根据策略需要,可开启/关闭部分主机节点,并迁移关联的VM。
(5)管理工具:包含虚拟化平台需要支持的一套工具,如P2V(Physical to Virtual),V2P(Virtual to
Physical),VA(Virtual Application),JEOS(Just enough Operating System)等。
(6)主机安全:用于保证VM运行环境的安全,包含一组软件,如anti-virus,IDS等。
2.1.2 虚拟化平台部署
如图2所示,在实际部署中,由于Cluster、动态资源分配、主机安全等与Hypervisor关系密切,可以作为独立的软件部署在主机节点之中。其他功能都可以集成在一起,形成VM管理器。这样进行功能分配后,整个虚拟化平台可以分为两个软件包:一是Hypervisor
+ Host OS软件包,驻留在主机节点中;二是VM管理器软件包。两者之间的接口将被简化为配置、简单控制、查看和监控几类。
运行VM的主机利用Cluster功能组成一个高可用的集群系统,当其中的某个节点失效时,可无需VM管理器的干涉,自动地将失效节点上的服务迁移到其他节点,并为其重新分配存储和网络资源,使得服务不间断。VM管理可部署在独立的服务器上,由其负责对虚拟化平台的告警、运行状况监控、负载调整等工作。虚拟化平台物理部署如图3所示。
(1)平台虚拟化实现资源最优利用。利用虚拟化技术,在一台物理服务器或一套硬件资源上虚拟出多个虚拟机,让不同的应用服务运行在不同的虚拟机上,在不降低系统鲁棒性、安全性和可扩展性的同时,可提高硬件的利用率,减少应用对硬件平台的依赖性,从而使得企业能够削减资金和运营成本,同时改善IT服务交付,而不用受到有限的操作系统、应用程序和硬件选择范围的制约。
(2)利用虚拟机与硬件无关的特性,按需分配资源,实现动态负载均衡。当VM监测到某个计算节点的负载过高时,可以在不中断业务的情况下,将其迁移到其它负载较轻的节点或者在节点内通过重新分配计算资源。同时,执行紧迫计算任务的虚拟机将得到更多的计算资源,保证关键任务的响应能力。
(3)平台虚拟化带来系统自愈功能,提升系统可靠性。系统服务器硬件故障时,可自动重启虚拟机。消除在不同硬件上恢复操作系统和应用程序安装所带来的困难,其中任何物理服务器均可作为虚拟服务器的恢复目标,进而减少硬件成本和维护成本。
(4)提升系统节能减排能力。与服务器管理硬件配合实现智能电源管理;优化虚拟机资源的实际运行位置,达到耗电最小化,从而可为运营商节省大量电力资源,减少供电成本,节能减排。
2.2 分布式文件系统
分布式文件系统是指在文件系统基础上发展而来的云存储分布式文件系统,可用于大规模集群。主要特性包括:
(1)高可靠性:云存储系统支持节点间保存多副本功能,以提供数据的可靠性。
(2)高访问性能:根据数据重要性和访问频率将数据分级多副本存储,热点数据并行读写,提高访问性能。
(3)在线迁移、复制:存储节点支持在线迁移、复制,扩容不影响上层应用。
(4)自动负载均衡:可以依据当前系统负荷将原有节点上的数据搬移到新增的节点。特有的分片存储,以块为最小单位来存储,存储和查询时所有存储节点并行计算。
(5)元数据与数据分离:采取元数据与数据分离的方式设计分布式文件存储系统。
图4为分布式数据库的系统架构。其中:
●FAC:负责向用户提供文件访问接口,安装在服务器端(提供给应用以文件操作的API接口;实现与FLR和FAS的交互,完成数据的搬迁)。
●FAS:负责文件的调度和访问,完成对磁阵的读写操作,对FAC提供数据读写功能,完成数据的分布式存储。
●FLR:负责元数据的管理,保存文件和块的命名空间,文件到块的映射,以及每个块副本的位置。
2.3 分布式数据库
分布式数据库能实现动态负载均衡、故障节点自动接管,具有高可靠性、高性能、高可用、高可扩展性,在处理PetaByte级以上海量结构化数据的业务上具备明显性能优势。图5为分布式数据库的系统架构。其中:
(1)PEC:解析执行服务器(Parsers & Executing Controllers,简称PEC),SQL服务接入点。负责接收客户的SQL请求,并定向到特定的Tablet服务器上进行数据访问。
(2)Master:主要负责数据库的元数据管理和调度工作。
(3)TabletServer:负责保存数据库的子表。
(4)Space:分布式文件系统的锁服务功能。主要保证共享访问时对数据的独占性。
2.4 中兴通讯CoCloud增值业务云(见图6)
基于上述关键技术,中兴通讯的CoCloud增值业务云服务栈提供了IAAS,PAAS,SAAS多层次云服务模式,包括统一开放环境UOE/Mahup PAAS云平台,云存储,多业务云调度,ECP,NGCC,VPBX,应用工厂等多种云服务方案。
2.4.1 中兴通讯CoCloud增值业务云优势
(1)先进的软件自适应自动部署方式:实时监控各个业务节点的资源情况,根据预先定制的策略,增加或者减少业务节点,可以自动安装、启动、关闭业务软件,做到软件根据业务节点资源状况自适应部署。
(2)灵活高效的业务扩展方式:在已有的云计算平台上通过简单的配置后,就可以为新的业务分配资源,迅速开展新的业务。
(3)统一运维管理:基于云计算平台开展业务后,基于同样的基础架构开展多种业务,目前的运维管理方式需要转变,不再是烟囱式的建设和运维。统一的云管理平台,通过分权分域的方式,让维护人员进行业务和设备的管理。
(4)自动在线升级功能:提供软件版本中心,通过手工或者自动进行业务版本以及虚拟化软件版本的升级。
(5)绿色节能:在业务层面做到软件自适应自动部署,在业务闲时只保留必要的业务节点,减少了虚拟机资源的使用,减少了资源的消耗;在虚拟化层面,通过资源动态均衡方案和绿色节能方案相结合,将虚拟机部署在恰当的物理机上,保留必要的备用物理机之外,将其他的物理机进行节能管理,从而减少运营商在业务闲时不必要的能源消耗,实现绿色数据中心。
(6)多层次容灾:硬件发生故障时,虚拟机管理中心自动将虚拟机迁移到其他物理机上,做到虚拟层的容灾;虚拟机发生故障不能恢复时,应用软件部署子系统将故障虚拟机资源释放,并重新申请新的虚拟机来运行故障的业务节点。
(7)平滑扩容:采用分层结构,业务层面和虚拟机层面之间采用松耦合方式,当物理资源不够用时,直接在资源池中增加物理机并安装虚拟软件后即可使用;当业务处理能力不够时,业务层面的自适应自动部署机制会自动增加节点,达到业务能力的扩容。
以WAP网关、彩信多业务云调度为例,假设现网WAP网关容量为30000TPS,彩信容量为3000条,独立建设与多业务云计算方案对比如图7所示。
3 云计算标准化
3.1 总体介绍
目前,国内外进行云计算技术研究或与云计算技术相关的标准组织约有40个,进行云计算产业活动的行业也有150个之多。
图8给出一个目前各主要有关类别和有关标准组织的一个全景视图,标准化组织包括OCCI,OASIS,DMTF,CSA,OMG,SNIA,OGF等。图中显示,目前的云计算标准组织主要是定义专用的API接口。而在未来的云计算应用场景中,将支持公共、私有和混合云,虽然有关专有接口仍将会被使用,有关的接口和一些内部实现技术,将采用标准化的规范来实现。
随着云计算的升温,国内外的电信运营商,设备商以及政府机构也都积极投入云计算的研究,以期通过云计算技术促进网络结构的优化和整合来降低CAPEX和OPEX,并能够寻找到新的盈利机会点和利润增长点,以及实现向信息服务社会的转型。目前,电信网中云计算还没有一个标准的、统一的技术体系结构,如果不同厂家对云计算提供不同的解决方案,则会造成不同厂家设备之间的互联、互通、互操作,硬件转移等方面的问题,将会对云计算的发展构成障碍。因此如何在电信网中构建一个既能支持传统电信网络的能力,又能支持互联互通的通用的云计算平台将是电信网云计算网络架构关注的重点。
3.2 IETF Clouds Bar BoF
IETF在第77次会议上成立了Clouds Bar BoF,其主要关注的领域是基于云计算系统的应用/业务对协议的需求,包括应用于不同云计算系统之间、同一云计算架构内部不同层之间或同层内不同功能实体之间的协议的标准化。
目前的Clouds Bar Bof已经举办两次。Clouds Bar BoF于2010年3月25日在美国加利福尼亚州阿纳海姆(Anaheim, CA)举行。此次会议上由GAP分析,并进行了基于云计算的系统和业务调查,协同IETF的DECADE,IRTF/VNRG,NFSv4和其他标准组织的活动,以避免工作重叠。
Clouds Bar BoF第二次会议(IETF的第78次会议)于2010年7月23日在荷兰马斯特里赫特(Maastricht,Netherlands)举行。此次会议上Clouds得到了Google,Cisco,Verizon,ALU,Alertlogic等厂家的支持,并纷纷给出各自在云计算领域关注的协议制定。Clouds Bar BoF第三次会议(IETF的第79次会议)将于2010年11月份在北京举行。
3.3 ITU-T FG Cloud
ITU-T在2010年2月的会议上,电信标准化顾问组(TSAG)讨论通过了成立ITU-T云计算焦点组(FG
Cloud)。该焦点组将从标准化的角度在ITU-T的范围内,考虑电信网络在传输、安全、业务等方面如何支持“云计算”业务/应用。
(1)识别出推进和实现电信支持云计算,标准开发的潜在影响和优先级。
(2)在ITU-T范围内,调查未来固定与移动网络项目的研究需求。
(3)分析哪些组件将受益于互操作性和标准化。
(4)将电信领域内研究云计算的标准组织进行分类。
(5)对云计算中的特性、功能进行分级分析,用于估计电信领域云计算的标准化时间表。
云计算焦点组目前可分为以下两个工作组:
●WG1云计算的益处与需求,主要研究云的定义,生态环境和术语;用例、需求与架构;云安全;云基础设施与网络;云业务与资源管理,平台和中间件;云计算的益处和ICT方面的第一需求。
●WG2差距分析ITU-T云计算标准研究路标,主要研究云计算相关标准组织的活动概况;ITU-T云计算标准相关研究的差距分析和行动计划。
FG Cloud在2010年6月14—16日在日内瓦召开了第一次会议,主要讨论了各个标准组织关于云计算的研究进展,ITU-T内部各研究组也已经开展了云相关的研究项目情况。目前已经形成《云生态系统介绍:定义、术语和用例》和《云参考架构需求》文档初稿。图9展示了云生态系统架构图,包括云用户,云SP,云业务开发者等若干角色。
ITU-T云计算焦点组代表了作为全球三大国际标准组织之一的国际电联对云计算的高度重视,必将深远地影响到云计算在电信领域的标准化进程。