CN111614746B - 云主机集群的负载均衡方法、装置及服务器 - Google Patents

云主机集群的负载均衡方法、装置及服务器 Download PDF

Info

Publication number
CN111614746B
CN111614746B CN202010417658.8A CN202010417658A CN111614746B CN 111614746 B CN111614746 B CN 111614746B CN 202010417658 A CN202010417658 A CN 202010417658A CN 111614746 B CN111614746 B CN 111614746B
Authority
CN
China
Prior art keywords
resource
cloud host
target
cluster
cloud
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.)
Active
Application number
CN202010417658.8A
Other languages
English (en)
Other versions
CN111614746A (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.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network 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 Beijing Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN202010417658.8A priority Critical patent/CN111614746B/zh
Publication of CN111614746A publication Critical patent/CN111614746A/zh
Priority to PCT/CN2021/093112 priority patent/WO2021228103A1/zh
Application granted granted Critical
Publication of CN111614746B publication Critical patent/CN111614746B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • H04L67/1004Server selection for load balancing
    • 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/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种云主机集群的负载均衡方法、装置及服务器,该方法包括:按照资源使用优先级从各个云主机集群中确定目标云主机集群;基于第一配置信息和第二配置信息,从各个物理主机中确定目标云主机集群中每个云主机对应的目标节点,以通过目标节点为目标云主机集群提供目标资源量的硬件资源;监听目标云主机集群中每个硬件资源的实际使用量;根据实际使用量调整目标云主机集群的目标节点,以对目标云主机集群进行负载均衡。本发明可以更为合理地对云主机集群的负载进行均衡,可以有效缓解资源抢占和资源浪费的问题。

Description

云主机集群的负载均衡方法、装置及服务器
技术领域
本发明涉及互联网技术领域,尤其是涉及一种云主机集群的负载均衡方法、装置及服务器。
背景技术
云主机是云计算在基础设施应用上的重要组成部分,物理服务器可以为云主机提供CPU(Central Processing Unit/Processor,中央处理器)或内存等硬件资源,通过对物理服务器提供的硬件资源进行配置,可以组成多个相同或不同的云主机,为提高物理服务器的CPU或内存资源使用效率,需要对硬件资源的配置进行优化。目前通常采用开源社区提供的numad服务程序对云主机进行负载均衡,以通告物理服务器的资源使用效率,然而经发明人研究发现,采用这种方式对云主机进行负载均衡时存在合理性较差的问题,容易造成资源抢占和资源浪费的情况。
发明内容
有鉴于此,本发明的目的在于提供一种云主机集群的负载均衡方法、装置及服务器,可以更为合理地对云主机集群的负载进行均衡,可以有效缓解资源抢占和资源浪费的问题。
第一方面,本发明实施例提供了一种云主机集群的负载均衡方法,应用于控制服务器,所述控制服务器存储有多个物理主机的第一配置信息、多个云主机集群的第二配置信息和各个所述云主机集群的资源使用优先级,每个所述物理主机均包括多个硬件资源,所述云主机集群包括基于所述物理主机提供所述硬件资源搭建的多个云主机,所述第一配置信息包括各个所述物理主机中每个所述硬件资源的当前剩余资源量,所述第二配置信息包括所述目标云主机集群中每个云主机分别所需的硬件资源的目标资源占比和目标资源量,所述方法包括:按照所述资源使用优先级从各个所述云主机集群中确定目标云主机集群;基于所述第一配置信息和所述第二配置信息,从各个所述物理主机中确定所述目标云主机集群中每个所述云主机对应的目标节点,以通过所述目标节点为所述目标云主机集群提供所述目标资源量的硬件资源;监听所述目标云主机集群中每个所述硬件资源的实际使用量;根据所述实际使用量调整所述目标云主机集群的所述目标节点,以对所述目标云主机集群进行负载均衡。
在一种实施方式中,所述基于所述第一配置信息和所述第二配置信息,从各个所述物理主机中确定所述目标云主机集群中每个所述云主机对应的目标节点的步骤,包括:根据所述第二配置信息中每个所述硬件资源的目标资源占比的大小,确定所述目标云主机集群的主资源;从各个所述物理主机中选取包含有所述主资源的物理主机;根据选取的物理主机中所述主资源的当前剩余资源量的大小,确定所述目标云主机集群中每个所述云主机对应的目标节点。
在一种实施方式中,所述根据选取的物理主机中所述主资源的当前剩余资源量的大小,确定所述目标云主机集群中每个所述云主机对应的目标节点的步骤,包括:从所述目标云主机集群中随机选取云主机;将选取的物理主机中与所述主资源的当前剩余资源量最大的物理主机,确定为选取的云主机对应的目标节点;计算选取的云主机对应的目标节点中所述主资源的当前剩余资源量,与选取的云主机中所述主资源的目标资源量之间的差值;基于所述差值更新选取的云主机对应的目标节点中所述主资源的当前剩余资源量;从所述目标云主机集群的其余云主机中随机选取下一云主机,将选取的物理主机中所述主资源的当前剩余资源量最大的物理主机,确定为选取的下一云主机对应的目标节点,直至确定所述目标云主机集群中每个所述云主机对应的目标节点。
在一种实施方式中,所述根据所述实际使用量调整所述目标云主机集群的所述目标节点,以对所述目标云主机集群进行负载均衡的步骤,包括:针对每个目标节点,根据该目标节点对应的多个云主机中每个所述硬件资源的实际使用量和每个所述硬件资源的当前剩余资源量,计算该目标节点中每个所述硬件资源的资源使用率;如果该目标节点中所述硬件资源的资源使用率大于或等于所述硬件资源对应的预设阈值,根据每个所述物理主机中所述硬件资源的当前剩余资源量的大小,确定该目标节点对应的每个所述云主机待迁移的目标节点;将该目标节点对应的每个云主机迁移至该云主机待迁移的目标节点,以对所述目标云主机集群进行负载均衡。
在一种实施方式中,所述根据该目标节点对应的多个云主机中每个所述硬件资源的实际使用量和每个所述硬件资源的当前剩余资源量,计算该目标节点中每个所述硬件资源的资源使用率的步骤,包括:计算该目标节点对应的多个云主机中每个所述硬件资源的实际使用量和该目标节点中每个所述硬件资源的标定资源量的比值,得到各个所述云主机中各个所述硬件资源的临时资源占比;针对每个云主机,对该云主机中每个所述硬件资源的临时资源占比进行归一化处理,得到该云主机每个所述硬件资源的实际资源占比;根据该目标节点对应的各个所述云主机中每个所述硬件资源的实际资源占比和目标资源量,计算该目标节点中每个所述硬件资源的资源使用率。
在一种实施方式中,所述方法还包括:如果所述云主机对应多个目标节点,基于所述云主机中每个所述硬件资源的目标资源量,计算将所述云主机迁移至各个所述物理主机后,各个所述物理主机中每个所述硬件资源的预估资源占比;针对每个硬件资源,如果所述物理主机中该硬件资源的预估资源占比小于该硬件资源对应的预设阈值,将所述云主机迁移至所述物理主机。
在一种实施方式中,所述硬件资源包括CPU资源、内存资源、FPU资源、FPGA资源、GPU资源和网络资源中的一种或多种。
第二方面,本发明实施例还提供一种云主机集群的负载均衡装置,应用于控制服务器,所述控制服务器存储有多个物理主机的第一配置信息、多个云主机集群的第二配置信息和各个所述云主机集群的资源使用优先级,每个所述物理主机均包括多个硬件资源,所述云主机集群包括基于所述物理主机提供所述硬件资源搭建的多个云主机,所述第一配置信息包括各个所述物理主机中每个所述硬件资源的当前剩余资源量,所述第二配置信息包括所述目标云主机集群中每个云主机分别所需的硬件资源的目标资源占比和目标资源量,所述装置包括:集群确定模块,用于按照所述资源使用优先级从各个所述云主机集群中确定目标云主机集群;节点确定模块,用于基于所述第一配置信息和所述第二配置信息,从各个所述物理主机中确定所述目标云主机集群中每个所述云主机对应的目标节点,以通过所述目标节点为所述目标云主机集群提供所述目标资源量的硬件资源;使用量监听模块,用于监听所述目标云主机集群中每个所述硬件资源的实际使用量;节点调整模块,用于根据所述实际使用量调整所述目标云主机集群的所述目标节点,以对所述目标云主机集群进行负载均衡。
第三方面,本发明实施例还提供一种服务器,包括处理器和存储器;所述存储器上存储有计算机程序,所述计算机程序在被所述处理器运行时执行如第一方面提供的任一项所述的方法。
第四方面,本发明实施例还提供一种计算机存储介质,用于储存为第一方面提供的任一项所述方法所用的计算机软件指令。
本发明实施例提供的云主机集群的负载均衡方法、装置及服务器,应用于控制服务器,控制服务器存储有多个物理主机的第一配置信息(包括各个物理主机中各个硬件资源的当前剩余资源量)、多个云主机集群的第二配置信息(包括目标云主机集群中每个云主机分别所需的硬件资源的目标资源占比和目标资源量)和各个云主机集群的资源使用优先级,每个物理主机均包括多个硬件资源,云主机集群包括基于物理主机提供硬件资源搭建的多个云主机,该方法首先按照资源使用优先级从各个云主机集群中确定目标云主机集群,并基于第一配置信息和第二配置信息,从各个物理主机中确定目标云主机集群中各个云主机对应的目标节点,以通过目标节点为目标云主机集群提供目标资源量的硬件资源,监听目标云主机集群中各个硬件资源的实际使用量,从而根据实际使用量调整目标云主机集群的目标节点,以对目标云主机集群进行负载均衡。上述方法基于预先存储的第一配置信息和第二配置信息确定目标云主机集群中每个云主机对应的目标节点,并基于云主机集群中每个硬件资源的实际使用量调整目标云主机集群的目标节点,从而较好地实现目标云主机集群的负载均衡,相较于现有的负载均衡方法容易存在资源抢占和资源浪费的情况,本发明实施例通过基于目标云主机集群中每个硬件资源的实际使用量实时对目标节点进行调整,从而较好地利用了目标节点提供的硬件资源,有效缓解了资源抢占和资源浪费等情况,进而有效提高了云主机负载均衡的合理性。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种云主机集群的负载均衡方法的流程示意图;
图2为本发明实施例提供的另一种云主机集群的负载均衡方法的流程示意图;
图3为本发明实施例提供的一种云主机集群的负载均衡装置的结构示意图;
图4为本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,为提高服务器CPU(Central Processing Unit/Processor,中央处理器)和内存资源的使用效率以及优化资源配置,普遍采用开源社区提供的Nuamd服务程序进行跨numa节点的负载均衡,在具体实现时,通过Nuamd服务程序统计每个numa节点上的CPU使用情况、内存使用情况和kvm-qemu进程对资源的占用情况等信息,并基于上述信息调整kvm-qemu在numa节点的绑定配置,由内核配合进行numa节点的迁移,从而达到负载均衡的目的。但是采用这种方式对云主机进行负载均衡时存在合理性较差的问题,Nuamd服务程序版本较为陈旧,受CPU硬件的更新换代以及云服务器集成的资源类型逐渐增多等影响,Nuamd服务程序现已无法满足当前资源多元化、计算类型多元化和服务类型多元化等需求。具体体现为:(1)Nuamd服务程序仅支持两个numa节点的负载均衡,然而当前服务器numa节点普遍多于2个;(2)Nuamd服务程序仅支持CPU和MEM(Memory Device,内存)两类资源,且不易对Nuamd服务程序所支持的资源进行扩展。
为改善上述问题,本发明实施提供了一种云主机集群的负载均衡方法、装置及服务器,可以更为合理地对云主机集群的负载进行均衡,可以有效缓解资源抢占和资源浪费的问题。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种云主机集群的负载均衡方法进行详细介绍,该方法应用于控制服务器,控制服务器存储有多个物理主机的第一配置信息、多个云主机集群的第二配置信息和各个云主机集群的资源使用优先级,每个物理主机均包括多个硬件资源,云主机集群包括基于物理主机提供硬件资源搭建的多个云主机。其中,硬件资源可以包括CPU、GPU(Graphics Processing Unit,图形处理器)、FPU(Float Point Unit,浮点运算单元)、FPGA(Field-Programmable Gate Array,即现场可编程门阵列)、MEM或NET(网络类型)等资源中的一种或多种。参见图1所示的一种云主机集群的负载均衡方法的流程示意图,该方法主要包括以下步骤S102至步骤S110:
步骤S102,按照资源使用优先级从各个云主机集群中确定目标云主机集群。
其中,可以按照服务类型划分多个云主机集群,例如,CPU服务为主的云主机集群、内存服务为主的云主机集群、GPU运算型的云主机集群、网络宽带服务为主的云主机集群以及普通云主机集群等。在实际应用中,可以预先设置各类服务类型的云主机集群的资源使用优先级,并按照资源使用优先级由高到低的顺序依次将各个云主机集群确定为目标云主机集群。
步骤S104,基于第一配置信息和第二配置信息,从各个物理主机中确定目标云主机集群中每个云主机对应的目标节点,以通过目标节点为目标云主机集群提供目标资源量的硬件资源。
其中,上述第一配置信息包括各个物理主机中每个硬件资源的当前剩余资源量,硬件资源的当前剩余资源量也即该资源当前可用的资源量,例如,物理主机node1中包括的CPU资源的当前剩余资源量为28*2GHz、Mem资源的当前剩余资源量为100G以及GPU资源的当前剩余量为0。另外,第二配置信息包括目标云主机集群中每个云主机分别所需的硬件资源的目标资源占比和目标资源量,例如,目标云主机集群为CPU服务为主的云主机集群包括六台云主机,则第二配置信息中可以记录有每台云主机均需要CPU资源“目标资源占比50%;目标资源量8*2GHz”、MEM资源“目标资源占比30%;目标资源量8GB”、GPU资源“0”以及NET资源“目标资源占比20%;目标资源量1Gb/s”,也即,目标资源占比是为云主机分配每个硬件资源的比例。
在一种实施方式中,可以第二配置信息中各个硬件资源的目标资源占比的大小,确定目标云主机集群的主资源,并将主资源的当前剩余资源量最大的物理主机确定为目标云主机集群中某个云主机对应的目标节点,直至基于各个物理主机中主资源的当前剩余资源量确定目标云主机集群中每个云主机对应的目标节点。例如,CPU服务为主的云主机集群中CPU资源的目标资源占比最大,则确定CPU资源为该目标云主机集群的主资源,若物理主机node0中CPU资源的当前剩余资源量为14*2GHz,node1中CPU资源的当前剩余资源量为28*2GHz,node2中CPU资源的当前资源剩余量为0,则将node1确定为目标云主机集群中一个云主机对应的目标节点,若目标云主机集群中每台云主机需要CPU资源的目标资源量为8*2GHz,则更新node1中CPU资源的当前资源剩余量为20*2GHz,继续基于各个物理主机的中CPU资源的当前剩余量确定目标云主机集群中其余云主机对应的目标节点。
步骤S106,监听目标云主机集群中每个硬件资源的实际使用量。
在实际应用中,虽然为目标云主机集群配置了目标资源量,但是目标云主机集群在运行过程中实际使用的资源量可能并未达到该目标资源量,为了缓解资源浪费的问题,本发明实施例对全部云主机集群中每个硬件资源的实际使用量进行监听,从而基于实际使用量对目标云主机集群中每个云主机集的目标节点进行调节,从而在一定程度上缓解资源浪费的问题。
步骤S108,根据实际使用量调整目标云主机集群的目标节点,以对目标云主机集群进行负载均衡。
在一种实施方式中,对于每个物理主机,可以该物理主机对应的云主机中每个硬件资源的实际使用量和当前剩余资源量计算硬件资源的资源使用率,基于资源使用率判断是否需要对该物理主机对应的云主机进行迁移,例如,当资源使用率大于预设阈值时确定将该物理主机对应的云主机迁移至其他物理主机,从而降低该物理主机的负载,同时充分利用其余物理主机中的剩余资源,在一定程度上缓解了资源浪费的问题。
本发明实施例提供的上述云主机集群的负载均衡方法,基于预先存储的第一配置信息和第二配置信息确定目标云主机集群中每个云主机对应的目标节点,并基于云主机集群中每个硬件资源的实际使用量调整目标云主机集群的目标节点,从而较好地实现目标云主机集群的负载均衡,相较于现有的负载均衡方法容易存在资源抢占和资源浪费的情况,本发明实施例通过基于目标云主机集群中每个硬件资源的实际使用量实时对目标节点进行调整,从而较好地利用了目标节点提供的硬件资源,有效缓解了资源抢占和资源浪费等情况,进而有效提高了云主机负载均衡的合理性。
在一种实施方式中,上述硬件资源包括CPU资源、内存资源、FPU资源、FPGA资源、GPU资源和网络资源中的一种或多种。本发明实施例以硬件资源包括CPU资源、内存资源、GPU资源和网络资源为例,对上述第一配置信息和第二配置信息进行说明,如表1所示的第一配置信息,物理主机包括node0、node1和node2。由表1可知,物理主机node0中CPU资源的当前剩余资源量为28*2GHz、MEM资源(也即,上述内存资源)的当前剩余资源量为100G、GPU资源的当前资源剩余量为2*1600、Eth资源(也即,上述网络资源)的当前剩余资源量为Mellanox25Gb/s;物理主机node1中CPU资源的当前剩余资源量为28*2GHz、MEM资源的当前剩余资源量为100G、GPU资源的当前资源剩余量为0、Eth资源的当前剩余资源量为I40e20Gb/s;物理主机node2中CPU资源的当前剩余资源量为28*2GHz、MEM资源的当前剩余资源量为100G、GPU资源的当前资源剩余量为2*1600、Eth资源的当前剩余资源量为0。
表1
Figure GDA0003485728570000101
另外,表2示意出了一种第二配置信息,包括5类云主机集群。其中,云主机集群A为CPU服务为主的云主机集群,该类云主机集群的CPU占用较大;云主机集群B为内存服务为主的云主机集群,该类云主机集群的内存占用较大;云主机集群C为GPU运算型的云主机集群,该类云主机集群几乎不适用网络;云主机集群D为网络宽带服务为主的云主机集群,该类云主机集群的网络宽带占用较大;云主机集群E为普通云主机集群。以表2第一行为例进行说明,表2第一行表征云主机集群A包括6台云主机,每台云主机所需的硬件资源包括:CPU资源“目标资源占比50%;目标资源量8*2GHz”、MEM资源“目标资源占比30%;目标资源量8GB”、GPU资源“0”以及NET资源“目标资源占比20%;目标资源量1Gb/s”。
表2
Figure GDA0003485728570000111
为便于对上述步骤S106进行理解,本发明实施例提供了一种基于第一配置信息和第二配置信息,从各个物理主机中确定目标云主机集群中每个云主机对应的目标节点的具体实施方式,参见如下步骤1至步骤3:
步骤1,根据第二配置信息中各个硬件资源的目标资源占比的大小,确定目标云主机集群的主资源。以上述表2所示的第二配置信息为例,可以得知云主机集群A中CPU资源的目标占比最大,可将CPU资源确定为云主机集群A的主资源;同理,可将MEM资源确定为云主机集群B的主资源,将GPU资源确定为云主机集群确定为云主机集群C的主资源,将NET资源确定为云主机集群D的主资源,将CPU资源或MEM资源确定为云主机集群E的主资源。
步骤2,从各个物理主机中选取包含有主资源的物理主机。以上述表1所示的第一配置信息为例,可知,假设云主机集群按资源使用优先级又高到低的顺序为“C、D、A、B、E”,则首先确定云主机集群C为目标云主机集群,可知物理主机node0和node2中均包含GPU资源。
步骤3,根据选取的物理主机中主资源的当前剩余资源量的大小,确定目标云主机集群中每个云主机对应的目标节点。在一种实施方式中,在确定云主机对应的目标节点时,可以优先选择当前剩余资源量最大的物理主机集群作为云主机对应的目标节点,具体实现时,可参照如下步骤3.1至步骤3.5:
步骤3.1,从目标云主机集群中随机选取云主机。可以理解的,因为目标云主机集群中每个云主机的需求均相同,因此在确定各个云主机对应的目标节点时,可以随机从目标云主机集群中选择云主机,确定该云主机对应的目标节点,直至确定目标云主机集群中各个云主机对应的目标节点。应当注意的是,在新创建云主机(也可理解为在初始状态下确定云主机对应的目标节点)时,方可从云主机集群中随机选取云主机,而在云主机运行过程中,可以按照各个云主机的实际资源占比选择需要进行迁移的云主机,例如,当实际资源占比超过预设阈值时确定对该云主机进行迁移。
步骤3.2,将选取的物理主机中与主资源的当前剩余资源量最大的物理主机,确定为选取的云主机对应的目标节点。以表1为例,上述物理主机node0、node1和node2中GPU的资源均为2*1600,因此可以从物理云主机集群中随机确定该云主机对应的目标节点,例如,将物理主机node0确定为该云主机对应的目标节点。
步骤3.3,计算选取的云主机对应的目标节点中主资源的当前剩余资源量,与选取的云主机中主资源的目标资源量之间的差值。其中,物理主机node0中GPU资源的当前剩余资源量与目标节点中GPU资源的目标资源量之间的差值为1.5*1600,另外,还可计算该物理主机node0中其余硬件资源的当前剩余量与云主机的目标资源量之间的差值,例如,物理node0中CPU资源的当前剩余量与云主机中CPU资源的目标资源量之间的差值为(28*2GHz-20%*4*2GHz=27.2*2GHz),MEM资源对应的差值为(100G-30%*8G=97.6G),NET资源对应的差值为25Gb/s。
步骤3.4,基于差值更新选取的云主机对应的目标节点中主资源的当前剩余资源量。在实际应用中,可将计算得到的差值更新为目标节点中主资源的当前剩余资源量,具体可参见表3所示。
表3
硬件 node 0 node 1 node 2
CPU 27.2*2GHz 28*2GHz 28*2GHz
Mem 97.6G 100G 100G
GPU 1.5*1600 0 2*1600
Eth 25Gb/s 20Gb/s 0
步骤3.5,从目标云主机集群的其余云主机中随机选取下一云主机,将选取的物理主机中主资源的当前剩余资源量最大的物理主机,确定为选取的下一云主机对应的目标节点,直至确定目标云主机集群中每个云主机对应的目标节点。例如,基于表3可知,物理主机node2中GPU资源的当前剩余资源量较大,此时可将物理主机node2确定为该下一云主机对应的目标节点,并计算物理主机node2中各个硬件资源的当前资源剩余量与该下一云主机中各个硬件资源的当前资源剩余量的差值,并基于该差值对物理主机node2的当前剩余资源量进行更新。同理,按照上述过程依次确定云主机集群C中每个云主机集群对应的目标节点,确定云主机集群C中云主机C1对应物理主机node0、云主机C2对应物理主机node2、云主机C3对应物理主机node0、云主机C4对应物理主机node2、云主机C5对应物理主机node0、云主机C6对应物理主机node2,也即物理主机node0对应云主机集群C中的3个云主机,物理主机node2对应云主机集群C中的3个云主机,同时还可以得到如表4所示的物理主机中每个硬件资源的当前资源剩余量。
表4
硬件 node 0 node 1 node 2
CPU 25.6*2GHz 28*2GHz 25.6*2GHz
Mem 92.8G 100G 92.8G
GPU 0.5*1600 0 0.5*1600
Eth 25Gb/s 20Gb/s 0
在实际应用中,确定云主机集群C中每个云主机对应的目标节点后,可以按照云主机集群的资源使用优先级确地下一云主机集群中各个云主机对应的目标节点,假设云主机集群按资源使用优先级又高到低的顺序为“C、D、A、B、E”,应在上述表4的基础上进一步确定云主机集群D中各个云主机对应的目标节点,在具体实现时,可按照上述步骤3.1至步骤3.5依次确定云主机集群D中各个云主机对应的目标节点。云主机集群D的主资源为NET资源,而物理主机node0和node1中包含NET资源,由于物理主机node0中NET资源的当前剩余资源量较大,因此云主机D1对应物理主机node0,且此时物理主机node0中NET资源的当前资源剩余量为(25Gb/s-50%*10Gb/s=20Gb/s),物理主机node0和物理主机node1的NET资源的当前资源剩余量相同,则可以选择物理主机node0或物理主机node1作为云主机D2对应的目标节点,假设云主机D2对应物理主机node0,则此时物理主机node0中NET资源的当前剩余量为(20Gb/s-50%*10Gb/s=15Gb/s),物理主机node0中NET资源的当前剩余资源量小于物理主机node1中NET资源的当前剩余资源量,因此云主机D3对应物理主机node1,依次类推,可以确定云主机D4对应物理主机node0、云主机D5对应物理主机node1以及云主机D6对应物理主机node0,也即物理主机node0对应云主机集群D中的4个云主机,物理主机node1对应云主机集群D中的2个云主机。同时可以得到如表5所示的物理主机中每个硬件资源的当前资源剩余量。
表5
硬件 node 0 node 1 node 2
CPU 22.4*2GHz 26.4*2GHz 25.6*2GHz
Mem 88.0G 97.6G 92.8G
GPU 0.5*1600 0 0.5*1600
Eth 5Gb/s 10Gb/s 0
继续按照上述步骤3.1至步骤3.5确定下一云主机集群中每个云主机对应的目标节点,其中,云主机集群A的主资源为CPU资源,则可以确定物理主机node0对应云主机集群A中1个云主机,物理主机node1对应云主机集群A中3个云主机,物理主机node2对应云主机集群A中2个云主机,同时得到如表6所示的物理主机中每个硬件资源的当前资源剩余量。
表6
硬件 node 0 node 1 node 2
CPU 18.4*2GHz 14.4*2GHz 17.6*2GHz
Mem 85.6G 90.4G 88.0G
GPU 0.5*1600 0 0.5*1600
Eth 4.8Gb/s 9.0Gb/s 0
继续按照上述步骤3.1至步骤3.5确定下一云主机集群中每个云主机对应的目标节点,其中,云主机集群B的主资源为MEM资源,则可以确定物理主机node0对应云主机集群B中2个云主机,物理主机node1对应云主机集群B中2个云主机,物理主机node2对应云主机集群B中2个云主机,且由于物理主机node2上没有NET资源,因此物理主机node 2上的云主机跨节点访问物理主机node 1上的NET资源,同时得到如表7所示的物理主机中每个硬件资源的当前资源剩余量。
表7
Figure GDA0003485728570000151
Figure GDA0003485728570000161
继续按照上述步骤3.1至步骤3.5确定下一云主机集群中每个云主机对应的目标节点,其中,云主机集群E的主资源为CPU资源或MEM资源,则可以确定物理主机node0对应云主机集群E中2个云主机,物理主机node1对应云主机集群E中1个云主机,物理主机node2对应云主机集群E中3个云主机,且由于物理主机node2上没有NET资源,物理主机node 2上的云主机跨节点访问物理主机node 1上的NET资源,同时得到如表8所示的物理主机中每个硬件资源的当前资源剩余量。
表8
硬件 node 0 node 1 node 2
CPU 13.2*2GHz 10.6*2GHz 11.0*2GHz
Mem 50.8G 57.0G 51.8G
GPU 0.5*1600 0 0.5*1600
Eth 1.4Gb/s 2.2Gb/s 0
在一种实施方式中,本发明实施例在根据实际使用量调整目标云主机集群的目标节点,以对目标云主机集群进行负载均衡时,在一种实施方式中,可以根据实际资源占比从运行中的云主机中选择需要进行迁移的云主机,并确定该云主机待迁移的物理主机,进而将该云主机迁移至该待迁移的物理主机,以实现对云主机集群的负载均衡,在具体实现时,可以参照如下步骤a至步骤c:
步骤a,针对每个目标节点,根据该目标节点对应的多个云主机中每个硬件资源的实际使用量和每个硬件资源的当前剩余资源量,计算该目标节点中每个硬件资源的资源使用率。本发明实施例提供了一种步骤a的具体实施方式,如下步骤a1至步骤a3所示:
步骤a1,计算该目标节点对应的多个云主机中每个硬件资源的实际使用量和该目标节点中每个硬件资源的标定资源量的比值,得到各个云主机中每个硬件资源的临时资源占比。其中,目标节点中硬件资源的标定资源量可以理解为目标节点中该硬件资源的可使用数量,一般而言,可使用数量与目标资源量相同。在一种实施方式中可以按照如下公式计算临时资源占比w_ti
Figure GDA0003485728570000171
其中,i表示硬件资源。
例如,云主机集群A中CPU资源的标定资源量为8*2GHz,目标资源占比为50%,实际使用量为6*2GHz,则按照上述公式得到云主机集群A中CPU资源的临时资源占比为:
Figure GDA0003485728570000172
同理,可按照上述公式计算云主机集群A中其余硬件资源的临时资源占比,假设其余硬件资源的实际使用量与标定资源量相同,也即w_ti=100%。另外,还可按照上述公式分别计算出各个云主机集群中每个硬件资源的临时资源占比。
步骤a2,针对每个云主机,对该云主机中每个硬件资源的临时资源占比进行归一化处理,得到该云主机每个硬件资源的实际资源占比。在一种实施方式中,按照如下公式对同一云主机的临时资源占比进行归一化处理,得到该云主机中每个硬件资源的实际资源占比wi
Figure GDA0003485728570000173
其中,n表示硬件资源的数量,j表示第j个硬件资源。
步骤a3,根据该目标节点对应的各个云主机中每个硬件资源的实际资源占比和目标资源量,计算该目标节点中每个硬件资源的资源使用率。在一种实施方式中,可以分别计算云主机中该硬件资源的实际资源占比和实际资源量的第一乘积,以及目标资源占比和目标资源量的第二乘积,并计算第一乘积与第二乘积的比值,得到该硬件资源的资源使用率。
步骤b,如果该目标节点中硬件资源的资源使用率大于或等于硬件资源对应的预设阈值,根据每个物理主机中硬件资源的当前剩余资源量的大小,确定该目标节点对应的每个云主机待迁移的目标节点。其中,若硬件资源的使用率大于或等于该硬件资源对应的预设阈值,则说明该硬件资超标,此时即可启动负载均衡机制,例如,当物理主机中CPU资源的资源使用率达到60%时开始进行负载均衡。在一种实施方式中,可以优先选择当前剩余资源量较大的物理主机作为云主机待迁移的目标节点。例如,当物理主机node 0中CPU资源的资源使用率为59%,即使其它物理主机的CPU资源的资源使用率几乎为0,也不进行跨节点迁移,仅仅重复统计资源使用情况,更新资源占比;当物理主机node0中CPU资源的资源使用量大于60%(例如,70%),则按照CPU资源的当前剩余资源量由大到小的顺序对物理主机进行排序,选择CPU资源的当前剩余资源量最大的物理主机作为云主机待迁移的目标节点,并将实际资源占比最大的云主机迁移至该物理主机,其中,该物理主机必须拥有CPU资源。假如准备迁移到的目标节点容不下被选中的云主机,或者目标云主机会因此超出监控指标,则选择实际资源占比次大的云主机进行拟迁移,依次类推,直到物理云主机节点的资源监控指标低于指定指标。若所有云主机都不满足迁移的条件,且资源使用率超过指定监控指标,则上报监控事件,人工介入。
步骤c,将该目标节点对应的每个云主机迁移至各个云主机待迁移的目标节点,以对目标云主机集群进行负载均衡。
在一种实施方式中,为尽量避免将云主机迁移至某个物理主机后该物理主机出现超标的情况,本发明实施例可以计算各个物理主机中每个硬件资源的预估资源占比,进而基于该预估资源占比判断是否进行云主机迁移,在具体实现时,(1)如果云主机对应多个目标节点,基于云主机中每个硬件资源的目标资源量,计算将云主机迁移至各个物理主机后,各个物理主机中每个硬件资源的预估资源占比。其中,预估资源占比也即先假设将云主机迁移至该物理主机后,该物理主机可能的资源占比。在具体计算时,可参照前述计算实际资源占比的方式计算预估资源占比。(2)针对每个硬件资源,如果物理主机中该硬件资源的预估资源占比小于该硬件资源对应的预设阈值,将云主机迁移至物理主机。
本发明实施例还可以实现跨节点负载均衡,在具体实现时,物理主机node 2中云主机集群A需要跨节点访问物理主机node 1的NET资源。为减少跨节点访问资源带来的延时,需要在运行过程中不断检查物理主机node 0和物理主机node 1的NET资源的资源使用率,在资源使用率不超过指定指标的前提下,依然可以进行云主机迁移,以消除跨节点访问资源带来的延迟。
为便于对上述实施例提供的云主机集群的负载均衡方法进行理解,本发明实施例提供了另一种云主机集群的负载均衡方法,参见图2所示的另一种云主机集群的负载均衡方法的流程示意图,该方法主要包括以下步骤S202至步骤S210:
步骤S202,初始状态下,根据预置资源配置和负载均衡策略为云主机集群分配物理主机。其中,预置资源配置包括上述第一配置信息和第二配置信息。负载均衡策略可以包括:将云主机中目标资源量最大的资源类型作为主资源;优先配置特殊类型的云主机,并设定各个云主机的资源使用优先级;当主资源满足条件,仍然无法确定将云主机具体绑定到哪个物理主机时,可以利用次要依赖资源(也即,目标资源量第二大的硬件资源)作为判断依据,不断重复,直到确定将云主机绑定的物理主机。
步骤S204,在云主机运行过程中监听云主机的实际使用量,基于实际资源量计算云主机的资源使用率(也即,资源占比)。本发明实施例在基于实际资源量计算云主机的资源使用量时,支持权重决策模型,根据硬件资源的实际资源占比wi,进行资源优化配置,具体过程可参见前述步骤a,此处不再赘述。
步骤S206,基于资源使用率判断是否进行负载均衡。如果是,执行步骤S208;如果否,执行步骤S204。例如,当资源使用率大于预设阈值时,确定执行负载均衡,当资源使用率小于预设阈值时,不执行负载均衡。
步骤S208,在云主机运行过程中进行负载均衡。在具体实现时体可参见前述步骤b对云主机进行负载均衡,此处不再赘述。
步骤S210,在运行过程中对跨节点访问的硬件资源进行负载均衡。在一种实施方式中,假设物理主机node 2中云主机集群A需要跨节点访问物理主机node 1的NET资源。可以运行过程中不断检查物理主机node 0和物理主机node 1的NET资源的资源使用率,在资源使用率不超过指定指标的前提下,依然可以进行云主机迁移,以消除跨节点访问资源带来的延迟。
上述实施例可以通过配置cgroup以调用内核迁移功能,从而实现上述过程完成负载均衡,在另一种实施方式中,可以基于上述实施例对Numad工具的内核进行优化改造,从而实现上述负载均衡过程。
综上所述,本发明实施例提供的上述云主机集群的负载均衡方法,至少具有以下特点:
(1)将除CPU资源和Memory(MEM资源)以外的其它硬件资源纳入负载均衡的考虑范围,可从整体协调资源配置。
(2)考虑到硬件资源属性具有差异,如果不进行区分地无差别处理,负载均衡会出现不合理的状况,达不到对硬件资源的高效利用,因此本发明实施例提出利用各个硬件资源的当前剩余资源量确定云主机的目标节点,同时结合运行过程中的负载均衡,可以有效提高硬件资源的利用率。
对于上述实施例提供的云主机集群的负载均衡方法,本发明实施例还提供了一种云主机集群的负载均衡装置,该装置应用于控制服务器,控制服务器存储有多个物理主机的第一配置信息、多个云主机集群的第二配置信息和各个云主机集群的资源使用优先级,每个物理主机均包括多个硬件资源,云主机集群包括基于物理主机提供硬件资源搭建的多个云主机,所述第一配置信息包括各个所述物理主机中每个所述硬件资源的当前剩余资源量,所述第二配置信息包括所述目标云主机集群中每个云主机分别所需的硬件资源的目标资源占比和目标资源量,参见图3所示的一种云主机集群的负载均衡装置的结构示意图,该装置主要包括以下模块:
集群确定模块302,用于按照资源使用优先级从各个云主机集群中确定目标云主机集群。
节点确定模块304,用于基于第一配置信息和第二配置信息,从各个物理主机中确定目标云主机集群中每个云主机对应的目标节点,以通过目标节点为目标云主机集群提供目标资源量的硬件资源。
使用量监听模块306,用于监听目标云主机集群中每个硬件资源的实际使用量。
节点调整模块308,用于根据实际使用量调整目标云主机集群的目标节点,以对目标云主机集群进行负载均衡。
本发明实施例提供的上述云主机集群的负载均衡装置,基于预先存储的第一配置信息和第二配置信息确定目标云主机集群中每个云主机对应的目标节点,并基于云主机集群中每个硬件资源的实际使用量调整目标云主机集群的目标节点,从而较好地实现目标云主机集群的负载均衡,相较于现有的负载均衡方法容易存在资源抢占和资源浪费的情况,本发明实施例通过基于目标云主机集群中每个硬件资源的实际使用量实时对目标节点进行调整,从而较好地利用了目标节点提供的硬件资源,有效缓解了资源抢占和资源浪费等情况,进而有效提高了云主机负载均衡的合理性。
在一种实施方式中,上述节点确定模块304还用于:根据第二配置信息中每个硬件资源的目标资源占比的大小,确定目标云主机集群的主资源;从各个物理主机中选取包含有主资源的物理主机;根据选取的物理主机中主资源的当前剩余资源量的大小,确定目标云主机集群中每个云主机对应的目标节点。
在一种实施方式中,上述节点确定模块304还用于:从目标云主机集群中随机选取云主机;将选取的物理主机中与主资源的当前剩余资源量最大的物理主机,确定为选取的云主机对应的目标节点;计算选取的云主机对应的目标节点中主资源的当前剩余资源量,与选取的云主机中主资源的目标资源量之间的差值;基于差值更新选取的云主机对应的目标节点中主资源的当前剩余资源量;从目标云主机集群的其余云主机中随机选取下一云主机,将选取的物理主机中主资源的当前剩余资源量最大的物理主机,确定为选取的下一云主机对应的目标节点,直至确定目标云主机集群中每个云主机对应的目标节点。
在一种实施方式中,上述节点调整模块308还用于:针对每个目标节点,根据该目标节点对应的多个云主机中每个硬件资源的实际使用量和每个硬件资源的当前剩余资源量,计算该目标节点中每个硬件资源的资源使用率;如果该目标节点中硬件资源的资源使用率大于或等于硬件资源对应的预设阈值,根据每个物理主机中硬件资源的当前剩余资源量的大小,确定该目标节点对应的每个云主机待迁移的目标节点;将该目标节点对应的每个云主机迁移至该云主机待迁移的目标节点,以对目标云主机集群进行负载均衡。
在一种实施方式中,上述节点调整模块308还用于:计算该目标节点对应的多个云主机中每个硬件资源的实际使用量和该目标节点中每个硬件资源的标定资源量的比值,得到各个云主机中每个硬件资源的临时资源占比;针对每个云主机,对该云主机中每个硬件资源的临时资源占比进行归一化处理,得到该云主机每个硬件资源的实际资源占比;根据该目标节点对应的各个云主机中每个硬件资源的实际资源占比和目标资源量,计算该目标节点中各个硬件资源的资源使用率。
在一种实施方式中,上述装置还包括迁移模块,用于:如果云主机对应多个目标节点,基于云主机中每个硬件资源的目标资源量,计算将云主机迁移至各个物理主机后,各个物理主机中每个硬件资源的预估资源占比;针对每个硬件资源,如果物理主机中该硬件资源的预估资源占比小于该硬件资源对应的预设阈值,将云主机迁移至物理主机。
在一种实施方式中,上述硬件资源包括CPU资源、内存资源、FPU资源、FPGA资源、GPU资源和网络资源中的一种或多种。
本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本发明实施例提供了一种服务器,具体的,该服务器包括处理器和存储装置;存储装置上存储有计算机程序,计算机程序在被所述处理器运行时执行如上所述实施方式的任一项所述的方法。
图4为本发明实施例提供的一种服务器的结构示意图,该服务器100包括:处理器40,存储器41,总线42和通信接口43,所述处理器40、通信接口43和存储器41通过总线42连接;处理器40用于执行存储器41中存储的可执行模块,例如计算机程序。
其中,存储器41可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口43(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线42可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器41用于存储程序,所述处理器40在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器40中,或者由处理器40实现。
处理器40可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器40中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器40可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器41,处理器40读取存储器41中的信息,结合其硬件完成上述方法的步骤。
本发明实施例所提供的可读存储介质的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见前述方法实施例,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种云主机集群的负载均衡方法,其特征在于,应用于控制服务器,所述控制服务器存储有多个物理主机的第一配置信息、多个云主机集群的第二配置信息和各个所述云主机集群的资源使用优先级,每个所述物理主机均包括多个硬件资源,所述云主机集群包括基于所述物理主机提供所述硬件资源搭建的多个云主机,所述第一配置信息包括各个所述物理主机中每个所述硬件资源的当前剩余资源量,所述第二配置信息包括所述云主机集群中每个云主机分别所需的硬件资源的目标资源占比和目标资源量,所述目标资源占比是为所述云主机分配每个所述硬件资源的比例,所述方法包括:
按照所述资源使用优先级从各个所述云主机集群中确定目标云主机集群;
基于所述第一配置信息和所述第二配置信息,从各个所述物理主机中确定所述目标云主机集群中每个所述云主机对应的目标节点,以通过所述目标节点为所述目标云主机集群提供所述目标资源量的硬件资源;
监听所述目标云主机集群中每个所述硬件资源的实际使用量;
根据所述实际使用量调整所述目标云主机集群的所述目标节点,以对所述目标云主机集群进行负载均衡。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第一配置信息和所述第二配置信息,从各个所述物理主机中确定所述目标云主机集群中每个所述云主机对应的目标节点的步骤,包括:
根据所述第二配置信息中每个所述硬件资源的目标资源占比的大小,确定所述目标云主机集群的主资源;
从各个所述物理主机中选取包含有所述主资源的物理主机;
根据选取的物理主机中所述主资源的当前剩余资源量的大小,确定所述目标云主机集群中每个所述云主机对应的目标节点。
3.根据权利要求2所述的方法,其特征在于,所述根据选取的物理主机中所述主资源的当前剩余资源量的大小,确定所述目标云主机集群中每个所述云主机对应的目标节点的步骤,包括:
从所述目标云主机集群中随机选取云主机;
将选取的物理主机中与所述主资源的当前剩余资源量最大的物理主机,确定为选取的云主机对应的目标节点;
计算选取的云主机对应的目标节点中所述主资源的当前剩余资源量,与选取的云主机中所述主资源的目标资源量之间的差值;
基于所述差值更新选取的云主机对应的目标节点中所述主资源的当前剩余资源量;
从所述目标云主机集群的其余云主机中随机选取下一云主机,将选取的物理主机中所述主资源的当前剩余资源量最大的物理主机,确定为选取的下一云主机对应的目标节点,直至确定所述目标云主机集群中每个所述云主机对应的目标节点。
4.根据权利要求1所述的方法,其特征在于,所述根据所述实际使用量调整所述目标云主机集群的所述目标节点,以对所述目标云主机集群进行负载均衡的步骤,包括:
针对每个目标节点,根据该目标节点对应的多个云主机中每个所述硬件资源的实际使用量和每个所述硬件资源的当前剩余资源量,计算该目标节点中每个所述硬件资源的资源使用率;
如果该目标节点中所述硬件资源的资源使用率大于或等于所述硬件资源对应的预设阈值,根据每个所述物理主机中所述硬件资源的当前剩余资源量的大小,确定该目标节点对应的每个所述云主机待迁移的目标节点;
将该目标节点对应的每个云主机迁移至该云主机待迁移的目标节点,以对所述目标云主机集群进行负载均衡。
5.根据权利要求4所述的方法,其特征在于,所述根据该目标节点对应的多个云主机中每个所述硬件资源的实际使用量和每个所述硬件资源的当前剩余资源量,计算该目标节点中每个所述硬件资源的资源使用率的步骤,包括:
计算该目标节点对应的多个云主机中每个所述硬件资源的实际使用量和该目标节点中每个所述硬件资源的标定资源量的比值,得到各个所述云主机中每个所述硬件资源的临时资源占比;
针对每个云主机,对该云主机中每个所述硬件资源的临时资源占比进行归一化处理,得到该云主机每个所述硬件资源的实际资源占比;
根据该目标节点对应的各个所述云主机中每个所述硬件资源的实际资源占比和目标资源量,计算该目标节点中每个所述硬件资源的资源使用率。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果所述云主机对应多个目标节点,基于所述云主机中每个所述硬件资源的目标资源量,计算将所述云主机迁移至各个所述物理主机后,各个所述物理主机中每个所述硬件资源的预估资源占比;
针对每个硬件资源,如果所述物理主机中该硬件资源的预估资源占比小于该硬件资源对应的预设阈值,将所述云主机迁移至所述物理主机。
7.根据权利要求1所述的方法,其特征在于,所述硬件资源包括CPU资源、GPU资源、FPU资源、FPGA资源、内存资源和网络资源中的一种或多种。
8.一种云主机集群的负载均衡装置,其特征在于,应用于控制服务器,所述控制服务器存储有多个物理主机的第一配置信息、多个云主机集群的第二配置信息和各个所述云主机集群的资源使用优先级,每个所述物理主机均包括多个硬件资源,所述云主机集群包括基于所述物理主机提供所述硬件资源搭建的多个云主机,所述第一配置信息包括各个所述物理主机中每个所述硬件资源的当前剩余资源量,所述第二配置信息包括所述云主机集群中每个云主机分别所需的硬件资源的目标资源占比和目标资源量,所述目标资源占比是为所述云主机分配每个所述硬件资源的比例,所述装置包括:
集群确定模块,用于按照所述资源使用优先级从各个所述云主机集群中确定目标云主机集群;
节点确定模块,用于基于所述第一配置信息和所述第二配置信息,从各个所述物理主机中确定所述目标云主机集群中每个所述云主机对应的目标节点,以通过所述目标节点为所述目标云主机集群提供所述目标资源量的硬件资源;
使用量监听模块,用于监听所述目标云主机集群中每个所述硬件资源的实际使用量;
节点调整模块,用于根据所述实际使用量调整所述目标云主机集群的所述目标节点,以对所述目标云主机集群进行负载均衡。
9.一种服务器,其特征在于,包括处理器和存储器;
所述存储器上存储有计算机程序,所述计算机程序在被所述处理器运行时执行如权利要求1至7任一项所述的方法。
10.一种计算机存储介质,其特征在于,用于储存为权利要求1至7任一项所述方法所用的计算机软件指令。
CN202010417658.8A 2020-05-15 2020-05-15 云主机集群的负载均衡方法、装置及服务器 Active CN111614746B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010417658.8A CN111614746B (zh) 2020-05-15 2020-05-15 云主机集群的负载均衡方法、装置及服务器
PCT/CN2021/093112 WO2021228103A1 (zh) 2020-05-15 2021-05-11 云主机集群的负载均衡方法、装置及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010417658.8A CN111614746B (zh) 2020-05-15 2020-05-15 云主机集群的负载均衡方法、装置及服务器

Publications (2)

Publication Number Publication Date
CN111614746A CN111614746A (zh) 2020-09-01
CN111614746B true CN111614746B (zh) 2022-03-22

Family

ID=72196806

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010417658.8A Active CN111614746B (zh) 2020-05-15 2020-05-15 云主机集群的负载均衡方法、装置及服务器

Country Status (2)

Country Link
CN (1) CN111614746B (zh)
WO (1) WO2021228103A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111614746B (zh) * 2020-05-15 2022-03-22 北京金山云网络技术有限公司 云主机集群的负载均衡方法、装置及服务器
CN112437129B (zh) * 2020-11-10 2022-07-19 广州虎牙科技有限公司 集群的管理方法及集群的管理装置
CN113326099B (zh) * 2021-06-25 2022-08-05 深信服科技股份有限公司 资源管理方法、装置、电子设备和存储介质
CN113407355A (zh) * 2021-08-19 2021-09-17 苏州浪潮智能科技有限公司 一种集群中进程协作的方法、系统、设备和存储介质
CN114244848A (zh) * 2021-12-15 2022-03-25 中国电信股份有限公司 候选流媒体确定、负载均衡方法、装置、服务器及介质
CN114338696B (zh) * 2022-03-14 2022-07-15 北京奥星贝斯科技有限公司 用于分布式系统的方法及装置
CN115426251B (zh) * 2022-08-30 2024-02-13 山东海量信息技术研究院 一种云主机的容灾方法、装置及介质
CN115373507B (zh) * 2022-10-26 2023-01-06 北京品立科技有限责任公司 一种基于电能损耗的整机资源均衡管理方法及系统
CN116112497A (zh) * 2022-12-29 2023-05-12 天翼云科技有限公司 一种云主机集群的节点调度方法、装置、设备及介质
CN117194020B (zh) * 2023-09-04 2024-04-05 北京宝联之星科技股份有限公司 一种云计算的原始大数据处理方法、系统和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102262567A (zh) * 2010-05-24 2011-11-30 中兴通讯股份有限公司 虚拟机调度决策的系统、平台及方法
CN109962940A (zh) * 2017-12-14 2019-07-02 北京云基数技术有限公司 一种基于云平台的虚拟化实例调度系统及调度方法
CN110289983A (zh) * 2019-05-17 2019-09-27 平安科技(深圳)有限公司 负载均衡应用创建方法、装置、计算机设备及存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101696698B1 (ko) * 2011-12-23 2017-01-17 한국전자통신연구원 상호 의존 관계가 있는 컴포넌트 분배 및 관리 방법
CN102571986B (zh) * 2012-02-27 2014-05-21 浙江大学 一种基于向量映射的负载均衡方法
TW201409357A (zh) * 2012-08-31 2014-03-01 Hon Hai Prec Ind Co Ltd 虛擬機資源負載平衡系統及方法
US20150088588A1 (en) * 2013-09-25 2015-03-26 Sparta Systems, Inc. Systems and methods of supplier quality management
CN103605574A (zh) * 2013-11-18 2014-02-26 浪潮(北京)电子信息产业有限公司 一种服务器集群中的虚拟机资源调度方法及系统
CN104270416B (zh) * 2014-09-12 2018-03-13 杭州华为数字技术有限公司 负载均衡控制方法及管理节点
CN106506657A (zh) * 2016-11-21 2017-03-15 黑龙江省科学院自动化研究所 一种基于多目标的云计算虚拟机分配调整方法
CN107404523A (zh) * 2017-07-21 2017-11-28 中国石油大学(华东) 云平台自适应资源调度系统和方法
JP7003692B2 (ja) * 2018-01-30 2022-01-20 富士通株式会社 情報処理装置,情報処理システムおよび制御プログラム
CN109684074A (zh) * 2018-11-12 2019-04-26 平安科技(深圳)有限公司 物理机资源分配方法及终端设备
CN110865871A (zh) * 2019-11-14 2020-03-06 北京京航计算通讯研究所 基于资源合理化应用的虚拟化集群资源调度方法
CN111614746B (zh) * 2020-05-15 2022-03-22 北京金山云网络技术有限公司 云主机集群的负载均衡方法、装置及服务器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102262567A (zh) * 2010-05-24 2011-11-30 中兴通讯股份有限公司 虚拟机调度决策的系统、平台及方法
CN109962940A (zh) * 2017-12-14 2019-07-02 北京云基数技术有限公司 一种基于云平台的虚拟化实例调度系统及调度方法
CN110289983A (zh) * 2019-05-17 2019-09-27 平安科技(深圳)有限公司 负载均衡应用创建方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN111614746A (zh) 2020-09-01
WO2021228103A1 (zh) 2021-11-18

Similar Documents

Publication Publication Date Title
CN111614746B (zh) 云主机集群的负载均衡方法、装置及服务器
US8782657B2 (en) Dynamic creation and destruction of IO resources based on actual load and resource availability
EP3117335B1 (en) Coordinated admission control for network-accessible block storage
US20120221730A1 (en) Resource control system and resource control method
WO2018000991A1 (zh) 一种数据均衡方法和装置
WO2021121115A1 (zh) 一种虚拟机的numa节点调度方法、装置、设备及介质
EP3554009A1 (en) Method and device for service deployment
US20150172204A1 (en) Dynamically Change Cloud Environment Configurations Based on Moving Workloads
US20210149743A1 (en) Resource processing method of cloud platform, related device, and storage medium
US10660069B2 (en) Resource allocation device and resource allocation method
WO2015101091A1 (zh) 一种分布式资源调度方法及装置
CN109191287B (zh) 一种区块链智能合约的分片方法、装置及电子设备
CN108446179B (zh) 基于负载均衡机制的权重优先Task任务调度方法
WO2015001850A1 (ja) タスク割り当て判定装置、制御方法、及びプログラム
US10250673B1 (en) Storage workload management using redirected messages
CN105511964B (zh) I/o请求的处理方法和装置
CN106681839B (zh) 弹性计算动态分配方法
CN104283951A (zh) 一种实例迁移的方法、装置及系统
CN114625500A (zh) 云环境下拓扑感知的微服务应用调度的方法及应用
CN113342477A (zh) 一种容器组部署方法、装置、设备及存储介质
CN117195819A (zh) 一种布线资源优化的分割方法
WO2021078256A1 (zh) 一种虚拟机迁移方法及相关设备
US11928517B2 (en) Feature resource self-tuning and rebalancing
CN113886091A (zh) 虚拟机迁移方法、系统、设备及存储介质
CN115269110A (zh) 云计算平台的资源分配方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant