CN102571986B - 一种基于向量映射的负载均衡方法 - Google Patents

一种基于向量映射的负载均衡方法 Download PDF

Info

Publication number
CN102571986B
CN102571986B CN201210044489.3A CN201210044489A CN102571986B CN 102571986 B CN102571986 B CN 102571986B CN 201210044489 A CN201210044489 A CN 201210044489A CN 102571986 B CN102571986 B CN 102571986B
Authority
CN
China
Prior art keywords
physical node
virtual machine
resource
load
migrated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201210044489.3A
Other languages
English (en)
Other versions
CN102571986A (zh
Inventor
杨双全
叶德仕
梅丽丽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201210044489.3A priority Critical patent/CN102571986B/zh
Publication of CN102571986A publication Critical patent/CN102571986A/zh
Application granted granted Critical
Publication of CN102571986B publication Critical patent/CN102571986B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

本发明公开了一种基于向量映射的负载均衡方法,包括步骤:获取虚拟化集群系统中物理节点和虚拟机的负载信息;根据资源信息获取需要调整负载状况的物理节点,并通过计算均衡度获取待迁移的虚拟机;将待迁移虚拟机和所有物理节点的三个维度资源折算并标准化处理,以三维向量形式在空间坐标系内表示;将空间坐标系及资源向量投影,对投影向量进行分组,得到物理节点和虚拟机的分组匹配;针对每一个分组匹配,使用最优降序装箱虚拟机调度,得到决策结果。本发明的技术方案应用于分布式集群系统中,支持多维资源差异化、全局化和可扩展性调度,并有决策速度快和精度高的特点。

Description

一种基于向量映射的负载均衡方法
技术领域
本发明涉及分布式集群系统,具体涉及一种虚拟化集群系统的负载均衡方法。
背景技术
随着计算机系统的高速发展,云计算技术日渐成熟,各种类型的应用和服务层出不穷,对大规模服务器集群的计算资源提出了巨大的挑战。分布式集群动态资源调度技术作为一项应对这一挑战的课题被学术界和工业界广泛研究。
分布式集群的动态资源调度具体涉及到大规模分布式虚拟化集群资源调度领域中,由于业务的差异性造成对集群资源的使用不均衡,所以必须在间隔一定的时间内对集群整体的资源做一次调度,使集群中物理资源的使用达到一个均衡的状态;或通过调度决策使集群中的物理资源利用率提高,同时减少一些不必要的物理资源,以达到节能减排的目的。
动态资源调度器DRS通过对大规模服务器集群在物理硬件上进行抽象,隐藏特定物理计算资源和平台的物理特性,为用户提供抽象的,统一的计算环境。在调度过程中控制程序提供了一种动态地、自动化地、可伸缩的方式对计算资源进行管理。同时,控制程序还可以对硬件系统资源进行整合,抽象,为快捷部署、计算资源动态优化,计算任务负载均衡提供了便捷的途径。
动态资源调度器最重要的任务是实现集群负载均衡。具体涉及到虚拟化集群,将具有独立运算存储能力的硬件设备(如CPU,内存,硬盘和网络设备等硬件资源的计算机)看作是物理节点,有多个物理节点组成的称为是虚拟化集群系统。通过虚拟化技术,可以在同一个物理节点上运行多个虚拟机实例,每一个虚拟机实例由虚拟监控器VMM分配相应的机器名、独立的虚拟网络地址和独立的设备资源(如CPU,内存,硬盘和网络I/O等软硬件资源)。在大规模的虚拟化集群系统中,每一个物理节点上运行着众多的虚拟机。因此,基于大规模虚拟化集群系统的负载均衡技术包括:1)同一个物理节点上虚拟机之间的负载均衡;2)虚拟化集群系统中多个物理节点的负载均衡。
现有负载均衡方法有基于贪婪策略Greedy的负载均衡方法、基于装箱策略Bin packing的负载均衡方法、基于降维策略Sand-Piper的负载均衡方法和基于规划约束策略Line programming的负载均衡方法。由于基于贪婪策略Greedy的负载均衡方法、基于装箱策略Bin packing的负载均衡方法和基于降维策略Sand-Piper的负载均衡方法没有考虑在虚拟化环境中,物理机和虚拟机不同维度之间存在量纲不统一的问题,至少存在以下缺点:
1)忽略各个维度资源的差异性,未进行差异化考虑;
2)量纲不统一,均衡偏差超出预期;
3)多维资源负载均衡决策精度差。
基于规划约束策略Line Programming的负载均衡方法考虑到了多个维度的资源差异性,但每次决策都需要所有物理机和虚拟机所有维度均参与约束规划方程求解,进行全局计算,计算开销很大;此外,决策结果会导致大量的虚拟机或服务迁移,加重系统负担。
发明内容
本发明要解决现有方法的不足,提供一种基于向量映射的负载均衡方法,弥补了上述方法所存在的忽略各维度资源维度差异性和大量虚拟机和服务迁移的问题。
一种基于向量映射的负载均衡方法,在大规模虚拟化集群系统中实现负载均衡,所述大规模虚拟化集群系统包括物理节点,以及虚拟机,所述负载均衡方法包括如下步骤:
1)、获取待迁移虚拟机列表;
2)、将所有物理节点及待迁移虚拟机的三个维度资源向量基于空间坐标系映射到投影平面内,以所处区域将其划分为不同的组;
3)、采用最优降序装箱方法进行负载均衡处理。
进一步地,所述的步骤1)包括如下步骤:
1.1、遍历虚拟化集群系统中所有的物理节点,将每一个物理节点的三个维度资源进行折算,获取虚拟化集群系统中所有物理节点负载信息;
1.2、对所有物理节点负载信息进行排序,并从中选择出待处理的物理节点;
1.3、针对已经选定的待处理物理节点,去掉其上一台虚拟机,计算当前系统的负载均衡度,直到这个物理节点上的所有虚拟机都枚举完,若去掉某一台虚拟机后整个集群系统负载均衡度最小,则这台虚拟机作为备选虚拟机加入到待迁移列表中;
1.4、重新计算这台虚拟机所在的物理节点的负载信息,并计算虚拟化集群系统的负载均衡度,若获取的虚拟化集群系统的负载均衡度未超过阀值,则获取待迁移虚拟机阶段结束,否则进行下一步骤;
1.5、判断所有物理节点,若无论将哪一台虚拟机放入到待迁移虚拟机列表,整个虚拟化集群系统的负载均衡度仍然超过阀值,则获取待迁移虚拟机阶段结束,否则返回步骤1.2。
其中,所述将每一个物理节点的三个维度资源进行折算是指使用如下公式1折算:
R value = 1 1 - CPU * 1 1 - IO * 1 1 - MEM (公式1)
其中
Rvalue是物理节点的负载信息;
CPU是物理节点的CPU资源消耗率;
IO是物理节点的IO资源消耗率;
MEM是物理节点的内存资源消耗率;
进一步地,所述虚拟化集群系统负载均衡度计算方法包括步骤:
A、计算整个虚拟化集群系统的平均CPU利用率Acpu
Acpu=(cpu1+cpu2+…+cpun)/n;    (公式2)
其中
cpui是第i个物理节点实际的CPU使用率;
n是物理节点的数目;
B、计算整个虚拟化集群系统的平均内存使用率Amem
Amem=(mem1+mem2+…+memn)/n;    (公式3)
其中
memi是第i个物理节点实际的内存使用率;
n是物理节点的数目;
C、计算整个虚拟化集群系统的平均I/O使用率AIO
AIO=(IO1+IO2+…+IOn)/n;        (公式4)
其中
IOi是第i个物理节点实际的I/O使用率;
n是物理节点的数目;
D、计算第i个物理节点的标准差作为其均衡度的衡量标准,记为balancei
balance i = [ ( cpu i - A cpu ) 2 + ( mem i - A mem ) 2 + ( IO i - A IO ) 2 ] / 2 (公式5)
E、计算虚拟化集群系统的均衡度,记为Tbalance
T balance = balance 1 + balance 2 + · · · + balance n n (公式6)
其中
n是物理节点的数目。
进一步地,所述的步骤2)包括如下步骤:
2.1、将所有物理节点及待迁移虚拟机的三个维度资源标准化折算,并用三维空间向量表示;
2.2、基于空间坐标系将资源向量映射到投影平面内,以物理节点和待迁移虚拟机投影向量在投影平面内所处区域进行分组;
2.3、对没有物理节点当前资源投影向量或没有虚拟机资源投影向量的分组,将编号为(N+1)%13和编号为(N-1)%13的两个组连同该组合并为一个新的组,依次合并,直至所有组中都有物理节点以及待迁移虚拟机。
其中,所述的标准化折算是与选定的基准物理节点对比,每一个物理节点和虚拟机的资源与基准物理节点对应的资源的比值就是标准化折算后的值。所述投影平面是垂直于所述基准物理节点的资源容量所在直线的平面。
进一步地,所述的步骤3)包括如下步骤:
3.1、遍历每一个分组中的物理节点,将每一个物理节点的三个维度资源信息根据公式1进行折算;同时,遍历每一个分组中的待迁移虚拟机,将每一台待迁移虚拟机三个维度资源信息也根据公式1进行折算;
3.2、针对每一个分组,将折算后的负载信息降序排列,遍历完每一个分组,以完成每一个分组的物理节点和虚拟机折算后的负载信息的排序;
3.3、利用折算后的物理节点负载信息,剔除当前负载值已经高于阀值百分之一百零五的物理节点,并将阀值的百分之一百零五作为物理节点的装箱容量;
3.4、针对每一个分组,依次选择待迁移虚拟机迁移到所述分组内最接近装箱容量的物理节点上,使得该虚拟机迁移到的物理节点的负载值最接近箱子容量,更新该物理节点的负载信息,并将迁移决策记录下来,同时,将该虚拟机从待迁移的虚拟机列表中删除;
3.5、判断待迁移虚拟机列表是否为空,若为空则输出迁移信息,完成负载均衡调度;否则进行下一步骤;
3.6、判断当前虚拟化集群系统平均负载是否超过阀值,若没有超过阀值,则更新有新的虚拟机迁移到的物理节点的负载向量,将该物理节点再一次进行投影,并根据投影向量将其加入到所在的新的分组中,返回步骤3.1;若超过阀值,则向总控系统输出要求增加新的物理节点的命令,完成负载均衡调度。
所述的三维资源包括:物理节点和虚拟机总的CPU资源,内存资源和I/O资源;物理节点和虚拟机使用的CPU资源,内存资源和I/O资源;物理节点和虚拟机预留的CPU资源,内存资源和I/O资源。
所述选择出待处理物理节点的方法通过贪婪的方法,获取与当前阀值差别最多的物理节点作为待处理对象;同时,针对待迁移虚拟机的选择也是通过贪婪的方法,选择迁出后对整个系统负载均衡度改进最大的虚拟机作为待迁移虚拟机。
本发明的基于向量映射的负载均衡方法有以下的技术效果:
一、支持物理节点和虚拟机包含三维及三维以上的多维资源的负载均衡调度,通过向量映射进行降维处理和负载均衡,具有可控性和可扩展性;
二、负载均衡过程中综合考虑每一个维度资源信息,兼顾整个虚拟化集群系统各个维度资源状况,决策结果具有全局性,同时保证精度;
三、本发明实施过程简单,计算复杂性低,计算开销小;
四、本发明负载均衡方法决策结果保证仅小部分物理节点需要调整负载,少量虚拟机需要迁移,不会加重系统负担。
除上述四个有益的技术效果外,本发明的方法还具有适应性强,决策速度快的特性;除了分布式虚拟化集群系统的负载均衡场景,本发明的方法可以应用到分布式集群管理系统中的负载均衡场景以及其他有类似需求的场景中。
附图说明
图1为本发明基于向量映射的方法流程示意图;
图2为本发明获取待迁移虚拟机方法流程示意图;
图3为本发明向量投影方法的流程示意图;
图4为本发明基准物理节点三维向量图;
图5为本发明向量空间的投影图;
图6为本发明投影平面图;
图7为本发明最优降序装箱方法的流程示意图。
具体实施方式
下面结合附图对本发明的具体实施过程作具体阐述。
如图1所示:基于向量映射的负载均衡方法包含三个步骤:
1)、获取待迁移虚拟机列表;
2)、将所有物理节点及待迁移虚拟机的三个维度资源向量基于空间坐标系映射到投影平面内,以所处区域将其划分为不同的组;
3)、采用最优降序装箱方法进行负载均衡处理。
如图2所示的步骤1),获取待迁移虚拟机列表,包含步骤:
1.1、遍历虚拟化集群系统中所有的物理节点,将每一个物理节点的三个维度资源:CPU资源,内存资源和I/O资源信息根据公式1进行折算:
R value = 1 1 - CPU * 1 1 - IO * 1 1 - MEM - - - 1
其中
Rvalue是异构资源负载信息;
CPU是物理节点的CPU资源消耗率;
IO是物理节点的IO资源消耗率;
MEM是物理节点的内存资源消耗率。
若是有物理节点某一个维度的资源使用率为100%,则我们就假设其异构资源负载信息Rvalue为无穷大。
1.2、对所有物理节点负载信息进行排序,并从中选择出待处理的物理节点;
将虚拟化集群系统中所有折算后的物理节点的异构资源负载信息进行排序,采取贪婪的方法从中选择出负载最高(在负载均衡场景中)或最低(在节能减排场景中)的物理节点作为待处理的物理节点。
1.3、遍历待处理的物理节点上所有虚拟机,使用如下方法计算迁移出每一台虚拟机后当前整个系统的负载均衡度:
首先用公式2计算整个虚拟化集群系统的平均CPU利用率Acpu
Acpu=(cpu1+cpu2+…+cpun)/n;    2
其中
cpui是第i个物理节点实际的CPU使用率;
n是物理节点的数目;
接下来,用公式3计算整个虚拟化集群系统的平均内存使用率Amem
Amem=(mem1+mem2+…+memn)/n;    3
其中
memi是第i个物理节点实际的内存使用率;
n是物理节点的数目;
其次,用公式4计算整个虚拟化集群系统的平均I/O使用率AIO
AIO=(IO1+IO2+…+IOn)/n;        4
其中
IOi是第i个物理节点实际的I/O使用率;
n是物理节点的数目;
根据上述定义,由此我们得到第i个物理节点的标准差作为其均衡度的衡量标准,记为balancei
balance i = [ ( cpu i - A cpu ) 2 + ( mem i - A mem ) 2 + ( IO i - A IO ) 2 ] / 2 - - - 5
而整个系统的均衡度记为Tbalance
T balance = balance 1 + balance 2 + · · · + balance n n - - - 6
其中
n是物理节点的数目。
针对已经选定的待处理物理节点,去掉其上一台虚拟机,计算当前系统的负载均衡度,直到这个物理节点上的所有虚拟机都枚举完,若去掉某一台虚拟机后整个集群系统负载均衡度最小,则这台虚拟机作为备选虚拟机加入到待迁移列表中;
1.4、重新计算这台虚拟机所在的物理节点的负载信息,并计算虚拟化集群系统的负载均衡度,若获取的虚拟化集群系统的负载均衡度未超过阀值,则获取待迁移虚拟机阶段结束,否则进行下一步骤;
1.5、判断所有物理节点,若无论将哪一台虚拟机放入到待迁移虚拟机列表,整个虚拟化集群系统的负载均衡度仍然超过阀值,则获取待迁移虚拟机阶段结束,否则返回步骤1.2。
如图3所示的步骤2)将所有物理节点及待迁移虚拟机的三个维度资源向量基于空间坐标系映射到投影平面内,以所处区域将其划分为不同的组;包含步骤:
2.1、将所有物理节点及待迁移虚拟机的三个维度资源标准化折算,并用三维空间向量表示;
设置基准物理节点:基准物理节点的CPU资源值为集群系统中所有物理节点中CPU资源的最大值,基准物理节点的内存资源值为集群系统中所有物理节点中内存的最大值,准物理节点的I/O资源值为集群系统中所有物理节点中I/O资源的最大值;
将虚拟化集群系统中所有的物理节点和待迁移虚拟机三个维度资源分别与基准物理节点进行标准化折算,每一个物理节点和虚拟机的资源与基准物理节点对应的资源的比值就是标准化折算后的值;
可见基准物理节点本身经过标准化折算后,三个维度资源均为1,而其他物理节点和虚拟机的CPU资源、内存资源和I/O资源折算后均小于等于1;
2.2、基于空间坐标系将资源向量映射到投影平面内,以物理节点和待迁移虚拟机投影向量在投影平面内所处区域进行分组;
经过标准化折算后,以CPU资源、内存资源和I/O资源为坐标轴构筑物理节点和待迁移虚拟机各项资源的空间向量,从而获取虚拟化集群系统中的物理节点的资源容量向量TCV,物理节点当前资源剩余向量RCV,物理节点消耗资源向量RUV,物理节点资源平衡度向量RIV,虚拟机资源需求向量RRV;其中,物理节点资源平衡度向量RIV是衡量当前物理节点资源使用情况,它表示物理节点消耗资源向量RUV到物理节点的资源容量向量TCV的垂直距离;
以基准物理节点的资源容量为一个单位的标准正方体,并把该正方体命名为资源标准化立方体NRC;如图4所示,将各物理节点的资源容量向量TCV,物理节点当前资源剩余向量RCV,物理节点消耗资源向量RUV,物理节点资源平衡度向量RIV和虚拟机资源需求向量RRV在资源标准化立方体内表示;
如图4所示,从坐标为(0,0,0)的点到坐标为(1,1,1)的点射一束光线,资源标准化立方体NRC以及在立方体中的所有三维资源向量都被投影到垂直于光线的平面内,如图5所示,将资源标准化立方体NRC中六个顶点和十二条边都投影到投影平面上;
将资源标准化立方体投影到投影平面内所得图形如图6所示,投影图形是一个正六边形,并被十二条边投影出来的投影线切割成为六个正三角形,对其进行如下编号和命名:
三角形0:命名为CI,表示在三个维度的资源中,CPU资源最多,IO资源其次,而内存MEM资源最少;
三角形1:命名为IC,表示在三个维度的资源中,I/O资源最多,CPU资源其次,而内存MEM资源最少;
三角形2:命名为IM,表示在三个维度的资源中,I/O资源最多,内存MEM资源其次,而CPU资源最少;
三角形3:命名为MI,表示在三个维度的资源中,内存MEM资源最多,I/O资源其次,而CPU资源最少;
三角形4:命名为MC,表示在三个维度的资源中,内存MEM资源最多,CPU资源其次,而I/O资源最少;
三角形5:命名为CM,表示在三个维度的资源中,CPU资源最多,内存MEM资源其次,而I/O资源最少;
落在坐标轴上的物理节点或虚拟机投影向量,表示CPU资源,内存资源和I/O资源中,有两个维度的资源是一样的;若是投影向量落在坐标为(0,0,0)或(1,1,1)的点上,表示CPU资源,内存MEM资源和I/O资源三者一样;
如图6所示,考虑到六个正三角形,连同每两个三角形间相邻的分割边,加上六边形中心坐标为(0,0,0)或(1,1,1)的点,可以将投影向量分成为13组,如表1所示:
表-1投影向量资源分类表
  编号   名称  映射坐标  资源特征   类别
  0   CI  (1,0,1)(1,0,0)(0,0,0)  CPU资源密集型   三角形
  1   IC   (1,0,1)(0,0,1)(0,0,0)   I/O资源密集型   三角形
  2   IM   (0,1,1)(0,0,1)(0,0,0)   I/O资源密集型   三角形
  3   MI   (0,1,1)(0,1,0)(0,0,0)   MEM资源密集型   三角形
  4   MC   (1,1,0)(0,1,0)(0,0,0)   MEM资源密集型   三角形
  5   CM   (1,0,0)(1,1,0)(0,0,0)   CPU资源密集型   三角形
  6   CPU轴   (1,0,0)(0,0,0)   CPU资源密集型   分割轴
  7   IC轴   (1,0,1)(0,0,0)   CPU,I/O密集型   分割轴
  8   I/O轴   (0,0,1)(0,0,0)   I/O资源密集型   分割轴
  9   MI轴   (0,1,1)(0,0,0)   MEM,I/O密集型   分割轴
  10   MEM轴   (0,1,0)(0,0,0)   MEM资源密集型   分割轴
  11   CM轴   (1,1,0)(0,0,0)   CPU,MEM密集型   分割轴
  12   原点   (0,0,0),(1,1,1)   均衡型   原点
