电信运营商开放式IaaS云平台研究

2013-09-29 04:47秦润锋樊勇兵金华敏
电信科学 2013年10期
关键词:存储设备虚拟化消息

秦润锋,樊勇兵,唐 宏,金华敏

(中国电信股份有限公司广东研究院 广州 510630)

1 引言

随着IaaS云计算技术的不断成熟,电信运营商逐步引入相关技术并大力推进其庞大IT基础设施资源的集约化运营管理。近几年,电信运营商主要以虚拟化技术(包括ESXi、Xen Server、Hyper-V以及 KVM 等)为基础实现计算、存储、网络等资源的“池化”部署,以提升繁多的业务平台、IDC、计费和BOSS等IT基础设施系统资源的利用率并加快新业务的部署开通效率。“池化”逐渐实现基础资源的横向构建,同时也实现业务与资源的纵向剥离,但随着“池化”的不断深入,资源池对于“云化”提出了迫切需求,尤其是通过“云化”逐步提升资源池的智能弹性部署与自动化业务生成能力,逐步解决资源的自动化配置、调度、管理以及应用交付等问题。

IaaS云管理平台是“云化”核心,是实现大规模资源池智能弹性部署与自动化业务提供的集权式管理系统。对于传统电信运营商而言,“池化”到“云化”的演进过程中,可能会存在以下3点制约瓶颈。

·虽然国外专有IaaS云管理平台技术先进且功能较为完善,但其高成本性导致电信运营商在运营大规模云资源池的场景下,无法为用户提供更有优势的IaaS服务。

·电信运营商云资源池不仅虚拟化平台不同,而且涵盖不同类型的存储设备和网络设备,如果IaaS云管理平台真正实现异构化资源管理与调度,均需要大量的二次适配开发。另外,IaaS云管理平台在云业务运营层面必然需要实现多个部门、多个系统之间的流程衔接与打通,若实现自动化运营,必须在IaaS云平台中深度嵌入符合电信运营商需求的流程环节。

·厂商封闭的IaaS云管理平台技术导致电信运营商有被lock-in的风险,同时也无法集成其他更好、更具有优势的技术产品,无法为用户提供不同级别、不同内容、不同模式的服务。

为了有效解决电信运营商在IaaS云平台部署与实施过程中的瓶颈,更好地提供规模化IaaS云业务,需要结合自身需求规划设计电信运营级端到端IaaS开放式云管理平台,基于该平台可实现多厂商、多技术制式的兼容或适配,实现广域化云资源池的统一纳管,实现外部用户的黏性绑定与内部业务的灵活拓展,其开放性主要体现在以下3个方面。

(1)底层接入能力的开放

通过基础设施适配层兼容多种主流技术制式,通过不同模块定义不同虚拟化软件、对象存储、交换机/路由器、防火墙、负载均衡器以及其他云部件的适配插件,实现云平台多种技术、多种软硬件的兼容性,避免单一厂商产品的绑定。

(2)外部 API的开放

云平台基于各个服务组件提供统一的对外API,满足开发者或客户自有平台的资源调用以及相关应用部署要求。

(3)云平台系统架构的开放

平台基于分布式组件模块的方式,所有核心组件与服务组件均通过中央消息引擎实现松耦合关联,即可通过消息实现通信,也可通过API实现调用,新增组件只需要符合接口规范即可实现灵活接入,无需内核修改。

电信运营商在推动开放平台的过程中,可积极借鉴以OpenStack为代表的开源云平台,OpenStack技术架构的设计理念符合电信级运营需求,在系统架构、规模性、兼容性、功能、性能等方面具备运营级能力,可基于OpenStack发展满足业务运营需求的IaaS云平台。

2 开放式IaaS云平台的系统能力

基于电信运营商的业务功能需求与运营需求,开放式IaaS云平台必然具备相应的系统可扩展、安全可靠、资源弹性调度、底层兼容、上层应用感知、差异化服务(SLA)、规模部署、开放式接口、灵活计费、运营流程支撑、统一监控以及应用迁移等能力,以下主要介绍其中的系统可扩展、兼容、SLA以及规模部署能力。

2.1 系统可扩展能力

