CN105187531A - 应用于云计算虚拟化服务器集群的负载均衡的系统及方法 - Google Patents

应用于云计算虚拟化服务器集群的负载均衡的系统及方法 Download PDF

Info

Publication number
CN105187531A
CN105187531A CN201510569661.0A CN201510569661A CN105187531A CN 105187531 A CN105187531 A CN 105187531A CN 201510569661 A CN201510569661 A CN 201510569661A CN 105187531 A CN105187531 A CN 105187531A
Authority
CN
China
Prior art keywords
virtualized server
run
load
resource
virtualized
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.)
Pending
Application number
CN201510569661.0A
Other languages
English (en)
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.)
Shanghai Saiwei Information Technology Co Ltd
Original Assignee
Shanghai Saiwei Information Technology Co Ltd
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 Shanghai Saiwei Information Technology Co Ltd filed Critical Shanghai Saiwei Information Technology Co Ltd
Priority to CN201510569661.0A priority Critical patent/CN105187531A/zh
Publication of CN105187531A publication Critical patent/CN105187531A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及一种应用于云计算虚拟化服务器集群的负载均衡的系统及方法,其中,所述的系统包括数据采集模块,用于获取各个虚拟化服务器中的相关参数;数据模块,用于存储所述的数据采集模块获取的相关参数;计算模块,用于根据存储于数据模块的相关参数计算如果待运行的虚拟机在各个虚拟化服务器上运行,各个虚拟化服务器的综合理论负载;调度模块,用于根据计算模块的计算结果,选择综合理论负载最小的虚拟化服务器,以运行该待运行的虚拟机。采用该种结构的应用于云计算虚拟化服务器集群的负载均衡的系统及方法,根据集群中多个服务器的负载和总体资源情况合理选择服务器运行虚拟桌面的机制,克服已有负载均衡算法的片面性,应用范围广泛。

Description