将物理节点当前资源剩余向量RCV在投影平面内的投影向量和待迁移虚拟机资源需求向量RRV在投影平面内的投影向量根据表1所处的位置进行分类,由此可以得到十三组物理节点和待迁移虚拟机的组合;
2.3、对没有物理节点当前资源投影向量或没有虚拟机资源投影向量的分组N,将编号为(N+1)%13和编号为(N-1)%13的两个组连同该组合并为一个新的大组,新组中的所有物理节点认为是同一类型的物理节点,所有虚拟机认为是相同类型的虚拟机;依次合并,直至所有组中都有物理节点以及待迁移虚拟机。
如图7所示的步骤3)采用最优降序装箱方法进行负载均衡处理,包含步骤:
3.1、遍历每一个分组中的物理节点,将每一个物理节点的三个维度资源信息根据公式1进行折算;同时,遍历每一个分组中的待迁移虚拟机,将每一台待迁移虚拟机三个维度资源信息也根据公式1进行折算;
3.2、针对每一个分组,将折算后的负载信息降序排列,遍历完每一个分组,以完成每一个分组的物理节点和虚拟机折算后的负载信息的排序;
3.3、利用折算后的物理节点负载信息,剔除当前负载值已经高于阀值百分之一百零五的物理节点,并将阀值的百分之一百零五作为物理节点的装箱容量;
3.4、针对每一个分组,依次选择待迁移虚拟机迁移到所述分组内最接近装箱容量的物理节点上,使得该虚拟机迁移到的物理节点的负载值最接近箱子容量,并更新该物理节点的负载信息,并将迁移决策记录下来,同时,将该虚拟机从待迁移的虚拟机列表中删除;
3.5、判断待迁移虚拟机列表是否为空,若为空则输出迁移信息,完成负载均衡调度;否则进行下一步骤;
3.6、判断当前虚拟化集群系统平均负载是否超过阀值,若没有超过阀值,则更新有新的虚拟机迁移到的物理节点的负载向量,将该物理节点再一次进行投影,并根据投影向量将其加入到所在的新的分组中,返回步骤3.1;若超过阀值,则向总控系统输出要求增加新的物理节点的命令,完成负载均衡调度。
本发明中阈值的设定一般与系统当前的状态相关,一般情况下将阈值设定为通过理论计算出来的系统的平均负载值。在实际运行中,设定了5%的误差,即在阈值基础上设定箱子容量为阈值的105%,这样可以使得误差不超过5%。
请注意,尽管在虚拟化集群系统的环境中描述本发明,但是一般技术人员可以理解,以一维或多维资源作为决策依据并基于向量投影的负载均衡或节能减排方法,均应包含在本发明的包含范围之内,而不关心决策时所应用的实际环境,其实际应用环境包括虚拟化集群系统、服务器集群系统、任务均衡调度系统以及其他可应用负载均衡或节能减排场景的环境。
以上举较佳实施例,对本发明的目的、技术方案、思路以及优点进行一系列详细说明。所应理解的是:以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种基于向量映射的负载均衡方法,在大规模虚拟化集群系统中实现负载均衡,所述大规模虚拟化集群系统包括物理节点,以及虚拟机;其特征在于,包括如下步骤:
1)、获取待迁移虚拟机列表,所述的步骤1)包括如下步骤:
1.1、遍历虚拟化集群系统中所有的物理节点,将每一个物理节点的三个维度资源进行折算,获取虚拟化集群系统中所有物理节点负载信息;
所述将每一个物理节点的三个维度资源:CPU资源,内存资源和I/O资源进行折算是指使用如下公式1折算:
R value = 1 1 - CPU * 1 1 - IO * 1 1 - MEM     (公式1)
其中
Rvalue是物理节点的负载信息;
CPU是物理节点的CPU资源消耗率;
IO是物理节点的IO资源消耗率;
MEM是物理节点的内存资源消耗率;
1.2、对所有物理节点负载信息进行排序,并从中选择出待处理的物理节点;
1.3、针对已经选定的待处理物理节点,去掉其上一台虚拟机,计算当前系统的负载均衡度,直到这个物理节点上的所有虚拟机都枚举完,若去掉某一台虚拟机后整个集群系统负载均衡度最小,则这台虚拟机作为备选虚拟机加入到待迁移虚拟机列表中;
1.4、重新计算这台虚拟机所在的物理节点的负载信息,并计算虚拟化集群系统的负载均衡度,若获取的虚拟化集群系统的负载均衡度未超过阀值,则获取待迁移虚拟机阶段结束,否则进行下一步骤;
1.5、判断所有物理节点,若无论将哪一台虚拟机放入到待迁移虚拟机列表,整个虚拟化集群系统的负载均衡度仍然超过阀值,则获取待迁移虚拟机阶段结束,否则返回步骤1.2;
2)、将所有物理节点及待迁移虚拟机的三个维度资源向量基于空间坐标系映射到投影平面内,以其在投影平面内所处区域将其划分为不同的组;
3)、采用最优降序装箱方法进行负载均衡处理,所述的步骤3)包括如下步骤:
3.1、遍历每一个分组中的物理节点,将每一个物理节点的三个维度资源信息根据公式1进行折算;同时,遍历每一个分组中的待迁移虚拟机,将每一台待迁移虚拟机三个维度资源信息也根据公式1进行折算;
3.2、针对每一个分组,将折算后的负载信息降序排列,遍历完每一个分组,以完成每一个分组的物理节点和虚拟机折算后的负载信息的排序;
3.3、利用折算后的物理节点负载信息,剔除当前负载值已经高于阀值百分之一百零五的物理节点,并将阀值的百分之一百零五作为物理节点的装箱容量;
3.4、针对每一个分组,依次选择待迁移虚拟机迁移到所述分组内最接近装箱容量的物理节点上,使得该虚拟机迁移到的物理节点的负载值最接近箱子容量,更新该物理节点的负载信息,并将迁移决策记录下来,同时,将该虚拟机从待迁移的虚拟机列表中删除;
3.5、判断待迁移虚拟机列表是否为空,若为空则输出迁移信息,完成负载均衡调度;否则进行下一步骤;
3.6、判断当前虚拟化集群系统平均负载是否超过阀值,若没有超过阀值,则更新有新的虚拟机迁移到的物理节点的负载向量,将该物理节点再一次进行投影,并根据投影向量将其加入到所在的新的分组中,返回步骤3.1;若超过阀值,则向总控系统输出要求增加新的物理节点的命令,完成负载均衡调度。
2.如权利要求1所述的基于向量映射的负载均衡方法,其特征在于,所述虚拟化集群系统负载均衡度计算方法包括步骤:
A、计算整个虚拟化集群系统的平均CPU利用率Acpu
Acpu=(cpu1+cpu2+…+cpun)/n;    (公式2)
其中
cpui是第i个物理节点实际的CPU使用率;
n是物理节点的数目;
B、计算整个虚拟化集群系统的平均内存使用率Amem
Amem=(mem1+mem2+…+memn)/n;    (公式3)
其中
memi是第i个物理节点实际的内存使用率;
n是物理节点的数目;
C、计算整个虚拟化集群系统的平均I/O使用率AIO
AIO=(IO1+IO2+…+IOn)/n;    (公式4)
其中
IOi是第i个物理节点实际的I/O使用率;
n是物理节点的数目;
D、计算第i个物理节点的标准差作为其均衡度的衡量标准,记为balancei:
balance i = [ ( cpu i - A cpu ) 2 + ( mem i - A mem ) 2 + ( IO i - A IO ) 2 ] / 2     (公式5)
E、计算虚拟化集群系统的均衡度,记为Tbalance
T balance = balance 1 + balance 2 + . . . balance n n     (公式6)
其中
n是物理节点的数目。
3.如权利要求1所述的负载均衡方法,其特征在于,所述的步骤2)包括如下步骤:
2.1、将所有物理节点及待迁移虚拟机的三个维度资源标准化折算,并用三维空间向量表示;
2.2、基于空间坐标系将资源向量映射到投影平面内,以物理节点和待迁移虚拟机投影向量在投影平面内所处区域进行分组;
2.3、对没有物理节点当前资源投影向量或没有虚拟机资源投影向量的分组N,将编号为(N+1)%13和编号为(N-1)%13的两个组连同该组合并为一个新的大组,依次合并,直至所有组中都有物理节点以及待迁移虚拟机。
4.如权利要求3所述的基于向量映射的负载均衡方法,其特征在于,所述的标准化折算是与选定的基准物理节点对比,每一个物理节点和虚拟机的资源与基准物理节点对应的资源的比值就是标准化折算后的值。
5.如权利要求4所述的基于向量映射的负载均衡方法,其特征在于,所述投影平面是垂直于所述基准物理节点的资源容量向量的平面。
6.如权利要求1所述的基于向量映射的负载均衡方法,其特征在于,所述选择出待处理物理节点的方法通过贪婪的方法,获取与当前阀值差别最多的物理节点作为待处理对象;同时,针对待迁移虚拟机的选择也是通过贪婪的方法,选择迁出后对整个系统负载均衡度改进最大的虚拟机作为待迁移虚拟机。
CN201210044489.3A 2012-02-27 2012-02-27 一种基于向量映射的负载均衡方法 Expired - Fee Related CN102571986B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210044489.3A CN102571986B (zh) 2012-02-27 2012-02-27 一种基于向量映射的负载均衡方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210044489.3A CN102571986B (zh) 2012-02-27 2012-02-27 一种基于向量映射的负载均衡方法