电信运营商基于IaaS云平台面向内外部用户提供规模化业务,必然会接收大量业务并发请求,并消耗大量业务处理能力。另外,IaaS云平台所面向的客户需求千差万别,系统必然会不断更新、不断改造,其变化过程是相关功能模块扩展的过程。因此,在性能和功能方面,IaaS开放云平台应该具备良好的系统可扩展能力,使得云平台系统在为用户提供服务的过程中能实现平滑扩展,保证系统的持续运行。

(1)系统容量与性能的扩展能力

当云平台系统已有资源无法应对公众客户大量请求时,能够通过硬件升级或增加硬件数量的方式增强系统的容量与性能。随着逐渐添加或升级硬件,系统容量能够线性增加、性能能够线性增强,同时扩展的过程不影响系统的正常运作。

(2)系统模块的扩展能力

云平台系统采用分布式架构,当系统需要新增功能时,新增功能以新增模块的形式添加到系统中。新增模块的过程不影响系统的运作以及整体性能的发挥。在系统运营的过程中,当公众客户提出新功能的需求时,系统模块的扩展能力使得系统能够良好扩展新功能,从而快速响应公众客户的需求,在面对市场竞争时更具优势。

2.2 系统底层兼容能力

IaaS开放云平台系统的底层兼容能力主要表现在4个方面:虚拟化软件的兼容、服务器硬件的兼容、网络设备的兼容、存储设备的兼容,具体介绍如下。

·虚拟化软件的兼容能力:兼容多种虚拟化技术,包括 KVM、Hyper-V、Xen Server/XCP、VMware ESX 等主流的虚拟化技术。

·服务器硬件的兼容能力:兼容主流的x86架构CPU芯片(Intel、AMD)以及不同工业厂商生产的标准服务器。

·网络设备的兼容能力:兼容不同工业厂商生产的标准路由器、交换机、防火墙、负载均衡器等网络设备。

·存储设备的兼容能力:兼容多种标准协议(iSCSI、FCoE、FC、NAS等)的存储设备,兼容不同工业厂商生产的标准存储设备。

2.3 系统差异化服务能力

IaaS开放云平台系统能够根据与用户签订的SLA协议提供相应的差异化等级服务。不同的虚拟化技术以及硬件设施所提供的IaaS服务有所区别,云平台系统深度兼容各类虚拟化技术以及不同制式、不同厂商的硬件设施,并在此基础上以不同服务模板的形式为不同类型的用户提供差异化服务。IaaS云平台采用商业化虚拟平台(VMware、Hyper-V、Xen Server等)以及高端硬件设备提供高端SLA服务,同时可采用其他开源虚拟化平台(KVM、XCP)以及普通的硬件设备提供相对低等级的SLA服务,或者根据用户的需求提供介于两者之间的SLA服务。用户可以根据发展的需求选择适合的SLA服务协议,IaaS云平台系统可根据SLA封装不同的软硬件模板并提供给用户。

2.4 系统规模部署能力

对于电信运营商,IaaS云平台系统必须具有大规模、跨广域的系统部署能力,能够跨广域纳管大规模的底层基础设施,实现弹性化智能调度,其部署能力主要包括以下两个方面。

(1)大规模部署能力

云平台系统是基于分布式技术的云操作系统,各种不同的功能并不是紧耦合于中心系统之中,而是以单一的功能模块存在,不同的功能模块通过消息机制实现互通。不同的功能模块均可单独部署,相互间的通信采用标准接口,通过底层通信总线完成各功能模块之间的数据交互和调用,从而形成整体开放式的IaaS云平台系统。因此,开放式平台的架构特点决定了系统能够灵活、大规模地部署在底层基础设施上,进而对底层基础设施进行管理与调度。

(2)跨广域部署能力

IaaS开放式云平台系统中的不同功能模块之间通过异步消息机制实现通信,当一个功能模块针对某一个会话发送请求消息时,系统无需锁定,可继续完成其他会话的流程处理,因此可根据不同区域的业务需求部署不同的功能模块,可有效支持跨广域业务提供能力。另外,开放式云平台可依据“就近原则”实现广域部署,解决广域网通信时延问题,使得用户通过就近原则实现节点接入。

3 开放式IaaS云平台架构研究