应用于云计算虚拟化服务器集群的负载均衡的系统及方法
技术领域
本发明涉及信息管理领域,尤其涉及云计算,具体是指一种应用于云计算虚拟化服务器集群的负载均衡的系统及方法。
背景技术
当前,服务器负载均衡产品各种各样,有硬件的,有软件的,典型的如Linux的LVS。算法也千差万别,常见的有随机,轮叫调度,最小连接调度,源地址散列调度,动态反馈等。
然而,这些算法普遍适合Web服务器,数据库服务器等。对虚拟化服务器集群来说,负载均衡的目的是要选择最适合运行虚拟机的服务器,均衡的对象是虚拟机。相比Web或数据库服务器处理请求和返回应答来说,虚拟机启动后,在服务器上常常占用的资源时间要长,要多。另外,每台虚拟机申请和占用的资源(CPU和内存)也是不一样的。因此,虚拟化服务器负载均衡算法不能简单的根据连接数(或请求数)来选择服务器,而必须根据服务器的负载情况和总体资源情况来选择最适合虚拟机运行的服务器。
现有的负载均衡算法无法最优化地选择出最适合虚拟机运行的服务器。
发明内容
本发明的目的是克服了上述现有技术的缺点,提供了一种能够实现的应用于云计算虚拟化服务器集群的负载均衡的系统及方法。
为了实现上述目的,本发明的应用于云计算虚拟化服务器集群的负载均衡的系统及方法具有如下构成:
该应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡的系统,其主要特点是,所述的系统包括:
数据采集模块,用于获取各个虚拟化服务器中的相关参数;
数据模块,用于存储所述的数据采集模块获取的相关参数;
计算模块,用于根据存储于数据模块的相关参数计算如果待运行的虚拟机在各个虚拟化服务器上运行,各个虚拟化服务器的综合理论负载;
调度模块,用于根据计算模块的计算结果,选择综合理论负载最小的虚拟化服务器,以运行该待运行的虚拟机。
本发明还涉及一种应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡方法,其主要特点是,所述的方法包括:
(1)数据采集模块获取各个虚拟化服务器中的相关参数并存储于数据模块;
(2)计算模块根据存储于数据模块的相关参数计算如果待运行的虚拟机在各个虚拟化服务器上运行,各个虚拟化服务器的综合理论负载;
(3)调度模块根据计算模块的计算结果,选择综合理论负载最小的虚拟化服务器,以运行该待运行的虚拟机。
进一步地,所述的数据采集模块获取各个虚拟化服务器中的相关参数,具体包括以下步骤:
(1.1)所述的数据采集模块获取各个虚拟化服务器的运行状态以及各个虚拟化服务器的总资源的大小;
(1.2)所述的数据采集模块周期性地获取各个虚拟化服务器的各个资源的平均使用率;
(1.3)所述的数据采集模块获取各个虚拟化服务器上运行的各个虚拟机请求的资源的大小。
更进一步地,所述的步骤(2)具体包括以下步骤:
(2.1)所述的计算模块根据所述的数据采集模块获取的各个虚拟化服务器的运行状态选择正在运行的虚拟化服务器;
(2.2)所述的计算模块从所述的正在运行的虚拟化服务器中选择负载符合要求的虚拟化服务器;
(2.3)所述的计算模块计算虚拟化服务器的综合理论负载。
再进一步地,所述的计算模块根据所述的数据采集模块获取各个虚拟化服务器的运行状态选择正在运行的虚拟化服务器,具体包括以下步骤:
(2.1.1)所述的计算模块根据所述的数据采集模块获取的各个虚拟化服务器的运行状态判断正在运行的虚拟化服务器的个数;
(2.1.2)如果所述的虚拟化服务器的个数为0,则所述的计算模块返回错误;
(2.1.3)如果所述的虚拟化服务器的个数等于1,则返回该正在运行的虚拟化服务器,然后继续步骤(3);
(2.1.4)如果所述的虚拟化服务器的个数大于1,则返回正在运行的虚拟化服务器继续步骤(2.2)。
再进一步地,所述的步骤(2.2)具体包括以下步骤:
(2.2.1)所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在低负载的虚拟化服务器;
(2.2.2)如果所述的正在运行的虚拟化服务器中存在低负载的虚拟化服务器,则返回该低负载的虚拟化服务器,然后继续步骤(2.3);
(2.2.3)如果所述的正在运行的虚拟化服务器中不存在低负载的虚拟化服务器,则所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在中等负载的虚拟化服务器;
(2.2.4)如果所述的正在运行的虚拟化服务器中存在中等负载的虚拟化服务器,则返回该中等负载的虚拟化服务器,然后继续步骤(2.3);
(2.2.5)如果所述的正在运行的虚拟化服务器中不存在中等负载的虚拟化服务器,则继续步骤(2.3)。
再进一步地,所述的步骤(2.2.1)具体包括以下步骤:
(2.2.1.1)所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在符合以下要求的虚拟化服务器:
VMs<=VML且RESavi<RESLi(i=1,…m)(1)
其中,m为需要计算的资源种类数,i为第i种资源,VMs为虚拟化服务器中正在运行的虚拟机数和申请运行的虚拟机数之和,VML为虚拟化服务器运行虚拟机数的低阈值,RESavi为虚拟化服务器第i种资源的平均使用率,RESLi为虚拟化服务器第i种资源的平均使用率低阈值;
(2.2.1.2)如果所述的正在运行的虚拟化服务器中存在一个符合公式(1)的虚拟化服务器,则继续步骤(3);
(2.2.1.3)如果所述的正在运行的虚拟化服务器中存在至少两个符合公式(1)的虚拟化服务器,则返回的所述的正在运行的虚拟化服务器中存在低负载的虚拟化服务器结果;
(2.2.1.4)如果所述的正在运行的虚拟化服务器中不存在符合公式(1)的虚拟化服务器,则返回所述的正在运行的虚拟化服务器中不存在低负载的虚拟化服务器的结果。
再进一步地,所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在中等负载的虚拟化服务器,具体包括以下步骤:
(2.2.3.1)所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在符合以下要求的虚拟化服务器:
RESavi<RESHi(i=1,…m)(2)
其中,m为需要计算的资源种类数,i为第i种资源,RESavi为虚拟化服务器第i种资源的平均使用率,RESHi为虚拟化服务器第i种资源平均使用率的高阈值;
(2.2.3.1)如果所述的正在运行的虚拟化服务器中存在一个符合公式(2)的虚拟化服务器,则继续步骤(3);
(2.2.3.1)如果所述的正在运行的虚拟化服务器中存在至少两个符合公式(2)的虚拟化服务器,则返回所述的正在运行的虚拟化服务器中存在中等负载的虚拟化服务器的结果;
(2.2.3.1)如果所述的正在运行的虚拟化服务器中不存在符合公式(2)的虚拟化服务器,则返回所述的正在运行的虚拟化服务器中不存在中等负载的虚拟化服务器的结果。
再进一步地,所述的步骤(2.3)具体为:
L O A D = &Sigma; i = 1 m R i ( &alpha; i * RES a v i + &beta; i * &Sigma; j = 1 n RES r e q i j / RES c a p i ) - - - ( 3 )
其中,LOAD为虚拟化服务器的综合理论负载,i为第i中资源,j为第j个正在运行的虚拟机,Ri为第i种资源使用率占总负载的比重,且0<=Ri<=1,R1+R2+…+Rm=1,αii=1,αi=0…1,βi=0…1,m为需要计算的资源种类数,n为虚拟化服务器上正在运行的虚拟机数和申请运行的虚拟机的和,为虚拟化服务器上所有的运行的虚拟机的请求资源之和,RESavi为获取到的虚拟化服务器的第i个资源的平均使用率,REScapi为虚拟化服务器的第i种资源总大小;
其中,αi为0,表示只按每个待运行的虚拟机请求的资源决定服务器的综合理论负载大小;
如果βi为0,则表示只按虚拟化服务器实际平均负载决定服务器的综合理论负载大小。
所述的步骤(2.2.1)具体包括以下步骤:
(2.2.1.1)所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在符合以下要求的虚拟化服务器:
VMs<=VML且RESavi<RESLi(i=1,…m)(1)
其中,m为需要计算的资源种类数,i为第i种资源;
(2.2.1.2)如果所述的正在运行的虚拟化服务器中存在一个符合公式(1)的虚拟化服务器,则继续步骤(3);
(2.2.1.3)如果所述的正在运行的虚拟化服务器中存在至少两个符合公式(1)的虚拟化服务器,则返回的所述的正在运行的虚拟化服务器中存在低负载的虚拟化服务器结果;
(2.2.1.4)如果所述的正在运行的虚拟化服务器中不存在符合公式(1)的虚拟化服务器,则返回所述的正在运行的虚拟化服务器中不存在低负载的虚拟化服务器的结果。
再进一步地,所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在中等负载的虚拟化服务器,具体包括以下步骤:
(2.2.3.1)所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在符合以下要求的虚拟化服务器:
RESavi<RESHi(i=1,…m)(2)
其中,m为需要计算的资源种类数,i为第i种资源,可以包括但不限于前面所述的4种资源(CPU,内存,网络,磁盘IO等);RESavi为虚拟化服务器第i种资源的平均使用率;RESHi为虚拟化服务器第i种资源平均使用率的高阈值。
(2.2.3.1)如果所述的正在运行的虚拟化服务器中存在一个符合公式(2)的虚拟化服务器,则继续步骤(3);
(2.2.3.1)如果所述的正在运行的虚拟化服务器中存在至少两个符合公式(2)的虚拟化服务器,则返回所述的正在运行的虚拟化服务器中存在中等负载的虚拟化服务器的结果;
(2.2.3.1)如果所述的正在运行的虚拟化服务器中不存在符合公式(2)的虚拟化服务器,则返回所述的正在运行的虚拟化服务器中不存在中等负载的虚拟化服务器的结果。
再进一步地,所述的步骤(2.3)具体为:
L O A D = &Sigma; i = 1 m R i ( &alpha; i * RES a v i + &beta; i * &Sigma; j = 1 n RES r e q i j / RES c a p i ) - - - ( 3 )
其中,LOAD为虚拟化服务器的综合理论负载,i为第i种资源,i的取值范围为1--m,j为第j正在运行的虚拟机,取值范围为1--n,αii=1,αi=0…1,βi=0…1,m为需要计算的资源种类数,n为虚拟化服务器上正在运行的虚拟机数(n-1个)和申请运行的虚拟机(1个)的和,为虚拟化服务器上所有的运行的虚拟机(n-1个)和申请运行的虚拟机(1个)所请求的第i种资源之和,RESavi为获取到的虚拟化服务器的第i个资源的平均使用率,REScapi为虚拟化服务器的第i种资源总大小;Ri为第i种资源使用率占总负载的比重(权重),(0<=Ri<=1;且R1+R2+…+Rm=1)
其中,αi为0,表示只按每个待运行的虚拟机请求的资源决定服务器的综合理论负载大小;
如果βi为0,则表示只按虚拟化服务器实际平均负载决定服务器的综合理论负载大小。
采用了该发明中的应用于云计算虚拟化服务器集群的负载均衡的系统及方法,如果两台的虚拟化服务器实际负载相同时,系统会选择请求资源少的虚拟化服务器启动新虚拟机;如果两台的虚拟化服务器中已运行的虚拟机请求的资源相同时,系统会选择实际负载小的虚拟化服务器启动新虚拟机,其应用范围广泛。
附图说明
图1为本发明的应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡的系统的结构示意图。
图2为本发明的应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡方法的步骤流程图。
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
在详细说明根据本发明的实施例前,应该注意到的是,所述实施例主要在于与应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡有关的方法步骤和设备组件的组合。因此,所属设备组件和方法步骤已经在附图中通过常规符号在适当的位置表示出来了,并且只示出了与理解本发明的实施例有关的细节,以免因对于得益于本发明的本领域普通技术人员而言显而易见的那些细节而模糊了本公开内容。
在本文中,诸如左和右,上和下,前和后,第一和第二之类的关系术语仅仅用来区分一个实体或动作与另一个实体或动作,而不一定要求或暗示这种实体或动作之间的任何实际的这种关系或顺序。术语“包括”、“包含”或任何其他变体旨在涵盖非排他性的包含,由此使得包括一系列要素的过程、方法、物品或者设备不仅包含这些要素,而且还包含没有明确列出的其他要素,或者为这种过程、方法、物品或者设备所固有的要素。
本发明涉及云计算服务器集群系统的资源管理控制,尤其涉及对服务器的负载均衡管理,集群应用的资源调配方法。
图1为应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡的系统的结构示意图,包括数据采集模块,数据模块,计算模块和调配模块。
图2为本发明的应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡方法的步骤流程图,可应用在虚拟化服务器集群的资源调配过程中。流程图示出的的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出的步骤。
如图1所示,所述的方法主要包括如下步骤:
(1)获取或采样该负载均衡算法计算需要的各个参数;
(2)计算待运行虚拟机如果在虚拟化服务器上运行,各个虚拟化服务器的综合理论负载;
(3)根据计算结果,选择综合理论负载最小的虚拟化服务器运行虚拟机。
在一种优选的实施方式中,所述的步骤(1)具体为:
在虚拟化服务器上线时,数据模块通过虚拟化服务器的数据采集模块采集到参数1和参数2;
每隔指定的时间间隔,数据模块通过虚拟化服务器的数据采集模块采集到参数3;
在创建虚拟机时,数据模块采集到参数4。
(1)获取或采样该负载均衡算法计算需要的各个参数
负载均衡算法计算时要求提供根据下列参数信息:
参数1:集群中的虚拟化服务器运行状态(运行或停止):
参数2:各个虚拟化服务器的各个资源的大小RESCAP
A.对于服务器的上的CPU资源,其大小为CPU计算能力CPUcap(GHZ):
CPUcap=物理CPU数×每CPU的核数×每核的超线程数×频率(GHZ)
如两路4核支持超线程频率为2.4GHZ的CPU计算能力为:2×4×2×2.4=38.4GHZ。
B.对于虚拟化服务器的内存资源,其大小即为内存大小MEMcap(GB)。
C.对于虚拟化服务器的其他资源(如网络),都可以作为算法考虑的资源,同CPU和内存。
参数3:各个虚拟化服务器的各个资源平均使用率RESavi
即在指定的采样时间间隔内,资源平均使用的大小占总资源的百分比:
A.对于CPU资源,资源的平均使用率即指CPU的平均使用率;
B.对于内存资源,资源的平均使用率即指MEMcap(GB);
C.对于其他资源(如网络或存储IO),如果虚拟化服务器使用多块网卡或不同的存储服务虚拟机,则这些资源的平均使用率有多个,计算时待启动虚拟机使用的资源的平均使用率作为参数。
为了获取参数3,要求虚拟化服务器的每隔指定的时间上报自己的各种资源的平均使用情况。
参数4:各个虚拟化服务器上运行的各个虚拟机请求的资源大小RESrep
系统在创建虚拟机时都会根据用户的要求分配虚拟机可以使用的CPU,内存,网络等资源的大小,但虚拟机运行时,实际使用的资源大小每时每刻都是不同的。对于企业云来说,系统要保证已有的资源能够最大化利用的同时,合理分配给不同用户使用。
A.对于CPU资源,即指分配给虚拟机的CPU大小(GHZ);
B.对于内存资源,即指分配给虚拟机的(GB)
C.对于其他资源(如网络或存储IO),都可以进行量化。
(2)计算待运行虚拟机如果在虚拟化服务器上运行,各个虚拟化服务器的综合理论负载,返回负载最小的服务器;
所述的步骤(2)具体包括以下步骤:
(2.1)从集群中的所有虚拟化服务器中选择正在运行(参数1)的虚拟化服务器:
如果满足条件的虚拟化服务器数等于0,则返回错误;
如果满足条件的虚拟化服务器数等于1,则返回唯一满足条件的虚拟化服务器;
如果满足条件的虚拟化服务器数大于1,则继续步骤(2.2)。
(2.2)从满足步骤(2.1)的多个虚拟化服务器中的选择低负载的虚拟化服务器:
低负载的虚拟化服务器是指满足下列条件的虚拟化服务器:
VMs<=VML且RESavi<RESLi(i=1,…m)(1)
其中,m为需要计算的资源种类数,可以包括但不限于下列4种:
A、虚拟化服务器CPU平均使用率:
即在指定的时间间隔内,平均使用的CPU(MHZ)/总的CPU(MHZ);
B、虚拟化服务器内存平均使用率:
即在指定的时间间隔内,平均使用的物理内存/总的物理内存;
C、虚拟化服务器网络带宽平均使用(速)率:
即在指定的时间间隔内,网络的平均读/写速率。由于每个虚拟化服务器有多块网卡,虚拟化服务器网络带宽的平均使用率可以这样计算:
NIO a v = m a x ( &Sigma; 1 n NIO r i , &Sigma; 1 n NIO w i ) / n
其中:n:为网卡数;i:为第i块网卡,取值范围为1-n,包括1和n;NIOri:为第i块网卡的平均读速率,NIOwi为第i块网卡的平均写速率;为n块网卡平均读数率的和;为n块网卡平均读数率的和;为取两者最大值;NIOav:为某台虚拟化服务器网络带宽平均使用率。
D、虚拟化服务器磁盘IO平均使用(忙)率:
即在指定的时间间隔内,IO操作的平均使用(忙)率。每一台虚拟化服务器会有多个DISK,会有多个IO平均使用率参数。这些IO平均使用率不能作平均运算算出总的平均使用率。我们取其中的最大值:
DIOav=max(DIOav1,DIOav2,...,DIOavn)
其中n为disk数;DIOavi为第i个disk的IO平均使用率,i的取值范围为1-n,包括1和n。
VMs为虚拟化服务器中正在运行的虚拟机数和申请运行的虚拟机数(1个)之和,即VMs除了包括运行的虚拟机还要申请运行的虚拟机(总为一个)。
VML为虚拟化服务器运行虚拟机数的低阈值,小于这个数表示虚拟化服务器处于低负载状态。
RESavi为虚拟化服务器第i种资源的平均使用率,如上面提出的CPU平均使用率或内存,网络,磁盘IO平均使用率等。
RESLi为虚拟化服务器第i种资源的平均使用率低阈值。
公式除了检查正在运行的虚拟机数外,还检查各种资源使用情况,这样有助于找出真正低负载的虚拟化服务器。
即选择正在运行的虚拟机数小于指定(阀)值,且最近一次采集到的各个虚拟化服务器的各个资源的平均使用率(即参数3)都小于指定(阀)值RESL的虚拟化服务器:
如果满足条件的虚拟化服务器等于0,则进入步骤(2.3);
如果满足条件的虚拟化服务器等于1,则返回唯一满足条件的虚拟化服务器;
如果满足条件的虚拟化服务器大于1,则进入步骤(2.4)。
(2.3)从满足步骤(2.1)的多个虚拟化服务器中选择中等负载的虚拟化服务器:
中等负载的虚拟化服务器是指满足下列条件的虚拟化服务器:
RESavi<RESHi(i=1,…m)(2)
其中,m为需要计算的资源种类数,i为第i种资源,可以包括但不限于前面所述的4种资源(CPU,内存,网络,磁盘IO等);RESavi为虚拟化服务器第i种资源的平均使用率;RESHi为虚拟化服务器第i种资源平均使用率的高阈值。
即各个虚拟化服务器的各个资源的平均使用率RESHi(参数3)都小于指定阈值RESHi的虚拟化服务器。
(2.3.1)如果满足条件的虚拟化服务器数等于0,则进入步骤(2.4);
如果到这一步,说明所有运行的虚拟化服务器都高负载或某一项是瓶颈,应该扩容。
如果到这一步,步骤(2.4)需要计算所有运行的虚拟化服务器的综合理论负载。
(2.3.2)如果满足条件的虚拟化服务器数等于1,则返回这个唯一满足条件的虚拟化服务器。
(2.3.3)如果满足条件的虚拟化服务器数大于1,则进入步骤(2.4);
如果步骤(2.4)需要计算多个中等负载的虚拟化服务器的综合理论负载。
计算前面步骤挑选出来的各个虚拟化服务器的综合理论负载LOAD:
L O A D = &Sigma; i = 1 m R i ( &alpha; i * RES a v i + &beta; i * &Sigma; j = 1 n RES r e q i j / RES c a p i ) (公式1)
其中:
LOAD为虚拟化服务器的综合理论负载,i为第i种资源,i的取值范围为1-m,包括1和m,j为第j正在运行的虚拟机,取值范围为1-n,包括1和n,αii=1,αi=0…1,βi=0…1,m为需要计算的资源种类数,n为虚拟化服务器上正在运行的虚拟机数(n-1个)和申请运行的虚拟机(1个)的和,为虚拟化服务器上所有的运行的虚拟机(n-1个)和申请运行的虚拟机(1个)所请求的第i种资源之和,RESavi为获取到的虚拟化服务器的第i个资源的平均使用率,REScapi为虚拟化服务器的第i种资源总大小;Ri为第i种资源使用率占总负载的比重(权重),(0<=Ri<=1;且R1+R2+…+Rm=1)
其中,αi为0,表示只按每个待运行的虚拟机请求的资源决定服务器的综合理论负载大小;
如果βi为0,则表示只按虚拟化服务器实际平均负载决定服务器的综合理论负载大小。
步骤(3)根据计算结果,选择综合理论负载最小的虚拟化服务器运行虚拟机
步骤(2)返回综合理论负载最小的虚拟化服务器,系统向选择的虚拟化服务器发送启动指定虚拟机的控制命令。
本领域的技术人员应该了解,上述的本发明的各模块,子模块或步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,甚至同一模块可以分布在多个计算装置(集群)上。可选的,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
采用了该发明中的应用于云计算虚拟化服务器集群的负载均衡的系统及方法,如果两台的虚拟化服务器实际负载相同时,系统会选择请求资源少的虚拟化服务器启动新虚拟机;如果两台的虚拟化服务器中已运行的虚拟机请求的资源相同时,系统会选择实际负载小的虚拟化服务器启动新虚拟机,其应用范围广泛。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

Claims (9)

1.一种应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡的系统,其特征在于,所述的系统包括:
数据采集模块,用于获取各个虚拟化服务器中的相关参数;
数据模块,用于存储所述的数据采集模块获取的相关参数;
计算模块,用于根据存储于数据模块的相关参数计算如果待运行的虚拟机在各个虚拟化服务器上运行,各个虚拟化服务器的综合理论负载;
调度模块,用于根据计算模块的计算结果,选择综合理论负载最小的虚拟化服务器,以运行该待运行的虚拟机。
2.一种基于权利要求1所述的系统实现应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡方法,其特征在于,所述的方法包括:
(1)数据采集模块获取各个虚拟化服务器中的相关参数并存储于数据模块;
(2)计算模块根据存储于数据模块的相关参数计算如果待运行的虚拟机在各个虚拟化服务器上运行,各个虚拟化服务器的综合理论负载;
(3)调度模块根据计算模块的计算结果,选择综合理论负载最小的虚拟化服务器,以运行该待运行的虚拟机。
3.根据权利要求2所述的应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡方法,其特征在于,所述的数据采集模块获取各个虚拟化服务器中的相关参数,具体包括以下步骤:
(1.1)所述的数据采集模块获取各个虚拟化服务器的运行状态以及各个虚拟化服务器的总资源的大小;
(1.2)所述的数据采集模块周期性地获取各个虚拟化服务器的各个资源的平均使用率;
(1.3)所述的数据采集模块获取各个虚拟化服务器上运行的各个虚拟机请求的资源的大小。
4.根据权利要求3所述的应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡方法,其特征在于,所述的步骤(2)具体包括以下步骤:
(2.1)所述的计算模块根据所述的数据采集模块获取的各个虚拟化服务器的运行状态选择正在运行的虚拟化服务器;
(2.2)所述的计算模块从所述的正在运行的虚拟化服务器中选择负载符合要求的虚拟化服务器;
(2.3)所述的计算模块计算虚拟化服务器的综合理论负载。
5.根据权利要求4所述的应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡方法,其特征在于,所述的计算模块根据所述的数据采集模块获取各个虚拟化服务器的运行状态选择正在运行的虚拟化服务器,具体包括以下步骤:
(2.1.1)所述的计算模块根据所述的数据采集模块获取的各个虚拟化服务器的运行状态判断正在运行的虚拟化服务器的个数;
(2.1.2)如果所述的虚拟化服务器的个数为0,则所述的计算模块返回错误;
(2.1.3)如果所述的虚拟化服务器的个数等于1,则返回该正在运行的虚拟化服务器,然后继续步骤(3);
(2.1.4)如果所述的虚拟化服务器的个数大于1,则返回正在运行的虚拟化服务器继续步骤(2.2)。
6.根据权利要求4所述的应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡方法,其特征在于,所述的步骤(2.2)具体包括以下步骤:
(2.2.1)所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在低负载的虚拟化服务器;
(2.2.2)如果所述的正在运行的虚拟化服务器中存在低负载的虚拟化服务器,则返回该低负载的虚拟化服务器,然后继续步骤(2.3);
(2.2.3)如果所述的正在运行的虚拟化服务器中不存在低负载的虚拟化服务器,则所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在中等负载的虚拟化服务器;
(2.2.4)如果所述的正在运行的虚拟化服务器中存在中等负载的虚拟化服务器,则返回该中等负载的虚拟化服务器,然后继续步骤(2.3);
(2.2.5)如果所述的正在运行的虚拟化服务器中不存在中等负载的虚拟化服务器,则继续步骤(2.3)。
7.根据权利要求6所述的应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡方法,其特征在于,所述的步骤(2.2.1)具体包括以下步骤:
(2.2.1.1)所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在符合以下要求的虚拟化服务器:
VMs<=VML且RESavi<RESLi(i=1,…m)(1)
其中,m为需要计算的资源种类数,i为第i种资源,VMs为虚拟化服务器中正在运行的虚拟机数和申请运行的虚拟机数之和,VML为虚拟化服务器运行虚拟机数的低阈值,RESavi为虚拟化服务器第i种资源的平均使用率,RESLi为虚拟化服务器第i种资源的平均使用率低阈值;
(2.2.1.2)如果所述的正在运行的虚拟化服务器中存在一个符合公式(1)的虚拟化服务器,则继续步骤(3);
(2.2.1.3)如果所述的正在运行的虚拟化服务器中存在至少两个符合公式(1)的虚拟化服务器,则返回的所述的正在运行的虚拟化服务器中存在低负载的虚拟化服务器结果;
(2.2.1.4)如果所述的正在运行的虚拟化服务器中不存在符合公式(1)的虚拟化服务器,则返回所述的正在运行的虚拟化服务器中不存在低负载的虚拟化服务器的结果。
8.根据权利要求6所述的应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡方法,其特征在于,所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在中等负载的虚拟化服务器,具体包括以下步骤:
(2.2.3.1)所述的计算模块判断所述的正在运行的虚拟化服务器中是否存在符合以下要求的虚拟化服务器:
RESavi<RESHi(i=1,…m)(2)
其中,m为需要计算的资源种类数,i为第i种资源,RESavi为虚拟化服务器第i种资源的平均使用率,RESHi为虚拟化服务器第i种资源平均使用率的高阈值;
(2.2.3.1)如果所述的正在运行的虚拟化服务器中存在一个符合公式(2)的虚拟化服务器,则继续步骤(3);
(2.2.3.1)如果所述的正在运行的虚拟化服务器中存在至少两个符合公式(2)的虚拟化服务器,则返回所述的正在运行的虚拟化服务器中存在中等负载的虚拟化服务器的结果;
(2.2.3.1)如果所述的正在运行的虚拟化服务器中不存在符合公式(2)的虚拟化服务器,则返回所述的正在运行的虚拟化服务器中不存在中等负载的虚拟化服务器的结果。
9.根据权利要求6所述的应用于云计算虚拟化服务器集群中的智能资源调度的负载均衡方法,其特征在于,所述的步骤(2.3)具体为:
L O A D = &Sigma; i = 1 m R i ( &alpha; i * RES a v i + &beta; i * &Sigma; j = 1 n RES r e q i j / RES c a p i ) - - - ( 3 )
其中,LOAD为虚拟化服务器的综合理论负载,i为第i中资源,j为第j个正在运行的虚拟机,Ri为第i种资源使用率占总负载的比重,且0<=Ri<=1,R1+R2+…+Rm=1,αii=1,αi=0…1,βi=0…1,m为需要计算的资源种类数,n为虚拟化服务器上正在运行的虚拟机数和申请运行的虚拟机的和,为虚拟化服务器上所有的运行的虚拟机的请求资源之和,RESavi为获取到的虚拟化服务器的第i个资源的平均使用率,REScapi为虚拟化服务器的第i种资源总大小;
其中,αi为0,表示只按每个待运行的虚拟机请求的资源决定服务器的综合理论负载大小;
如果βi为0,则表示只按虚拟化服务器实际平均负载决定服务器的综合理论负载大小。
CN201510569661.0A 2015-09-09 2015-09-09 应用于云计算虚拟化服务器集群的负载均衡的系统及方法 Pending CN105187531A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510569661.0A CN105187531A (zh) 2015-09-09 2015-09-09 应用于云计算虚拟化服务器集群的负载均衡的系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510569661.0A CN105187531A (zh) 2015-09-09 2015-09-09 应用于云计算虚拟化服务器集群的负载均衡的系统及方法