Publications (2)

Publication Number Publication Date
CN102571986A CN102571986A (zh) 2012-07-11
CN102571986B true CN102571986B (zh) 2014-05-21

Family

ID=46416446

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210044489.3A Expired - Fee Related CN102571986B (zh) 2012-02-27 2012-02-27 一种基于向量映射的负载均衡方法

Country Status (1)

Country Link
CN (1) CN102571986B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102932279B (zh) * 2012-10-30 2016-06-29 北京邮电大学 一种云环境数据中心多维资源调度方法
CN103823541B (zh) * 2012-11-16 2016-12-21 北京航空航天大学 虚拟数据中心节能调度方法和设备
CN102938790B (zh) * 2012-11-20 2015-10-21 无锡城市云计算中心有限公司 云计算系统中的资源分配方法
CN102968344A (zh) * 2012-11-26 2013-03-13 北京航空航天大学 一种多虚拟机迁移调度的方法
CN104699520B (zh) * 2013-12-04 2018-05-01 北京天地超云科技有限公司 一种基于虚拟机迁移调度的节能方法
CN104166594B (zh) * 2014-08-19 2018-01-02 杭州华为数字技术有限公司 负载均衡控制方法及相关装置
CN104536803A (zh) * 2014-12-23 2015-04-22 西安电子科技大学 一种基于组合优化的虚拟机调度方法
CN105808341B (zh) * 2014-12-29 2019-05-28 中国移动通信集团公司 一种资源调度的方法、装置和系统
CN104995604A (zh) 2015-03-03 2015-10-21 华为技术有限公司 虚拟机的资源分配方法及装置
CN104683487A (zh) * 2015-03-30 2015-06-03 四川空间信息产业发展有限公司 基于三维数据访问的分布式服务器集群资源调度方法
CN105049499B (zh) * 2015-07-01 2018-08-24 南京邮电大学 一种基于多立方体映射的网络功能虚拟化资源分配方法
CN108009016B (zh) * 2016-10-31 2021-10-22 华为技术有限公司 一种资源负载均衡控制方法及集群调度器
CN111580963B (zh) * 2020-04-29 2023-07-11 平安科技(深圳)有限公司 存储集群的负载均衡方法、装置、计算机设备及存储介质
CN111614746B (zh) * 2020-05-15 2022-03-22 北京金山云网络技术有限公司 云主机集群的负载均衡方法、装置及服务器
CN112653580B (zh) * 2020-12-16 2022-11-08 国网河南省电力公司信息通信公司 网络切片下基于主动探测的虚拟网资源分配方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101452406A (zh) * 2008-12-23 2009-06-10 北京航空航天大学 一种对操作系统透明的机群负载平衡方法
CN101945130A (zh) * 2010-09-15 2011-01-12 中国人民解放军国防科学技术大学 一种基于复合域名的服务阵列负载均衡方法
CN102185779A (zh) * 2011-05-11 2011-09-14 田文洪 与综合配置能力成比例的数据中心资源负载均衡的方法及装置
US8117613B2 (en) * 2009-04-08 2012-02-14 Microsoft Corporation Optimized virtual machine migration mechanism

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101452406A (zh) * 2008-12-23 2009-06-10 北京航空航天大学 一种对操作系统透明的机群负载平衡方法
US8117613B2 (en) * 2009-04-08 2012-02-14 Microsoft Corporation Optimized virtual machine migration mechanism
CN101945130A (zh) * 2010-09-15 2011-01-12 中国人民解放军国防科学技术大学 一种基于复合域名的服务阵列负载均衡方法
CN102185779A (zh) * 2011-05-11 2011-09-14 田文洪 与综合配置能力成比例的数据中心资源负载均衡的方法及装置