3.1 分布式模块架构

开放式IaaS云平台可参考OpenStack体系架构,采用分布式模块化逻辑架构,各个功能模块相对独立,耦合性较低,可灵活分布于不同节点,彼此通过消息中枢通信,如图1所示。

图1 开放IaaS云平台分布式体系架构

各个功能组件之间的协作可通过两种方式通信:一是通过消息中枢转发信息,二是通过数据库共享信息。对于消息中枢,发送消息等待响应的一方,是消息生产者,接收消息、执行相应任务并进行响应的一方是消息消费者,功能组件可同时具有消息生产者和消费者的角色。消息生产者将要执行的任务的方法名、参数、消息主题等信息打包成消息,发送给消息中枢,消息中枢根据消息的主题将消息转发到匹配的队列,并通知消息消费者。消息消费者从消息队列中解析相应消息并执行相应任务。如果消息需要进行响应,则消息生产者端在发送消息时建立一个消息消费者,而消息消费者端在执行任务后建立一个消息生产者,发送响应的消息。

数据库组件保存云资源池中所有物理机、虚拟机、存储和网络等基础资源的动态以及静态信息,并可由各个功能组件共享相关状态,基于不同的状态信息完成相应的业务处理。

3.2 层次化部署架构

为了满足电信运营商对于云资源池的跨域管理,其开放式IaaS云平台系统必然是层次化部署模式。理想中的IaaS云平台系统分层部署,包括4个层次,分别为:中心控制层、资源区域层、数据中心层以及集群层,具体介绍如下。

(1)中心控制层

中心控制层主要负责全网资源的调度以及用户的统一认证授权,主要由统一认证、系统接口、资源调度、数据库、消息中枢5个组件组成。用户通过中心控制层实现云资源池的访问,中心控制层的认证服务会对用户进行授权,并提供完备的API实现用户的对接操作。另外中心控制层的资源调度组件实现全网资源池的总体调度,包括所有资源的状态信息、配置信息、能力信息等的管理以及资源的有效调度管理。中心控制层的消息中枢组件实现资源区域层各个功能组件的消息存储与转发,数据库组件则保存所有用户信息和各个资源区域层、数据中心层以及集群层的信息。

(2)资源区域层

资源区域层主要实现本区域内所有数据中心以及集群资源的调度工作,主要由系统接口、资源调度、数据库、消息中枢4个组件组成。其中,系统接口组件主要提供本资源区域所有资源的API服务;资源调度组件实现资源总体调度,包括资源定位、资源配置、资源生命周期管理等;消息中枢组件主要实现本地各个功能模块的消息存储与转发以及同上层中心控制层以及下层数据中心层的消息中枢进行通信;数据库组件主要存储本区域所有资源的能力信息。

(3)数据中心层

数据中心层部署于单一数据中心内部,主要实现本地数据中心的资源管理与调度服务,其涵盖所有相关功能模块。数据中心层完成底层计算、存储和网络物理资源池化工作,并为上层用户提供弹性、可扩展以及灵活的资源服务,在此基础上实现监控、镜像模板、安全防护、负载均衡等应用服务。

(4)集群层

集群层是IaaS云平台系统的最小管理单元,一个集群的设备必须在同一机房甚至同一LAN内,其软硬件设备尽可能避免异构。提出集群的概念,是考虑虚拟机热迁移范围、单节点物理机纳管数量、共享存储访问效率,都受限于现有虚拟化技术,需要定义和划分建设部署的基本单元,保证该单元实现性能最优化和效率最大化。

3.3 计算虚拟化兼容架构

开放式IaaS云平台系统实现了底层物理资源的计算虚拟化。该平台兼容多种主流虚拟化软件,包括VMware ESX、Xen Server、Hyper-V等商业虚拟化软件,也包括XCP、KVM等开源虚拟化软件;平台封装了底层虚拟化软件的调用细节,向上提供了统一接口进行访问,简化上层调用平台功能编程的复杂度。计算虚拟化兼容平台架构如图2所示。

图2 计算虚拟化兼容平台架构

