【IT168 评论】近些年来,云计算是非常热门的话题和技术,伴随着云计算技术的不断发展,IT的各个领域都在发生着深刻的变化。这些变化无疑给当前数据中心的建设带来了新的挑战和机遇。如何设计和建设具备云计算服务能力的数据中心,这是现代数据中心建设者们需要考虑和面对的问题。本篇文章结合自身实际经验,探讨如何借助IBM云计算参考架构(CCRA)设计具备云计算服务能力的数据中心,总结在利用IBM云计算参考架构进行数据中心设计方面的经验。
1. 数据中心建设面临的挑战
随着云计算的快速发展,云计算已成为IT技术创新的重要特征。在20世纪80年代网格计算、90年代公用计算,21世纪初虚拟化技术、SOA、SaaS应用的支撑下,云计算作为一种新兴的资源使用和交付模式逐渐为学界和产业界所认知。中国物联网校企联盟评价云计算为“信息时代商业模式上的创新”。通过云计算技术进行业务的创新与扩展,这是现在很多企业都在思考的重要问题之一。 企业可以通过公有云、私有云或混合云获得云计算服务,无论是哪一种云计算服务方式,都需要依赖于数据中心的建设。企业的信息主管需要对数据中心进行重新定位,把数据中心从过去的成本中心转型为企业的利润中心和创新中心,以便能为企业业务提供更好的支撑和服务。
在云计算这种新的服务模式的要求下,新建的数据中心需要更大规模、更加专业、更加绿色节能、更加智能,这些是现代数据中心的建设者们心必须要考虑和解决的问题。总的来说,现代数据中心的建设面临的挑战主要可以归纳为以下几个方面:
(1)高能耗:传统的数据中心没有将能源视为重大挑战,在能源管理方面没有得到足够的重视。
(2)数据增长:现在的数据很多是非结构化数据,数据中包含大量的多媒体数据,例如图像和声音;特别是大数据概念的提出和有关技术的发展,使得数据呈几何级数增长,这是现代数据中心硬件基础架构所面临的最大挑战,原来的设计根本无法满足现代数据发展的需求。
(3)系统性能和可扩展性:通常的IT设计理念是根据现有业务的需求和未来3到5年的业务发展,规划和设计数据中心,但是随着时间的推移和企业业务的发展,企业的信息主管发现过了1到2年后,数据中心中的基础架构并不能满足业务运行的需求。
(4)网络性能和网络架构:网络系统负责计算资源的互相连接,为各种角色提供访问服务,网络系统的性能直接影响到用户的体验,对于数据中心至关重要。随着移动技术和个人终端技术的发展,数据中心需要面对更多远程办公和移动办公的需求,现代的网络应用对数据中心提出了更高的要求。
(5)运营和维护成本:随着机器设备和应用系统的不断增加,以及新技术的不断引进,整个数据中心的IT环境越来越复杂。为了保证数据中心的正常运行,需要不断增加运营维护人员,从而导致运营和维护成本的不断增加。
2. 解决问题的思路 – “云”化数据中心
挑战与机遇是并存的。如何积极面对现实的挑战,理顺解决问题的思路,找到解决问题的办法,这是现代企业的信息主管们需要面对和解决的问题。
在技术发展、市场需求以及企业业务发展的驱动下,数据中心与云计算建设的浪潮正在各地蓬勃发展。各地政府正在积极行动,例如北京、上海、深圳、天津、成都、杭州、重庆等地,都陆续提出了云计算的发展规划,包括北京的“祥云计划”,上海的“云海计划”,深圳提出的“珠三角云计算中心”以及天津在建的“建设优异云计算产业总部”等等。
除了各地政府以外,国内主要运营商为了抓住产业升级换代的发展机遇,纷纷加大云化数据中心建设力度,使自己的数据中心具备云计算服务的能力。以中国电信、中国联通为代表的龙头型运营商纷纷在云计算相关技术研究领域投入巨资,同时加快云计算数据中心建设的步伐与进程。
数据中心是IT基础设施集中存放的场所,是信息服务的集中载体。在企业业务发展的过程中,数据中心发挥着越来越重要的作用,可以说现代企业的业务运转已经离不开数据中心的正常运行。而在数据爆炸式增长和云计算快速发展的今天,如何借助有关信息技术和管理手段,云化企业的数据中心,使数据中心具备云计算服务能力。也就是说,把云计算技术引入到数据中心建设和维护中,紧密结合企业的业务,把数据中心从过去的成本中心转型为企业的利润中心和创新中心,同时降低数据中心的整体运营维护成本,提高数据中心的自动化运营维护管理水平。
随着云计算逐步被企业和客户所接受,数据中心实际上是云计算服务的载体,这样就引出了云计算数据中心的概念。云计算数据中心通过大规模、高密度集成的方式,采用高性能、经过优化的基础架构,实现计算资源按需使用、按需付费,可以降低信息服务的费用,通过规模经营降低能源消耗。
从传统数据中心到云计算数据中心是一个渐进的过程。对于云计算数据中心,除了规模化、集中程度更高,关键在于服务。理念需要转变,云计算数据中心强调的全方位、透明式的服务理念。从提供的服务方面划分,云化数据中心的过程可以划分为四个阶段,托管型、管理服务型、托管管理型和云计算管理型(就是所谓的云计算数据中心)。
托管型----典型服务:提供IP、宽带和电力
在托管型数据中心里,服务器由客户自行购买安装,期间对设备的监控和管理工作也由客户自行完成。数据中心主要提供IP接入,带宽接入和电力供应等服务。总体来说,提供服务器运行的物理环境。
管理服务型----典型服务:安装、调试、监控、湿度控制、IP/带宽/VPN和电力
客户自行购买的服务器设备进入到管理服务型数据中心,工程师将完成从安装到调试的整个过程。当客户的服务器开始正常运转,与之相关联的网络监控(包括IP、带宽、流量、网络安全等)和机房监控(机房环境参数、机电设备等)也随之开始。对客户设备状态进行实时的监测以提供最适宜的运行环境。除IP、带宽资源外,也提供VPN接入和管理。
托管管理型----典型服务:服务器/存储、咨询、自动化的管理和监控、IP/带宽/VPN和电力
相比管理服务型数据中心,这一型数据中心不仅提供管理服务,也向客户提供服务器和存储,客户无需自行购买设备就可以使用数据中心所提供的存储空间和计算环境。同时,相关IT咨询服务也可以帮助客户选择最适合的IT解决方案以优化IT管理结构。
云计算数据中心----典型服务:IT效能托管、服务器/存储、咨询、自动化的管理和监控、IP/带宽/VPN 和电力
云计算数据中心中托管的不再是客户的设备,而是计算能力和IT可用性。数据在云端进行传输,云计算数据中心为其调配所需的计算能力,并对整个基础构架的后台进行管理。从软件、硬件两方面运行维护,软件层面不断根据实际的网络使用情况对云平台进行调试,硬件层面保障机房环境和网络资源正常运转调配。数据中心去完成整个IT的解决方案,客户可以完全不用操心后台,就有充足的计算能力(像水电供应一样)可以使用。
3. IBM云计算参考架构介绍
云计算数据中心概念的提出,为现代企业的信息主管们开阔了思路,为数据中心的升级换代指明了方向,为云计算的落地提供了坚实的载体保障。要使数据中心真正能够提供云计算服务,还有很多工作需要做。关于机房本身基础设施的建设,有一定的标准和依据可以参考,例如国际公认的数据中心标准ANSI-TIA-942-2005 (Telecommunications Infrastructure Standard for Data Centers)。按照这个标准,数据中心分为Tier 1、Tier 2、Tier 3、Tier 4四个等级,Tier 4最高。它对数据中心的电气参数、冗余、地板承载、电源、冷却装备、无故障时间,甚至造价等等都制定了相应的标准。
但是,云计算数据中心究竟提供哪一个层次的服务,是基础架构即服务(Infrastructure as a Service),平台即服务(Platform as a Service),还是软件即服务(Software as a Service)?这取决于云计算中心的定位。就算是明确了服务层次的划分与定位,例如某云计算数据中心的目标定位是基础架构即服务,那么这个层次的服务到底需要哪些部署哪些组件(Components)才能足以提供基础架构即服务?还有,先部署哪个组件,后部署哪个组件?对于这些问题的回答,目前还没有大家公认的标准和依据可以参考。一些知名的大公司都在制定自己的云计算参考框架,例如Google,Amazon,IBM,,HP,Oracle,Cisco,金蝶,华为,百度,腾讯,阿里巴巴。这些公司的云计算参考框架为大家建设云计算数据中心的服务组件提供了有益的参考。本人对IBM的云计算参考框架(Cloud Computing Reference Architecture)做了一些研究,下面结合自身的体会对此参考架构做简要的介绍。
IBM根据多年为客户咨询、设计与实施云计算解决方案的经验定义了一个云计算参考架构(CCRA),其整体架构总览如图1所示。这个参考架构凝聚了IBM为数百位客户在云计算领域服务的实际经验,这是IBM集体智慧的结晶,集成了硬件、软件、服务,以及研究等部门的智慧。从2010年提出的1.0版本开始,经过中中间的2.0和2.5版本的发展,目前的最新版本是3.0。这是一个蓝图或架构云计算实现的指南,它是由功能性及非功能性需求所驱动,来源于许多云计算实施案例。IBM云计算参考架构为云计算平台的实现提供指导性原则和技术工作产品,如服务和部署模型,并定义了具体实现的采用模式(Adoption Pattern)。一个采用模式具体表达了体系结构模式,具体说明了企业单位可以用它来实施云计算解决方案的方法,可以指导企业单位定义与设计满足自己需求的云计算解决方案。
▲图1 IBM云计算参考架构总览
IBM云计算参考架构定义了构成云计算环境的基本架构元素,下面做简要说明:
(1)角色
该架构定义了三个主要角色:云服务消费者(Cloud Service Consumer)、云服务提供者(Cloud Service Provider)、云服务创建者(Cloud Service Creator)。每一个角色可以由单人执行,也可以由一组人或一个组织团体执行。一个云服务消费者可以是一个组织、一个人或一个IT系统,他们消耗着特定的云服务实例。云服务提供者有能力为云服务消费者提供云服务。云服务创建者的目的是创建一个能够被云服务提供商运行并暴露给云服务消费者的云服务。通常情况下,云服务创建者利用云服务提供商暴露的服务功能来创建他们的云服务。就如同云服务提供商和云服务消费者一样,云服务创建者可以是一个组织或一个人。
(2)服务
在IBM云计算参考架构中设计了四种云服务模式:基础设施即服务(IaaS)、平台即服务(PaaS)、软件即服务(SaaS)和业务过程即服务(BPaaS)(业务过程即服务是IBM自己定义的,在美国国家标准中只定义了IaaS、PaaS和SaaS)。
(3)基础设施
在IBM云计算参考架构中,基础设施所有的元素都在云服务提供商里面,这包括服务器、存储、网络资源和机房设施。基础实施元素仅限于硬件基础设施,它不包括如系统管理程序,也不包括任何虚拟化管理软件。
(4)公共云管理平台(Common Cloud Management Platform)
在IBM云计算参考架构中,公共管理平台(CCMP)的功能是通过由CCMP 内部组件公开的AP来访问的。CCMP 被定义为通用云的管理平台,以支持跨越IaaS、PaaS、SaaS、BPaaS任何类别的云服务管理。CCMP 分为两个主要元素:运营支持服务(Operational Support Services) 和业务支持服务(Business Support Services)。
运营支持服务(OSS):代表了一系列运营管理和相关技术服务,这些服务将由CCMP暴露给服务消费者,这些服务需要通过云服务的创造者来实现。主要包含平台与虚拟化管理(Platform and Virtualization Management),监控与事件管理(Monitoring & Event Management),IT资产与授权管理(IT Asset & License Management),容量与性能管理(Capacity & Performance Management),自动化部署(Provisioning),配置与变更管理(Configuration & Change Management),服务自动化管理(Service Automation Management),事件与问题管理(Incident & Problem Management),IT服务水平管理(IT Service Level Management),服务交付目录管理(Service Delivery Catalog Management),服务请求管理(Service Request Management),镜像生命周期管理(Image Lifecycle management),备份与恢复管理(Backup & Restore Management),安全合规性管理(Security Compliance Management),补丁管理(Patches Management)。
业务支持服务(BSS):代表了一系列与业务相关服务,这些服务将由CCMP暴露给服务消费者,这些服务需要通过云服务的创造者来实现。主要包含客户账户管理(Customer Account Management),合同与合约管理(Contracts & Agreement Management),计量(Metering),定价管理(Pricing),评级管理(Rating),账单管理Billing,订单管理Order Management,服务目录(Service Offering Catalog),服务管理(Service Offering Management),授权管理(Entitlement Management),服务请求管理(Service Request Management),预定管理(Subscription Management),结算管理(Clearing & Settlement),应付账款(Account Payable)和应收账款(Account Receivable)。
(5)安全性、弹性、性能和易用性
安全、弹性、性能和易用性横跨了基础设施、公共管理平台(CCMP)和三个云服务角色几个方面。这些非功能性要素必须从端到端的角度来看,包括CCMP本身的组成结构,硬件基础设施的设置(例如从隔离、网络分区的划分、为数据中心配置灾难恢复等)以及如何实现云服务。
(6)服务创建工具
云服务创建者使用服务开发工具来开发新的云服务,包括开发运行工件(Runtime Artifacts)和有关管理组件(如监测、计量、配置等)。
4. 借助IBM云计算参考架构设计云计算平台经验分享
云计算数据中心概念的提出为数据中心的升级换代指明了方向,IBM云计算参考架构为云计算平台的落地提供了刚要性指导文件,其中的云化数据中心采用模式(Cloud Enabled Data Center adoption pattern),提供了经过试验和证明的方法来定义和实现IaaS解决方案。对于企业单位来说,IaaS通常是个起步点。因为IaaS是起点,IaaS必须支持模块化和灵活的体系结构,很容易就可以集成更多的功能,IBM云化数据中心采用模式提供了必要的模块化体系结构来实现这一目标。
根据IBM云计算参考架构云化数据中心采用模式的建议,设计一个端到端的、能提供基础架构即服务的云计算平台,大概需要经过4个步骤:(1)理解客户(Understand Client);(2)定义客户的需求(Define Clients Requirements);(3)方案设计(Design Solution);(4)详细设计(Detail Design)。
下面是结合自身的体会,说明如何借助IBM云计算参考架构云化数据中心采用模式来设计能提供基础架构即服务(IaaS)的云计算平台。
4.1. 理解客户需求
理解客户需求首先要关注客户的业务,了解客户的业务策略和IT发展规划,了解客户业务驱动的关键绩效指标(KPI),全面了解是什么原因促使客户采用云计算解决方案,对工作负载进行分析和排序,看哪些业务和工作负载比较适合于在云计算平台上运行。在对客户进行了解时,看客户是否有一下业务驱动需求:
(1) 降低运营成本;
(2) 动态扩展数据中心;
(3) 通过标准化和自动化减少新服务交付时间;
(4) 根据业务目标调整IT资源分配;
(5) 提升服务水平的合规性、准确性、再现性和可追溯性;
(6) 使数据中心的流程更加合理,同时促进数据中心的整合;
(7) 成为云计算服务的提供者;
(8) 会计集中核算与计费;
(9) 全面改变传统的服务交付模式为云计算交付模式;
4.2. 定义客户的需求
这个阶段的主要工作是,(1)定义功能需求;(2)确定角色和相关用例;(3)定义非功能需求。
首先,通过使用IBM云计算参考架构云角色定义为云计算解决方案确定特定的角色,如图2所示,在该图中定义了云计算数据中心所涉及到的主要角色,可以根据客户的实际情况进行选择。
然后,使用IBM云计算参考架构云用户案例包来定义客户的功能需求。如图3所示,在该图中提供了云计算数据中心所涉及到的主要案例,以及微观视图。根据客户的实际情况进行选择、扩展和修改确定的用例,以定义特定的功能需求。同时,还需要根据客户的实际情况增加必要的特殊功能需求,因为不同客户可能有不同的功能需求。
当功能需求完成后,还需要定义和记录非功能性需求。根据客户的实际情况,从IBM云计算参考架构中选择适用的非功能性需求。同时,根据客户的实际情况增加相应的非功能需求。在IBM的云计算参考架构中,主要涉及到以下非功能需求:(1)可靠性、可用性和可服务性;(2)性能;(3)可扩展性;(4)可消费性;(5)安全性;(6)备份与恢复;(7)可用性和集成性;(8)可伸缩性与容量;(9)灵活性;(10)约束性;(11)可访问性;(12)计量和核算;(13)数据私密性;(14)可治理性;(15)服务水平管理,等等。
▲图3 IBM云计算参考架构用例包与微观视图
4.3. 方案设计
这个阶段的主要工作是,(1)识别并确定系统上下文(System Context);(2)做出架构决策(Architecture Decision);(3)定义架构总览(Architecture Overview)。
首先,识别所有与云计算平台相互交互的角色和系统,为平台定义系统边界,理解平台与已有环境和系统之间的接口,为有关交互定义接口,目的是为云计算平台确定系统上下文。图4是一个系统上下文示意图,可供参考。
然后,需要为云计算平台做出架构决策。从IBM云计算参考架构提供的架构原则中选择并应用所需要的特定原则,并根据实际需要增加必要的其它原则。架构原则为架构决策提供了全方面的指导。 IBM云计算参考架构原则可以归纳为以下四个方面:
(1) 高效原则:主要指的是设计云计算平台时的效率,在实现云技术的特征(如弹性、自助服务访问、灵活外包)时,其设计需特别注意云计算平台的高效性以及快速交付和快速变更能力。
(2) 轻量级原则:需要支持精益服务管理,通用云管理平台促进轻量级精益服务管理策略、流程和技术。
(3) 规模经济原则:探索并利用云服务设计的共性,在服务设计中需寻找服务的共性并加以利用。
(4) 通用性原则:定义和管理通用云服务生命周期,同等看待IaaS/PaaS/SaaS/BPaaS,通过共享的、通用的管理平台“探索”支持各种云服务的机制。
最后,需要为云计算平台定义架构总览,如图5所示。根据实际情况和需要,从IBM云计算参考架构总览图中选择所需要的组件,为云计算平台定义逻辑组件和服务能力。因为本文是以IaaS为例来说明如何使用IBM的云计算参考架构,所以在下面的云平台架构总览中,只选择提供支持IaaS服务能力。
▲图5 云计算平台架构总览示意图
4.4. 详细设计
这个阶段的主要工作是,(1)云服务设计(Cloud Service);(2)组件模型(Component Model)设计;(3)操作模型(Operational Model)设计。
首先,为所建云平台设计所需要的云服务。IBM的云计算参考架构只是提供了一个参考性框架,具体需要哪些云服务,需要云平台的架构师来确定。对于所需要的每一个云服务,可以用下面的模板来做云服务设计决定,模板如表1所示。
表1 云服务决策模板
云服务创建步骤 | 行动或决策 | 产品选择 | 步骤结果 |
1. 详细说明云服务 | |||
2. 实现云服务功能的运行环境 | |||
3. 定义交付的单元和等级 | |||
4. 实现自助式服务交付和管理功能 | |||
5. 实现监控度量和事件关联规则 | |||
6. 实现事件、问题和资产管理流程 | |||
7. 实现具有弹性的服务水平(SLA) | |||
8. 实现备份方法 | |||
9. 实现安全功能 | |||
10. 实现该云服务特定的计费度量 | |||
11. 为该云服务实现不同等级的计费方式 | |||
12. 注册该云服务到服务目录中 |
然后,需要为云计算平台设计组件模型。从IBM云计算参考架构提供的组件模型中识别并确定做需要的组件,并根据实际需要增加必要的其它组件。画出组件模型图,并显示组件之间的管理关联关系。图6是云计算平台组件模型示意图。
最后,需要为云计算平台设计操作模型。操作模型在抽象层次描述了云计算数据中心,具体说明了应用程序的组件是如何被组织和连接的,并说明了他们的位置和宿主关系。操作模型设计需要达到以下目标:
(1) 选择详细的物理组件和相应的材料清单(包含硬件、软件和服务)。
(2) 显示由选定的产品能实现的组件功能。
(3) 设计物理拓扑和部署模式。
(4) 用所选择的一组核心产品设计操作模型,并通过添加产品逐渐扩展。
为了完成上述目标,需要完成以下工作:
(1) 设计(管理和被管理)位置和节点的位置。
(2) 设计部署拓扑,包括网络、租户隔离和安全。
(3) 为每个节点选择硬件和软件
(4) 设计一体化的运营模式,并与现有系统集成。
(5) 定义和选择集成服务。
(6) 设计备份和恢复、灾难恢复(可选)。
当操作模型设计完成后,可以得到如图7所示的操作模型逻辑视图。
▲图7 云计算平台操作模型逻辑视图
5. 总结
本文从数据中心在云计算这种新的服务模式的推动和要求下所面临的挑战开始描述,面对现实的挑战,找到了解决问题的办法:云化数据中心,也就是说把云计算技术引入到数据中心建设和维护中,紧密结合企业的业务,把数据中心从过去的成本中心转型为企业的利润中心和创新中心,同时降低数据中心的整体运营维护成本,提高数据中心的自动化运营维护管理水平。接着介绍了IBM云计算参考架构(CCRA),该架构为云计算数据中心的实现提供了具体指导性原则和技术工作产品。最后,结合自身的体会,借助IBM云计算参考架构云化计算中心采用模式的建议,通过四个步骤设计一个能提供基础架构即服务(IaaS)的云计算平台。希望通过本文的介绍,能给读者在云计算数据中心建设方面提供一些参考。
参考资料:
1. IBM,红皮书,http://www.redbooks.ibm.com/abstracts/redp4893.html
2. IBM云计算参考架构 2.0,
http://www.opengroup.org/cloudcomputing/uploads/40/23840/CCRA.IBMSubmission.02282011.doc
3. IBM云计算参考架构 3.0,
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Wf3cce8ff09b3_49d2_8ee7_4e49c1ef5d22/page/IBM%20Cloud%20Computing%20Reference%20Architecture%203.0
作者简介:
王益斌 系统架构师
任职于某大型外资IT企业,从事信息技术服务工作。熟悉IBM System x系列服务器,IBM Power System系列服务器,IBM DS系列存储器产品,熟悉IBM DB2数据库,熟悉IBM WAS应用服务器,熟悉IBM ITM监控管理平台。负责规划和设计企业云计算平台。