通过对云计算数据中心提高资源利用率和用户QOS的需求进行分析,围绕其中的关键技术虚拟化技术,从服务器虚拟化、网络虚拟化、存储虚拟化三个方面进行总结,针对云计算平台建立其可用性模型,分析了IAAS,PAAS,SAAS 三种云服务模式的可用性计算方法,最后通过实验验证了云计算可用性参考模型适用于常见的云服务模式。
1.概述
目前数据中心的规模迅速发展,根据Netcraft服务器数量报告,Akamai Technology达到10.5万台,OVH达到10万台,Google根据能耗估计约90万台。快速发展的数据中心正面临着用户需求多、能耗高、运维成本高、安全性差等的突出问题。因此,数据中心需要采用新的技术,来实现降低成本,提高资源利用率和系统可靠性的目的。
云计算概念从提出之初,其目标非常明确,即利用虚拟化技术整合现有零散资源为可扩展的动态资源,以网络为载体提供硬件基础设施、运行平台、业务功能软件等形式的自动化服务,而用户利用网络便可以以低廉的价格、良好的服务质量保证(QOS)、按需地获得资源和服务。其具有按需服务、广泛的网络接入、资源共享、弹性计算、服务可度量的特征,目前云计算研究中关注的热点主要包括提高资源利用率、节约能源、降低运行成本、云计算安全等。
云计算数据中心,要求资源能够被统一调度、网络可扩展、系统高可靠、运维自动化。虚拟化技术对底层硬件资源进行抽象,对上层应用程序透明,其通过整合零散的资源为虚拟可管理的动态资源,从而实现资源的按需管理,提高动态资源的利用率。因此虚拟化技术是推动数据中心发展的核心技术。
2.虚拟化技术
数据中心硬件主要包括服务器,存储和网络。因此虚拟化技术也分为三个部分,分别为服务器虚拟化技术、存储虚拟化技术、网络虚拟化技术。
2.1 服务器虚拟化
服务器虚拟化的目标是提高服务器资源的利用率,实现数据中心的绿色节能。从技术实现方案来说,可以大致分为操作系统级虚拟化(OS-Level)、主机虚拟化(Hosted)、裸金属虚拟化(Bare-Metal)。
操作系统级虚拟化是在操作系统中模拟出一个运行应用程序的容器VE(Virtual Environment),所有虚拟机共享内核空间,性能好,耗费资源最少,缺点是操作系统强关联性,如基础操作系统为Windows,虚拟机系统只能是Windows。代表产品有Parallels公司的Virtuozzo(商用产品)和OpenVZ(开源项目)。
主机虚拟化技术引入虚拟机管理层Virtual Machine Monitor(VMM),构建出基本的虚拟硬件平台,达到虚拟化系统的独立性。
Hosted虚拟化中VMM需要管理所有资源的调度,因此虚拟化性能较差,主要适用于个人用户和测试环节。代表产品有VMware Workstation、Microsoft Virtual PC、Virtual Server、Oracle Virtual Box等。
裸金属虚拟化技术采用VMM代替操作系统直接管理硬件资源的方式,这种管理硬件资源方式的性能处于主机虚拟化与操作系统虚拟化之间,裸金属虚拟化技术的代表产品有VMware公司的Vsphere Esxi系列产品、微软公司的Microsoft Hyper-V系列产品和思杰公司的Citrix XenServer系列产品,以上虚拟化技术比较成熟,在金融、证券、互联网等行业的生成环境中大量被使用。
2.2 网络虚拟化
网络虚拟化的是利用物理网络资源在逻辑上划分出各自独立的虚拟网络,达到以满足多租户权限分离、自由管控逻辑网络、网络流量隔离的网络技术发展方向。虚拟局域网(VLAN)由于4096个逻辑网络的限制,很难满足由大量虚拟机构成的大二层网络的网络需求。
在虚拟化产品中,VMware等虚拟化厂商就提出了Vswitch的概念通过软件交换机解决同一台物理服务器内部的VM二层网络互访,跨物理服务器的VM二层互访转发给传统的接入层交换机去处理。
但Vswitch部署带来两个问题,一是对于VSwitch的管理问题,Vswitch是在服务器中进行部署,模糊了网络管理和服务器管理的界限;二是Vswitch的性能问题,由于同一台物理机的VM二层流量还是由服务器的CPU来处理,不符合虚拟化提高资源性能的利用率的要求。
为解决虚拟交换机的管理问题,Cisco首先提出了Nexus1000V技术架构。通过部署Nexcus1000V软件,配置管理层面的虚拟化,像管理物理交换机一样管理Vswtich,实现对传统VSwitch的功能扩展,但该产品也只解决了网络和服务器管理的边界问题,同时还对服务器性能有一定的影响。
为了解决性能问题,IEEE(Institute of Electrical and Electronics Engineers)标准组织提出了802.1Qbg EVB(Edge Virtual Bridging)和802.1Qbh BPE(Bridge Port Extension)两个标准,目前Cisco 采用FEX+VN-Link(包括vNIC,vETH,Port Profile)技术实现了802.1Qbh标准体系。
2.3 存储虚拟化
存储虚拟化的定义为利用存储系统的内部系统对计算、网络和应用资源进行进一步抽象和隔离,目的是实现独立于数据管理、应用程序和网络的逻辑上统一的存储资源。
在虚拟运行环境下,为虚拟平台提供虚拟存储设备主要包括下面4种方式:1)基于网络存储协议(Network Storage Protocol),包括并行文件系统、NFS、OCFS2等方式。这种方式需要高可靠的网络支持,缺点是稳定性和性能不高。2)物理硬盘(含分区),包括SAN磁盘,iSCSI 磁盘等。这种方式缺点是存储空间容量大小不易调整。3)基于虚拟磁盘镜像文件的方式,目前常见的镜像文件格式有vmdk、vhd、img等格式。这种方式的优点是可以通过配置文件灵活配置镜像文件属性。4)基于逻辑卷的方式,可以动态地增减容量的大小,支持Snapshot、条带化、提高IO并行性能等属性,目前逻辑卷管理工具主要有基于Linux内核自带的LVM、HPLVM、EVMS、VxVM等逻辑卷管理工具。
3.云计算可用性参考模型
根据Berkeley对云计算模型的定义,可以分为基础架构平台IAAS(Infrastructure as a service),平台服务PAAS(Platform as a service),业务软件SAAS(Software as a Service)三层结构[6],其中IAAS主要关注网络架构和虚拟化技术,提供基础架构服务,PAAS主要面向应用开发,提供开发平台服务,SAAS面向终端用户,提供软件产品服务。据Gartner2013年公有云市场份额将会增长18%,达到1310亿美金,在IAAS方面,增长速度为47.3%,市场份额为90亿美元,随着越来越多的企业把基础架构、应用和业务数据迁移到云计算平台,对云服务提供商的服务质量QOS(Quality Of Service)提出了越来越高要求。
3.1 云计算可用性模型
云计算可用性模型(Cloud Computing Model,CCM)如图1所示,模型中共分为三个部分,分别为基础架构层(Infrastructure Layer,IL),云计算服务层(Service Layer,SL),用户层(User Layer,UL),可表示为CCM={IL,SL,UL}。
IL ={Computing, Storage, Network}
服务层(SL)由IAAS资源集(Resource Set,RS),PAAS资源集,SAAS资源集组成,可表示为如下形式,SL={IAAS RS,PAAS RS,SAAS RS}
定义1:AU(Availability Unit):相连两层之间,为上层提供服务里的最小服务单元,是云计算服务的最小单位。同一层中多个AU之间互相独立,互不影响。
定义2:AS(Availability Set):同一层中,多个AU联合,对外提供同一个服务,如负载均衡服务(Load Balance Service,LBS),高可用服务HA(High Availability)。
定义3:DA(Deploy Availability):业务部署后的可靠性,与提供服务的多层次的AU和AS相关,如一个SAAS服务利用第三方的PAAS和IAAS提供服务。
定义4:AU的云计算服务的最小单位,假设其独立可靠性是个常数λ。
由定义2,当所有AU都失效的情况下,AS才失效,因此AS的部署可靠性可表示为:
根据图1所示,SAAS业务由两个PAAS共同提供服务,为了提高PAAS的可靠性每个PAAS由两个IAAS共同提供服务。根据公式(4)不难得出如下结论:
通过对云计算可用性模型的分析,要提高资源的利用率和云计算用户的QOS,采用虚拟化技术提高AU的可靠性和利用率,实现资源的按需使用。
4.实验分析和总结
为了验证云计算可用性参考模型,采用Cisco Ucs B200刀片服务器3台,Cicso6248 交换矩阵2台,EMC NAS48 存储1台,安装Vmware Vsphere 5.1服务器虚拟化软件,VMware Vcenter管理软件,Vmware Vcloud Director 数据中心管理软件,搭建完成2套IAAS平台的功能,并模拟提供申请服务,结合Vmware Vsphere 5.1中的HA、DRS(Distributed Resource Scheduler)、Vmotion特性功能,依据可用性参考模型得出如下结论,在保障云计算数据中心电力、制冷等外在因素的条件下,全年整个系统的业务恢复时间不大于10小时,可以满足用户系统的可用性达到99.9%。
本文通过对云计算数据中心提高资源利用率需求进行分析,围绕数据中心的虚拟化技术,从服务器虚拟化、网络虚拟化、存储虚拟化三个方面进行总结,针对云计算业务可用性建立可用性模型,分析IAAS,PAAS,SAAS三种服务模式的可用性计算方法,最后通过实验验证了云计算可用性参考模型适用于常见的云服务模式。
【凡本网注明来源非中国IDC圈的作品,均转载自其它媒体,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。】