计算虚拟化兼容平台架构采用面向对象设计的思想,实现了底层虚拟化技术的兼容能力。接口模块作为基类封装底层虚拟化软件的功能,向上层应用提供计算虚拟化服务接口;底层虚拟化技术模块 (VMware模块、Xen模块、Hyper-V模块、KVM模块等)作为子类继承接口模块,根据不同虚拟化技术的API调用底层的虚拟化软件,实现计算虚拟化功能。计算虚拟化兼容平台通过新增模块的形式添加新的虚拟化技术。新增模块只需要继承接口模块基类、改写其中的接口实现,就能使得新虚拟化技术添加到计算虚拟化兼容平台中。

3.4 快速块存储兼容架构

开放式IaaS云平台系统的快速块存储组件提供给虚拟机使用但独立于虚拟机的永久块存储服务,快速块存储相当于云中的硬盘,这种硬盘通过挂载的方式附加到虚拟机上使用,但其生命周期与虚拟机无关,当虚拟机删除后,硬盘依然存在。CTOC系统的快速块存储服务兼容不同类型的标准设备(如SSD、SAS、SATA等)、不同标准通信协议的设备(如iSCSI、AoE、FCoE等)。快速块存储兼容架构采用面向对象设计思想,实现兼容各种不同接口、不同工业厂商生产的存储设备。接口模块作为基类封装调用底层存储功能的细节,向上层提供统一的存储服务接口。由于不同工业厂商生产的存储产品众多,且不同的存储产品具有不同的编程接口,因此快速块存储架构根据不同的标准通信协议(ISCSI、FCoE、AoE)划分为大子类直接继承接口模块(如图3所示的FCoE模块、iSCSI模块);使用相同标准通信协议存储设备的驱动模块继承对应的大子类;如果同种标准通信协议的存储设备的大部分接口功能相同,则可以把相同的接口抽象形成新的中间模块,进而简化编程复杂度。

根据上述设计思路最终形成的快速块存储架构如图3所示,快速块存储的模块组成形成树状图,叶子节点模块继承模块,根据存储设备提供的特定接口实现存储设备的使用管理。当IaaS云平台系统新增存储设备时,只需根据存储设备的特点归类添加到特定的父类下,并根据存储设备的接口改写父类的方法实现存储设备的驱动模块,此后系统便能使用新增的存储设备。

3.5 智能虚拟网络兼容架构

图3 开放式IaaS云平台系统的快速块存储兼容架构

智能虚拟网络提供虚拟网络服务。用户能将自己在弹性计算中的虚拟机纳入虚拟网络中。虚拟网络能划分为多个子网。智能虚拟网络也通过在子网级别设置访问控制列表和在实例级别设置安全组增加子网内实例的安全性。智能虚拟网络组件的架构如图4所示。

图4 智能虚拟网络组件的架构

IaaS云平台系统智能虚拟网络主要提供与虚拟网络、子网、安全组、访问控制列表相关的操作接口,负责载入智能虚拟网络插件,并将API请求交给智能虚拟网络插件处理。

4 结束语

开放式IaaS云平台为分层、模块化的体系架构。架构中的各功能模块分布式部署且相对独立,通过消息中枢进行通信,通过数据库共享云资源状态等信息,方便增加新的服务模块,该部署架构中包括高可用的分布式消息中枢网络,用来支持系统不同层次区域之间的通信,同时功能模块所在的节点也可设计为冗余模式,支持容灾备份,提供高可靠、高安全的部署方式。传统电信运营商需要充分利用自身网络基础设施优势,积极探索与拓展开放式公有云的广域服务提供能力,基于智能管道致力于功能的细化、架构的优化与部署的规模化,最终实现云平台精细化、构件化与服务化的运营。

1 Openstack.Openstack Compute Administration Manual,2012

2 中国电信集团公司.云计算技术手册,2010

猜你喜欢
存储设备虚拟化消息
一张图看5G消息
基于OpenStack虚拟化网络管理平台的设计与实现
对基于Docker的虚拟化技术的几点探讨
H3C CAS 云计算管理平台上虚拟化安全防护的实现
Windows 7下USB存储设备接入痕迹的证据提取
基于Flash芯片的新型存储设备数据恢复技术研究
存储虚拟化还有优势吗?
用批处理管理计算机USB设备的使用
消息
消息