Also Published As

Publication number Publication date
CN102571986A (zh) 2012-07-11

Similar Documents

Publication Publication Date Title
CN102571986B (zh) 一种基于向量映射的负载均衡方法
CN103885839B (zh) 基于多水平划分法和赋权有向超图的云计算任务调度方法
Elango et al. Balancing task allocation in multi-robot systems using K-means clustering and auction based mechanisms
CN103677958B (zh) 一种虚拟化集群的资源调度方法及装置
Moghaddam et al. Low carbon virtual private clouds
CN102932279A (zh) 一种云环境数据中心多维资源调度系统及方法
GB2576420A (en) Computationally-efficient resource allocation
US10216546B1 (en) Computationally-efficient resource allocation
CN105471985A (zh) 负载均衡方法及云平台计算方法、云平台
CN101504620A (zh) 一种虚拟化集群系统负载平衡方法、装置及系统
CN102591443A (zh) 一种虚拟化集群整合方法、装置及系统
CN103401939A (zh) 一种采用混合调度策略的负载均衡方法
CN102968344A (zh) 一种多虚拟机迁移调度的方法
CN106412124B (zh) 一种并序化云服务平台任务分配系统及任务分配方法
CN105824686A (zh) 一种虚拟机宿主机的选择方法和选择系统
Li et al. Page-sharing-based virtual machine packing with multi-resource constraints to reduce network traffic in migration for clouds
Huang et al. Optimizing grid computing configuration and scheduling for geospatial analysis: An example with interpolating DEM
CN105373432A (zh) 一种基于虚拟资源状态预测的云计算资源调度方法
CN109447264A (zh) 云计算环境下基于vham-r模型的虚拟机放置遗传优化方法
Nayak et al. Renewable energy-based resource management in cloud computing: a review
CN108769105A (zh) 一种云环境下的知识服务多任务调度优化方法及其构建的调度系统
CN105389196A (zh) 利用虚拟化技术进行地震资料处理的方法
Arri et al. Energy optimization-based optimal trade-off scheme for job scheduling in fog computing
CN107329826A (zh) 一种基于Cloudsim平台上的启发式融合资源动态调度算法
Yi et al. Digital twin constructed spatial structure for flexible and efficient task allocation of drones in mobile networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140521

Termination date: 20150227

EXPY Termination of patent right or utility model