摘 要: 随着4G时代的到来,IDC建设也愈发重要。在扩展IDC能力的同时,能源消耗问题也日益严重。以x86化、基于IaaS虚拟化以及优化的Min-Min资源调度算法为主要依据,讨论了以上技术在实现IDC节能化中起到的作用。
关键词: 节能;IaaS;资源调度;IDC
0 引言
随着4G产业的日渐壮大,电信业IDC的建设、扩容、维护等一系列配套工程也面临着所对应的升级和改造。数据显示,截止到2012年,中国移动目前31省各个应用系统的主机、存储、网络等IT基础设施独立建设和运维,基础设施资源没有实现整合和共享,IT服务能力分散,服务器平时利用率不足50%[1]。传统应急式、分散式、烟囱式、蛛网式的建设模式所带来的管理信息系统功能重复、成本高昂、流程割裂、接口不一等诸多问题则加剧了这一情况。然而,由上述情况所引起的另外一个问题——巨大能源消耗,则愈发严重。如何改进IDC设计,如何合理利用IDC资源以达到节能环保的目的,成为了当下热点研究课题之一。
借助虚拟化技术和处理能力较强的x86机器,对IDC进行改造成为可行的方法,本文分析讨论两种手段的可行性,并就引申的资源调度进行分析优化。
1 现状分析
从IDC能耗类型进行区分,可以大致分为三类能源消耗[2]:物理机能耗、网络设备能耗、其他能耗。对于物理机能耗,CPU、RAM、DAS等均为考量范围;网络设备能耗则集中在交换机、链路、路由器等;而空调、照明、风扇等则列为配套设施能耗。时下,借助于云计算技术,对IDC进行集中改造成为了诸多改进PUE指数[3]的有效方案之一,本文以物理机能耗改进为重点,研究可行的减小能耗方案。
1.1 服务器x86化
电信业发展之初,对于重要的业务系统基本上采用小型机进行部署应用。小型机具有先天的架构优势,在系统处理性能(以SPEC jEnterprise2010为测量基准)和RAS性能上有着优异的表现[4]。然而,随着电信业云计算和大数据时代的到来,小型机在各个方面的考量上已经不能满足时下需要。购置和维护费用昂贵,小型机由于操作系统复杂,需要有专业的维护人员进行日常的设备维护;且小型机单机柜装一台特殊机柜,占地面积为780 mm×1 165 mm,每万tpmC需要22.71 cm2,占地面积较大[5],单台满配1 000 W,半配时大于5 000 W,每万tpmC消耗25 W,能源消耗较大。
此外,基于电信业普遍的虚拟化、资源池化需求,小型机虚拟化技术目前仍然要与设备厂家绑定,不能实现跨厂家设备的虚拟化方案。相较于小型机,x86服务器则在节能、虚拟化等方面具有巨大的优势。
以x86刀片服务器、单机柜装2框、共32片标准综合柜为例,占地600 mm×1 000 mm,每万tpmC需要 9.375 cm2,能够节省约60%的占地面积。能源消耗成本:单框满配(16片+机框),消耗2 000 W,每万tpmC消耗6.25 W,相较小型机能够节约75%的能源需求。
在虚拟化支持方面,x86服务器虚拟化技术目前较为成熟,在计算密集型应用环境、开发测试、单机计算能力需求较低或资源需求变化较大的环境中部署x86平台的虚拟化应用,可以提高服务器利用率、管理效率,能够达到节约宝贵IDC空间和较少能源消耗的目的。
1.2 IaaS虚拟化
在传统的IDC机房建设中,为了避免业务相互干扰,通常采用烟囱式系统搭建法,即单一物理机上部署业务系统。在隔离业务边界的同时,也浪费了大量的可用物理机能力资源,造成了能耗过大的问题。而IaaS物理平台即服务的提出,为解决这一问题提出了一个好的契机。
整体来看,IaaS的实现是动态负载均衡和虚拟技术的综合运用,而目前就从架构上来分析,分为两大类虚拟化技术[6],如图1所示。
(1)裸金属类型虚拟化技术
该类型虚拟化技术是指直接在物理机上部署VMM,虽然这里称为虚拟机,但其本质上是具有OS功能的微型操作系统,通过在物理机和虚拟机之间架设资源映射,可以虚拟出N台机器。目前,较为成熟的服务器虚拟产品有VMware的ESX、微软的Hyper-V以及开源的Xen。
(2)寄居型虚拟化技术
寄居型虚拟化技术相较裸金属虚拟化的结构而言,在物理机与VMM之间多了一层HOST OS层,即在已有的操作系统中安装VMM,VMM指令通过操作系统与底层进行互操作,来实现虚拟机的假设。比较常见的产品是VMware的VMware Workstation。显而易见,在操作系统上搭建VMM是比较浪费物理机资源的一种虚拟化方式。但由于所有的VM都运行在同一个操作系统中,因此,管理起来统一方便。
上述两种IaaS涉及的虚拟化技术各有优点,但对于IDC来讲,主要采用第一种方式,即裸机型虚拟化技术,最大程度地对物理机进行资源利用,综合统计,CPU利用率从平均不到10%提升到55%以上,整体能够提升利用率至60%~80%,利用率的提升,意味着用更少的机器做更多的事情,在节省成本的同时,节能减排,符合创建绿色IDC宗旨。
2 基于Min-Min的算法优化
上一节中,从IDC的服务器x86化和IaaS虚拟化两个方面讨论了机房节能的可行性和技术细节,然而,有一个问题并没有能够详细论述,即当以上两种手段都应用时,面对业务调度合理化、新的业务上线、旧业务替换、闲置物理机待停等问题并没有合适的解决方案。本节以Min-Min算法为基础,针对IDC机房节能需求进行相应的算法改造优化,完成IaaS中的资源调度优化。
2.1 Min-Min算法简介
Min-Min算法的整体思想是通过计算任务集合 T
针对于IDC中的服务器而言,在进行资源池化后,与VM对应的并不是任务而是应用。这里,需要针对应用的资源消耗进行统计分析,再合理分配VM,以充分利用服务器能力,减少能源消耗。下面就以IDC节能为目的,对Min-Min算法进行特性化优化。
2.2 Min-Min算法优化
这里,为了简化论证,假设所有虚拟机与上面承载的业务应用为一对一关系,即每一个VM上运行一个应用。相对于云计算平台市场变化的服务型应用,IDC中部署的应用大多数较为稳定,除去版本更迭、新旧替换、新增资源外,少有其他变动。
优化的Min-Min算法分为两个层次,即VM层面的迁移和应用任务层面的迁移。算法的具体步骤如下:
(1)按照物理机性能,将虚拟机能力进行排序,得到集合V
(2)对一段时间内(以一月为例)的应用任务所需要消耗的资源进行统计,并依照Ctotal=Ccpu+Cram+Cio,其中Ctotal指应用需要的总资源消耗,Ccpu指平均CPU占用率,Cram指内存使用量,Cio指IO消耗,然后,得出应用资源消耗集合C
(3)对于任务集合A
(4)每新增、更新、删除应用任务,需要对应用集合A<>以及消耗资源集合C<>进行更新;同理适用于物理机器。
(5)定期或者动态重复以上步骤。
通过优化的Min-Min算法对应用任务和虚拟机之间不定期进行资源映射,可以有效地利用物理机性能,并能够对闲置虚拟机/物理机进行待机操作,避免空转。
2.3 仿真实验分析
试用CloudSim对优化的Min-Min算法进行实际测试,对于应用任务从100~500的情况下,相比较基于ECMM能源消耗情况来看,总体上能够节约60%以上的能源。
3 结论
本文综合讨论了基于IaaS的云资源调度优化,涉及了小型机的x86化,服务器资源池化,并讨论了优化的Min-Min算法减少能源消耗的能力。同时,本文也提出了可以优化的区域:(1)Unix服务器虚拟化技术,Unix服务器目前仍然与设备厂家绑定,不能实现跨厂家设备的虚拟化方案,建议小型机分区虚拟化的应用,利用动态分区技术提高资源调控灵活度;(2)桌面云技术,在CRM营业厅、呼叫中心云桌面试点中,采用小能耗的瘦终端桌面虚拟化方案替代原有PC终端;(3)IDC其他设备,鼓励采用具有更高能效比供电、空调设备,在完成同等工作量的条件下减少电能消耗;(4)分布式计算在数据挖掘应用任务中的应用。
参考文献
[1] 王秀玲.中国移动云计算架构分析[D].济南:山东大学,2012.
[2] 郭亮.IDC步入云计算时代节能“组网”业务管理尚存严峻挑战[J].世界电信,2011(1):103-106.
[3] 杨国勋.绿色数据中心产业的发展趋势[J].中国信息界,2012(5):5-7.
[4] 黄伟,张杰.CRM系统中小型机与x86服务器应用对比分析[J].电信工程技术与标准化,2013(6):83-88.
[5] 金敏玉,张式勤,宋祺.X86刀片机及其虚拟化技术在电信企业IT系统中的应用研究[J].移动通信,2011(6):86-92.
[6] 杨冰,张保稳,李号,等.面向云计算中虚拟化技术的等级保护要求研究[J].信息安全与通信保密,2014(2):106-111.