一种云数据中心资源利用率优化方法及系统与流程

文档序号:22676453发布日期:2020-10-28 12:32阅读:149来源:国知局
一种云数据中心资源利用率优化方法及系统与流程
本发明涉及云计算领域,尤其涉及一种云数据中心资源利用率优化方法及系统。
背景技术
:云数据中心是一种基于云计算和虚拟化技术为客户提供云计算能力的大型数据处理中心,在云数据中心中托管的不再是客户的设备,而是计算能力和it可用性。数据在云端进行传输,云计算数据中心为其调配所需的计算能力,并对整个基础构架的后台进行管理。从软件、硬件两方面运行维护,软件层面不断根据实际的网络使用情况对云平台进行调试,硬件层面保障机房环境和网络资源正常运转调配。数据中心去完成整个it的解决方案,客户可以完全不用操心后台,就有充足的计算能力(像水电供应一样)可以使用。在典型的云数据中心服务器中,每一种程序负载对资源的需求往往不同,有些负载是cpu密集型,有些是内存密集型的,有些是网络密集型的。因此,云数据中心多个节点之间负载可能存在严重的不均衡,这种情况会严重影响可扩展性,并可能导致整个系统等待中心单个节点的问题。很多文献都研究了云数据中心负载均衡和资源利用的问题,但是存在的不足包括:(1)未考虑将不同类型的应用程序进行整合,没有将不同类型的应用程序需要的计算机资源是不同这个事实考虑在内;(2)没有将云数据中心虚拟机的静态放置和动态放置进行有效结合。因此导致云数据中心不同节点之间以及节点内部不同资源之间的负载均衡情况和资源利用率均较差。技术实现要素:发明针对现有技术中的上述不足之处,提出了一种通过整合不同工作负载的虚拟机,充分利用各维度的资源,提升不同节点之间以及节点内部不同资源之间的负载均衡情况和资源利用率,降低不均衡率的云数据中心资源利用率优化方法。为了解决上述技术问题,本发明提供了一种云数据中心资源利用率优化方法,包括以下步骤:监听待放置虚拟机队列,当所述队列不为空时,获取队列最前端的虚拟机的各项资源需求,计算云数据中心所有物理机的负载均衡值,按照所述负载均衡值从小到大将物理机分成多个区间;选择所述负载均衡值最小的区间,获取该区间内所有物理机的各项资源利用率,判断该区间内是否存在满足待放置虚拟机各项资源需求的待选物理机,若存在,则计算所有待选物理机的多维资源不均衡利用率,选择所述多维资源不均衡利用率最小的待选物理机上放置虚拟机,若否,则在下一个区间重复该步骤。进一步的,还包括以下步骤:分别设置各项资源整体利用率阈值向量,若至少一项资源的所述整体利用率低于对应的阈值向量,则找出所述负载均衡值最大的高负载物理机,将所述高负载物理机上对各项资源需求最小的虚拟机加入待放置虚拟机队列。进一步的,若所有区间均不存在满足待放置虚拟机各项资源需求的待选物理机,则将该虚拟机加入待放置虚拟机队列的末尾。进一步的,所述计算云数据中心所有物理机的负载均衡值的方法为:计算物理机的综合资源利用率iri:其中,cpui,memi,neti分别表示物理机i的处理器、内存和网络的资源利用率;i={1,2,3,...,n},n为云数据中心的物理机总数;计算云数据中心各项资源的总利用率:其中,cpu总、mem总、net总分别表示云数据中心处理器、内存和网络的总利用率;表示物理机i的处理器个数;计算物理机i的负载均衡值ilbi:进一步的,所述计算所有待选物理机的多维资源不均衡利用率的方法为:其中,iuvi为物理机i的多维资源不均衡利用率。进一步的,所述各项资源整体利用率的计算方法为:ibvcpu=∑|cpui-cpu总|;ibvmem=∑|memi-mem总|;ibvnet=∑|neti-net总|;其中,ibvcpu、ibvmem、ibvnet分别表示云数据中心处理器、内存和网络的不均衡率。本发明还提供了一种云数据中心资源利用率优化系统,包括队列模块、静态虚拟机放置模块、动态虚拟机放置模块和调度决策模块;所述队列模块设置为存储待放置虚拟机队列;所述调度决策模块设置为监听所述队列模块中的待放置虚拟机队列,当所述待放置虚拟机队列不为空时,向静态虚拟机放置模块发送队列最前端虚拟机的放置指令;所述静态虚拟机放置模块设置为在接收虚拟机放置指令后,根据静态负载均衡调度策略放置虚拟机;所述动态虚拟机放置模块设置为监听云数据中心各项资源的整体利用率,若至少一项资源的所述整体利用率低于预先设置的对应阈值向量,则找出负载均衡值最大的高负载物理机,将所述高负载物理机上对各项资源需求最小的虚拟机加入所述待放置虚拟机队列。进一步的,所述静态负载均衡调度策略具体包括:获取待放置虚拟机的各项资源需求,计算云数据中心所有物理机的负载均衡值,按照所述负载均衡值从小到大将物理机分成多个区间;选择所述负载均衡值最小的区间,获取该区间内所有物理机的各项资源利用率,判断该区间内是否存在满足待放置虚拟机各项资源需求的待选物理机,若存在,则计算所有待选物理机的多维资源不均衡利用率,选择所述多维资源不均衡利用率最小的待选物理机上放置虚拟机,若否,则在下一个区间执行该策略。进一步的,所述静态负载均衡调度策略还包括:若所有区间均不存在满足待放置虚拟机各项资源需求的待选物理机,则将该虚拟机加入待放置虚拟机队列的末尾。本发明的有益效果:1、将不同类型的虚拟机进行整合,提高物理机的资源利用率;2、结合了静态和动态的虚拟机放置策略,使不同资源之间的负载更加均衡,提高了资源利用率,并降低了物理机的不均衡率。附图说明图1为本申请一个实施例中一种云数据中心资源利用率优化方法的流程图;图2为本申请一个实施例中一种云数据中心资源利用率优化系统的结构图;图3为本申请一个实施例中一种云数据中心资源利用率优化方法的试验结果图;具体实施方式为了使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步阐述。在本发明的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。一种云数据中心资源利用率优化方法,如图1所示,包括以下步骤:步骤s1.监听待放置虚拟机队列,当所述队列不为空时,获取队列最前端的虚拟机的各项资源需求,计算云数据中心所有物理机的负载均衡值,按照所述负载均衡值从小到大将物理机分成多个区间。虚拟机的各项资源需求根据所要运行的应用程序而不同,有些应用程序对cpu算力资源要求较密集,有些应用程序对内存容量要求较密集,有些应用程序则对网络带宽要求较密集。因此在放置虚拟机时,需要分别考虑这些因素。其中,所述物理机的负载均衡值的计算方法为:步骤s101.计算物理机的综合资源利用率iri:其中,cpui,memi,neti分别表示物理机i的处理器、内存和网络的资源利用率;i={1,2,3,...,n},n为云数据中心的物理机总数;步骤s102.计算云数据中心各项资源的总利用率:其中,cpu总、mem总、net总分别表示云数据中心处理器、内存和网络的总利用率;表示物理机i的处理器个数;步骤s103.计算物理机i的负载均衡值ilbi:计算物理机的负载均衡值是为了考察物理机对各项资源的利用情况与云数据中心整体的资源利用情况的对比,当物理机的负载越均衡,则ilbi就越小,说明该物理机对各项资源的利用与云数据中心整体的资源利用情况越接近,对资源的利用率越高;反之,则说明该物理机上的各项资源利用情况不均衡,对资源的利用率越低。在一种较优的实施例中,所述按照所述负载均衡值从小到大将物理机分成多个区间的方法可以是:将包含所有物理机的区间确定为(0,1),则区间(0,0.1]表示负载均衡值最小的前10%的物理机,以此类推。区间的划定方法可以是根据云数据中心的物理机数量进行划分,也可以是根据虚拟机各项资源需求的大小进行适应性划分。本发明对区间的划定方法不作进一步的限定。步骤s2.选择所述负载均衡值最小的区间,获取该区间内所有物理机的各项资源利用率,判断该区间内是否存在满足待放置虚拟机各项资源需求的待选物理机,若存在,则计算所有待选物理机的多维资源不均衡利用率,选择所述多维资源不均衡利用率最小的待选物理机上放置虚拟机,若否,则在下一个区间重复该步骤。其中,物理机的多维资源不均衡利用率的计算方法为:其中,iuvi为物理机i的多维资源不均衡利用率。在一种较优的实施例中,若所有区间均不存在满足待放置虚拟机各项资源需求的待选物理机,则将该虚拟机加入待放置虚拟机队列的末尾。上述步骤为静态虚拟机放置策略,是整个云数据中心资源利用率优化方法的基础,在考虑了物理机多维资源不均衡利用率的同时,也考虑了云数据中心各项资源的总利用率,从而完成虚拟机的初始放置操作。为了提高物理机对于各项资源的利用率,本发明还提供了基于各项资源的整体利用率的动态虚拟机放置策略,包括以下步骤:s3.分别设置各项资源整体利用率阈值向量,若至少一项资源的所述整体利用率低于对应的阈值向量,则找出所述负载均衡值最大的高负载物理机,将所述高负载物理机上对各项资源需求最小的虚拟机加入待放置虚拟机队列。其中,所述各项资源整体利用率的计算方法为:ibvcpu=∑|cpui-cpu总|;ibvmem=∑|memi-mem总|;ibvnet=∑|neti-net总|;其中,ibvcpu、ibvmem、ibvnet分别表示云数据中心处理器、内存和网络的不均衡率。在一种较优的实施例中,各项资源整体利用率阈值向量表示为<cput,memt,nett>,其设置依据可以是云数据中心各项资源使用情况。上述动态虚拟机放置策略可以根据资源的利用情况和物理机的负载情况动态的调整物理机上虚拟机,通过迁移虚拟机达到使不同资源之间的负载更加均衡,提高了资源利用率,并降低了物理机的不均衡率。本发明还提供了一种云数据中心资源利用率优化系统,包括队列模块、静态虚拟机放置模块、动态虚拟机放置模块和调度决策模块;所述队列模块设置为存储待放置虚拟机队列;所述调度决策模块设置为监听所述队列模块中的待放置虚拟机队列,当所述待放置虚拟机队列不为空时,向静态虚拟机放置模块发送队列最前端虚拟机的放置指令;所述静态虚拟机放置模块设置为在接收虚拟机放置指令后,根据静态负载均衡调度策略放置虚拟机;其中,所述静态负载均衡调度策略具体包括:获取待放置虚拟机的各项资源需求,计算云数据中心所有物理机的负载均衡值,按照所述负载均衡值从小到大将物理机分成多个区间;选择所述负载均衡值最小的区间,获取该区间内所有物理机的各项资源利用率,判断该区间内是否存在满足待放置虚拟机各项资源需求的待选物理机,若存在,则计算所有待选物理机的多维资源不均衡利用率,选择所述多维资源不均衡利用率最小的待选物理机上放置虚拟机,若否,则在下一个区间执行该策略。在一种较优的实施例中,所述静态负载均衡调度策略还包括:若所有区间均不存在满足待放置虚拟机各项资源需求的待选物理机,则将该虚拟机加入待放置虚拟机队列的末尾。所述动态虚拟机放置模块设置为监听云数据中心各项资源的整体利用率,若至少一项资源的所述整体利用率低于预先设置的对应阈值向量,则找出负载均衡值最大的高负载物理机,将所述高负载物理机上对各项资源需求最小的虚拟机加入所述待放置虚拟机队列。实施例本发明的实施例在cloudsim平台上实现,共设置了三个对照组以衡量本发明所提供的方法的有效性,对照组的设置如下:(1)随机算法。该算法采用随机的方式在物理机上放置虚拟机。(2)v-value算法,参考文献《woodt,prashants,arunv,etal.black-boxandgray-boxstrategiesforvirtualmachinemigration[c]//proceedingsofsymp.onnetworkedsystemsdesignandimplementation:april11-13,2007.cambridge,ma.proceedingsofnsdi,2007:229-242》。该算法是将虚拟机放置在资源使用率更低的物理机上。(3)dairs算法,参考文献《tianwen-hong,diaoyong,zhongyuan-liangetal.dynamicandintegratedload-balancingschedulingalgorithmforclouddatacenters[j].chinacommun-ications,2011,8(6):117-126》。该算法是根据虚拟机的综合负载均衡值来决定将虚拟机放在哪台物理机上。本实施例共设置了8次试验,依次增加每次试验的物理机总数(pms)和虚拟机总数(vms),其中物理机的配置类型如表1所示,虚拟机的各项资源类型要求如表2所示。每次试验中试验组和对照组所选用的物理机类型和每个类型的物理机数量均相同,所需放置的虚拟机类型和每个类型的虚拟机数量均相同。表1物理机的4种配置类型cpu内存网络带宽类型12000mips16gb50mbps类型22000mips32gb30mbps类型34000mips64gb100mbps类型48000mips96gb120mbps表2虚拟机的8种类型类型cpu内存网络带宽类型1125mips1gb2mbps类型2250mips1gb5mbps类型3250mips2gb8mbps类型4500mips2gb8mbps类型5500mips4gb10mbps类型61000mips4gb10mbps类型71000mips6gb12mbps类型81000mips10gb20mbps图2给出了本次试验的结果,由图可知,无论在何种配置的物理机上运行本发明所提供方法的效果均好于本领域常规采用的虚拟机放置算法。证明了本发明所提供的方法可以将不同类型的虚拟机进行整合,提高物理机的资源利用率,并且使不同资源之间的负载更加均衡,提高了资源利用率,降低了物理机的不均衡率。专业人员还可以进一步意识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1