Publications (1)

Publication Number Publication Date
CN105187531A true CN105187531A (zh) 2015-12-23

Family

ID=54909371

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510569661.0A Pending CN105187531A (zh) 2015-09-09 2015-09-09 应用于云计算虚拟化服务器集群的负载均衡的系统及方法

Country Status (1)

Country Link
CN (1) CN105187531A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109688191A (zh) * 2018-10-24 2019-04-26 华为技术有限公司 流量调度方法及通信装置
CN110661824A (zh) * 2018-06-28 2020-01-07 阿里巴巴集团控股有限公司 分布式集群中服务器的流量调控方法以及装置
CN110795203A (zh) * 2018-08-03 2020-02-14 阿里巴巴集团控股有限公司 资源调度方法、装置、系统和计算设备
CN111277665A (zh) * 2020-02-14 2020-06-12 平行云科技(北京)有限公司 基于干扰性度量的3d应用调度方法、装置、终端和存储介质
CN112738193A (zh) * 2020-12-24 2021-04-30 山东鑫泰洋智能科技有限公司 云计算的负载均衡方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6101616A (en) * 1997-03-27 2000-08-08 Bull S.A. Data processing machine network architecture
EP1385314B1 (en) * 2002-07-23 2008-06-18 Avaya Communication Israel Ltd. Global server load balancer
CN103677993A (zh) * 2012-08-31 2014-03-26 鸿富锦精密工业(深圳)有限公司 虚拟机资源负载平衡系统及方法
CN103713956A (zh) * 2014-01-06 2014-04-09 山东大学 应用于云计算虚拟化管理环境中的智能加权负载均衡方法
CN104133727A (zh) * 2014-08-08 2014-11-05 成都致云科技有限公司 基于实时资源负载分配的方法
CN104301389A (zh) * 2014-09-19 2015-01-21 华侨大学 一种云计算系统的能效监控和管理方法与系统
CN104636197A (zh) * 2015-01-29 2015-05-20 东北大学 一种数据中心虚拟机迁移调度策略的评价方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6101616A (en) * 1997-03-27 2000-08-08 Bull S.A. Data processing machine network architecture
EP1385314B1 (en) * 2002-07-23 2008-06-18 Avaya Communication Israel Ltd. Global server load balancer
CN103677993A (zh) * 2012-08-31 2014-03-26 鸿富锦精密工业(深圳)有限公司 虚拟机资源负载平衡系统及方法
CN103713956A (zh) * 2014-01-06 2014-04-09 山东大学 应用于云计算虚拟化管理环境中的智能加权负载均衡方法
CN104133727A (zh) * 2014-08-08 2014-11-05 成都致云科技有限公司 基于实时资源负载分配的方法
CN104301389A (zh) * 2014-09-19 2015-01-21 华侨大学 一种云计算系统的能效监控和管理方法与系统
CN104636197A (zh) * 2015-01-29 2015-05-20 东北大学 一种数据中心虚拟机迁移调度策略的评价方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110661824A (zh) * 2018-06-28 2020-01-07 阿里巴巴集团控股有限公司 分布式集群中服务器的流量调控方法以及装置
CN110661824B (zh) * 2018-06-28 2022-04-12 阿里巴巴集团控股有限公司 分布式集群中服务器的流量调控方法及存储介质
CN110795203A (zh) * 2018-08-03 2020-02-14 阿里巴巴集团控股有限公司 资源调度方法、装置、系统和计算设备
CN110795203B (zh) * 2018-08-03 2023-05-02 阿里巴巴集团控股有限公司 资源调度方法、装置、系统和计算设备
CN109688191A (zh) * 2018-10-24 2019-04-26 华为技术有限公司 流量调度方法及通信装置
CN109688191B (zh) * 2018-10-24 2021-02-12 华为技术有限公司 流量调度方法及通信装置
CN111277665A (zh) * 2020-02-14 2020-06-12 平行云科技(北京)有限公司 基于干扰性度量的3d应用调度方法、装置、终端和存储介质
CN111277665B (zh) * 2020-02-14 2022-04-08 平行云科技(北京)有限公司 基于干扰性度量的3d应用调度方法、装置、终端和存储介质
CN112738193A (zh) * 2020-12-24 2021-04-30 山东鑫泰洋智能科技有限公司 云计算的负载均衡方法及装置

