而据全球权威机构Gartner调查,到2020年,全球主要IT营运商“云计算”(包括数据处理和电信网络)的能耗将近2万亿千瓦时,超过德、法、加和巴西等4国的能耗总和。
能耗已然成为限制数据中心发展的新原因,如何降低云计算的能耗已成为研究的热点问题[4]。
1.2针对云计算能耗现状的研究
云计算是并行计算、效用计算、网格计算、物联网等多种IT技术混合演进的成果,其成熟度较高,在Amazon、IBM、微软和中国移动等大公司的大力推动下,其发展极为迅猛[5,6]。
Amazon使用简单存储服务(Simple Storage Service,S3)和弹性计算云(Elastic ComputeCloud,EC2)来为企业提供计算和存储服务,并在云计算、云存储等方面一直处于领先地位。2007年11月,IBM也推出了“BlueCloud”计算,它为客户提供即买即用的云计算平台。“BlueCloud”米通过Hadoop技术和Power VM、Xen虚拟技术帮助客户构建云计算环境,使来自全球的各种应用均可以访问分布式的大型服务器池,让数据中心得以在类似于互联网的环境下进行计算。2008年10月,微软推出了 Windows Azure操作系统。Azure是微软云计算技术的核心,它运行在微软云计算平台的最底层——微软全球基础服务系统,该微软全球基础服务系统由遍布全球的第四代数据中心构成。
研究显示,数据中心的物理节点在空闲时(CPU 利用率为0)消耗的电能为满负载时(CPU 利用率为100%)能耗耗的60%左右。由此可见,提高数据中心的CPU利用率可以有效地减少电能的消耗。当前研究主要使用虚拟化技术[7]减少电源消耗。它能使多个虚拟机实例运行在同一台物理机上。利用虚拟机监控器,例如KVM 、Xen等,可以支持运行中的虚拟机在不同物理机上通过网络进行实时迁移[8],而实时迁移的中断时间对于用户来说是毫无感觉的。因此,数据中心可以通过将若干负载较低的虚拟机整合到较少物理机上的做法来实现节能。
但在云环境中,由于用户代理选择物理节点的不确定性和物理节点处理能力的差异性导致云计算环境中物理节点的负载失衡,使得资源利用率过低的物理节点出现资源、能量浪费,而资源利用率过高的物理节点则可能由于任务对某种资源需求的动态变化产生SLA(Service Level Agreement)违约。因此,如何有效均衡云计算环境中各个物理节点中的各种资源负载、减少云数据中心的能耗成为一个需要迫切解决的问题。
目前,云计算数据中心主要采用集中管理方法对虚拟机进行整合,即将数据中心中所有主机上的虚拟机进行统一管理,从而达到节能的目的。文献[9]阐述了云环境下虚拟机迁移技术的应用背景,并对虚拟机实时迁移技术进行了介绍。文献[10]提出在虚拟化的异构系统中实时动态优化安置虚拟机的算法,采用类似装箱问题中可变箱子大小和代价的启发式方法,在任何时间虚拟机的安置总是保证系统的电源消耗最少,并且性能最大。文献[11]提出应用在大规模云计算环境中的虚拟机安置方法,这种方法能够根据能源效率和应用程序的动态特性来实时安置虚拟机,当有应用事件到达或离开时就会对所有的虚拟机进行重组。
虽然集中管理方法能够取得一定的节能效果,但仍然存在着不少问题。由于集中管理方法采用持续优化,并且每次优化都是对所有虚拟机进行一次重新的组合,因此管理过程中势必会引起大量的虚拟机迁移。而虚拟机的迁移会增加节点CPU 资源的消耗,迁移发生的次数越多,消耗的CPU资源就越多,进而数据中心的电源消耗也越多。另一方面,迁移中的虚拟机将会遭受长时间的服务性能下降。所以有必要减少管理过程中虚拟机迁移次数的发生。而且集中管理方法也只适用于较小规模的集群,当系统扩展到大规模的云计算系统时,集中管理方法将很难进行管理。 云计算中基于能耗约束的虚拟机迁移策略研究(2):http://www.751com.cn/jisuanji/lunwen_1824.html