Similar Documents

Publication Publication Date Title
CN104348679B (zh) 一种分桶测试的方法、装置和系统
CN101248419B (zh) 信息处理系统
CN105187531A (zh) 应用于云计算虚拟化服务器集群的负载均衡的系统及方法
CN102868573B (zh) Web服务负载云测试方法和装置
US20160072877A1 (en) Information Handling System Application Decentralized Workload Management
CN108111554B (zh) 一种访问队列的控制方法及装置
CN103473334A (zh) 数据存储、查询方法及系统
US11496413B2 (en) Allocating cloud computing resources in a cloud computing environment based on user predictability
CN105471985A (zh) 负载均衡方法及云平台计算方法、云平台
CN106250233B (zh) MapReduce性能优化系统及优化方法
CN103793272A (zh) 一种周期性任务调度方法及系统
CN104023042B (zh) 云平台资源调度方法
CN103327072A (zh) 一种集群负载均衡的方法及其系统
CN103246592A (zh) 一种监控采集系统及方法
CN106095582A (zh) 云平台的任务执行方法
CN107145384A (zh) 任务分配方法和系统
CN107402926A (zh) 一种查询方法以及查询设备
CN105404549A (zh) 基于yarn架构的虚拟机调度系统
US8819239B2 (en) Distributed resource management systems and methods for resource management thereof
CN102081624B (zh) 一种数据查询的方法及装置
CN102098223A (zh) 节点设备调度方法、装置和系统
CN107589980A (zh) 一种云计算资源的调度方法
CN105872109A (zh) 云平台负载运行方法
CN101390056A (zh) 应用系统智能优化器
CN110413393A (zh) 集群资源管理方法、装置、计算机集群及可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20151223

WD01 Invention patent application deemed withdrawn after publication