CN104917805A - 一种负载分担的方法和设备 - Google Patents
一种负载分担的方法和设备 Download PDFInfo
- Publication number
- CN104917805A CN104917805A CN201510018944.6A CN201510018944A CN104917805A CN 104917805 A CN104917805 A CN 104917805A CN 201510018944 A CN201510018944 A CN 201510018944A CN 104917805 A CN104917805 A CN 104917805A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- load
- robot arm
- virtual
- business
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种负载分担的方法和设备,该方法包括:负载调度器检测业务虚拟机组中的各虚拟机的负载信息;负载调度器利用所述负载信息调整业务虚拟机组中的虚拟机数量,并利用所述虚拟机数量确定在业务虚拟机组中添加虚拟机或者从业务虚拟机组中回收虚拟机;负载调度器利用负载均衡算法,在业务虚拟机组中的各虚拟机之间,对用户访问请求报文进行负载分担。本发明实施例中,当有大量用户访问业务时,可以增加提供该业务的虚拟机的数量来分担业务,以满足大量用户的访问需求;当访问该业务的用户数量减少时,可以减少提供该业务的虚拟机的数量,以回收虚拟机资源。
Description
技术领域
本发明涉及通信技术领域,尤其是涉及一种负载分担的方法和设备。
背景技术
随着数据中心业务日益增加,用户需求不断提高,数据中心的规模和功能日趋复杂,管理难度越来越高,因此,对数据中心资源进行虚拟化,成为目前数据中心整合的重要趋势。虚拟化技术通过对物理资源和提供的服务进行抽象化,让资源使用者和系统管理者不关心对象的物理特征和服务边界的细节,从而降低资源使用和管理的复杂度,提高使用效率。因而,对数据中心的虚拟化能够提高数据中心的资源利用率,并降低系统的能耗。进一步的,通过专用的虚拟化软件可以将一台物理服务器虚拟出多台虚拟机,每个虚拟机独立运行,互不影响,都有自己的操作系统、应用程序和硬件环境。
当虚拟机对外提供业务时,如果有大量用户需要访问该业务,则提供该业务的虚拟机将无法满足大量用户的访问需求。基于此,需要增加提供该业务的虚拟机的数量。但是,在现有技术中,并不知道是否应该增加提供该业务的虚拟机的数量,也不知道何时增加提供该业务的虚拟机的数量。
发明内容
本发明实施例提供一种负载分担的方法,业务虚拟机组内包括一个或者多个虚拟机,且业务虚拟机组内的虚拟机用于提供同一业务,所述方法包括:
负载调度器检测所述业务虚拟机组中的各虚拟机的负载信息;
所述负载调度器利用所述业务虚拟机组中的各虚拟机的负载信息调整所述业务虚拟机组中的虚拟机数量,并利用所述虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机或者从所述业务虚拟机组中回收虚拟机;
所述负载调度器利用负载均衡算法,在所述业务虚拟机组中的各虚拟机之间,对访问所述业务的用户访问请求报文进行负载分担。
所述负载调度器利用所述业务虚拟机组中的各虚拟机的负载信息调整所述业务虚拟机组中的虚拟机数量,并利用所述虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机或者从所述业务虚拟机组中回收虚拟机,具体包括:
所述负载调度器利用所述业务虚拟机组中的各虚拟机的负载信息计算所述业务虚拟机组的平均负载信息;当所述平均负载信息大于预设第一阈值时,则所述负载调度器增加所述业务虚拟机组中的虚拟机数量,并利用增加的虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机;当所述平均负载信息小于预设第二阈值时,则所述负载调度器减少所述业务虚拟机组中的虚拟机数量,并利用减少的虚拟机数量确定当前从所述业务虚拟机组中回收虚拟机;
其中,所述预设第一阈值大于所述预设第二阈值。
所述负载调度器利用负载均衡算法,在所述业务虚拟机组中的各虚拟机之间,对访问所述业务的用户访问请求报文进行负载分担的过程,具体包括:
针对所述负载调度器当前收到的访问所述业务的用户访问请求报文,所述负载调度器利用负载均衡算法从所述业务虚拟机组中的各虚拟机中选择虚拟机,并将所述用户访问请求报文发送给当前选择的虚拟机;和/或,
针对所述负载调度器已经选择了虚拟机但未发送给所述虚拟机的用户访问请求报文,所述负载调度器利用负载均衡算法从所述业务虚拟机组中的各虚拟机中选择虚拟机,并将所述用户访问请求报文发送给当前选择的虚拟机。
所述负载信息具体包括:中央处理器CPU利用率信息,和/或,内存利用率信息。进一步的,所述负载调度器包括Linux虚拟服务器LVS中的负载调度器,所述虚拟机包括所述LVS中的虚拟机。
本发明实施例提供一种负载调度器,业务虚拟机组内包括一个或者多个虚拟机,且业务虚拟机组内的虚拟机用于提供同一业务,所述负载调度器包括:检测模块,用于检测所述业务虚拟机组中的各虚拟机的负载信息;
处理模块,用于利用所述业务虚拟机组中的各虚拟机的负载信息调整所述业务虚拟机组中的虚拟机数量,并利用所述虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机或者从所述业务虚拟机组中回收虚拟机;
负载模块,用于利用负载均衡算法,在所述业务虚拟机组中的各虚拟机之间,对访问所述业务的用户访问请求报文进行负载分担。
所述处理模块,具体用于利用所述业务虚拟机组中的各虚拟机的负载信息计算所述业务虚拟机组的平均负载信息;当所述平均负载信息大于预设第一阈值时,则增加所述业务虚拟机组中的虚拟机数量,并利用增加的虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机;当所述平均负载信息小于预设第二阈值时,则减少所述业务虚拟机组中的虚拟机数量,并利用减少的虚拟机数量确定当前从所述业务虚拟机组中回收虚拟机;
其中,所述预设第一阈值大于所述预设第二阈值。
所述负载模块,具体用于针对所述负载调度器当前收到的访问所述业务的用户访问请求报文,利用负载均衡算法从所述业务虚拟机组中的各虚拟机中选择虚拟机,并将所述用户访问请求报文发送给当前选择的虚拟机;和/或,
针对所述负载调度器已经选择了虚拟机但未发送给所述虚拟机的用户访问请求报文,利用负载均衡算法从所述业务虚拟机组中的各虚拟机中选择虚拟机,并将所述用户访问请求报文发送给当前选择的虚拟机。
所述负载信息具体包括:中央处理器CPU利用率信息,和/或,内存利用率信息。进一步的,所述负载调度器包括Linux虚拟服务器LVS中的负载调度器,所述虚拟机包括所述LVS中的虚拟机。
基于上述技术方案,本发明实施例中,通过配置包括一个或者多个虚拟机的业务虚拟机组,并且业务虚拟机组内的虚拟机提供同一业务,负载调度器可以利用业务虚拟机组中的各虚拟机的负载信息调整业务虚拟机组中的虚拟机数量,从而当有大量用户需要访问该业务时,可以增加提供该业务的虚拟机的数量来分担业务,以满足大量用户的访问需求;当需要访问该业务的用户数量减少时,可以减少提供该业务的虚拟机的数量,以回收虚拟机资源。
附图说明
图1是本发明实施例中提出的用于实现DRX业务的系统架构示意图;
图2是本发明实施例中提出的LVS的组网应用场景示意图;
图3是本发明实施例提供的一种负载分担的方法流程示意图;
图4是本发明实施例提供的一种负载调度器的结构示意图。
具体实施方式
针对现有技术中存在的问题,本发明实施例提供了一种负载分担的方法,通过DRX(Dynamic Resource extension,动态资源扩展)业务,将同一个集群下的虚拟机添加到一个业务虚拟机组中。基于此,业务虚拟机组内包括一个或者多个虚拟机,且该业务虚拟机组内的虚拟机用于对外提供同一业务。
为了实现DRX业务,本发明实施例中提出了如图1所示的系统架构,该系统架构包括物理服务器池、虚拟化平台、资源动态调度模块和负载调度器。
(1)物理服务器池:由多台物理服务器组成,物理服务器池用于提供企业业务的服务器计算资源,具体的物理服务器的数量可以任意配置。
(2)虚拟化平台:虚拟化平台安装于物理服务器上,负责对物理服务器的硬件资源进行逻辑封装,可以将一台物理服务器虚拟化为多个逻辑的虚拟机,通过虚拟化平台,对虚拟机实现创建、克隆、开启、删除、停止等功能。
(3)资源动态调度模块:资源动态调度模块用于对物理服务器池内的物理服务器的负载进行监控;根据物理服务器的负载状况,资源动态调度模块与虚拟化平台联动,自动实现针对同一业务的物理服务器资源的扩展功能。
(4)负载调度器:负载调度器用于监控业务组的运行情况,监控业务组中所有虚拟机的运行状态和业务运行状况,按照策略将来自用户的业务请求报文分发到各虚拟机。负载调度器可定时与资源动态调度模块进行交互,获取资源动态调度模块的监控结果;或由资源动态调度模块进行推送,当资源动态调度模块发现自身监控的业务组中有虚拟机资源增加或减少时,将上述信息反馈给负载调度器。负载调度器与资源动态调度模块进行交互,获取资源动态调度模块的监控结果的方式,节省了对业务组进行定时监控的任务量。
进一步的,本发明实施例中,还可以将图1所示的系统架构应用在LVS(Linux Virtual Server,Linux虚拟服务器)上,即物理服务器池、虚拟化平台、资源动态调度模块和负载调度器均应用在LVS上。如图2所示,为LVS的组网示意图,本发明实施例中提出的负载分担的方法可以应用于LVS上。
本发明实施例中,通过LVS提供的负载均衡技术和Linux操作系统,可以实现高性能、高可用的服务器集群,具有良好的可靠性、可扩展性和可操作性。使用LVS的服务器集群系统具体包括:负载均衡层(Load Balancer),服务器群组层(Server Array),数据共享存储层(Shared Storage)。在用户看来,所有的内部应用都是透明的,用户只是在使用一个虚拟服务器提供的高性能服务。其中,负载均衡层位于集群系统的最前端,由一台或者多台负载调度器(Director Server)组成,负载调度器含有完成LVS功能所设定的路由表,通过这些路由表将用户的请求分发给服务器群组层的应用服务器(RealServer)。服务器群组层由实际运行的应用服务器组成,应用服务器可以是WEB(网页)服务器、MAIL(邮箱)服务器、FTP(File Transfer Protocol,文件传输协议)服务器、DNS(Domain Name System,域名系统)服务器、视频服务器等,每个应用服务器之间通过高速LAN(Local Area Network,局域网)或分布在各地的WAN(Wide Area Network,广域网)相连接。数据共享存储层是为所有应用服务器提供共享存储空间和内容一致性的存储区域。
本发明实施例中,在LVS上实现DRX业务时,需要在LVS上实现物理服务器池、虚拟化平台、资源动态调度模块和负载调度器等功能。在服务器群组层上,可以通过多个应用服务器实现图1所示的系统架构中的物理服务器池的功能;通过在应用服务器上安装虚拟化软件平台,可以在应用服务器上实现图1所示的系统架构中的虚拟化平台的功能;通过在应用服务器上配置资源动态调度模块,可以在应用服务器上实现图1所示的系统架构中的资源动态调度模块的功能。在负载均衡层上,可以通过一个或者多个负载调度器实现图1所示的系统架构中的负载调度器的功能。进一步的,可以在应用服务器上划分一个或者多个虚拟机,且将一个或者多个虚拟机添加到一个业务虚拟机组中,且该业务虚拟机组内的虚拟机用于对外提供相同的业务。例如,当应用服务器为WEB服务器时,在WEB服务器上划分多个用于对外提供网页业务的虚拟机,并将这多个虚拟机添加到一个业务虚拟机组中。当应用服务器为MAIL服务器时,在MAIL服务器上划分多个用于对外提供邮箱业务的虚拟机,并将这多个虚拟机添加到一个业务虚拟机组中。进一步的,在实际应用中,对外提供同一业务的应用服务器可以有多个,每个应用服务器上划分一个或者多个虚拟机,且这多个应用服务器组成应用服务器池。进一步的,为了在应用服务器上划分虚拟机,还可以在应用服务器上安装虚拟化软件平台,该虚拟化软件平台负责在应用服务器上划分一个或者多个虚拟机,并可以实现对虚拟机的创建、克隆、开启、删除、停止等功能。
在上述应用场景下,如图3所示,该负载分担的方法具体包括以下步骤:
步骤301,负载调度器检测业务虚拟机组中的各虚拟机的负载信息。其中,该负载信息具体包括但不限于:CPU(Central Processing Unit,中央处理器)利用率信息,和/或,内存利用率信息。该负载调度器具体可以为LVS中的负载调度器,如LVS的负载均衡层中的负载调度器;该虚拟机具体可以为LVS中的虚拟机,如LVS的服务器群组层中的应用服务器上划分的虚拟机。
例如,LVS的服务器群组层中包括应用服务器1和应用服务器2,应用服务器1和应用服务器2用于提供网页业务,业务虚拟机组中的虚拟机包括应用服务器1上的虚拟机1和虚拟机2,应用服务器2上的虚拟机3。本步骤中,负载调度器定时检测业务虚拟机组中的虚拟机1的CPU利用率信息、虚拟机2的CPU利用率信息、虚拟机3的CPU利用率信息,或者,检测虚拟机1的内存利用率信息、虚拟机2的内存利用率信息、虚拟机3的内存利用率信息。
本发明实施例中,为了定时检测业务虚拟机组中的各虚拟机的负载信息,可以在各应用服务器上部署资源动态调度模块,该资源动态调度模块用于监控应用服务器上的各虚拟机的负载信息。基于此,负载调度器可以定时向资源动态调度模块发送用于请求虚拟机的负载信息的请求消息,由资源动态调度模块在收到该请求消息后,通过响应消息将应用服务器上的各虚拟机的负载信息通知给负载调度器。或者,资源动态调度模块可以通过通知消息主动将应用服务器上的各虚拟机的负载信息通知给负载调度器。其中,在资源动态调度模块主动向负载调度器发送该通知消息时,资源动态调度模块可以在监控到应用服务器上的各虚拟机的负载信息发生变化时,主动通过通知消息将应用服务器上的各虚拟机的负载信息通知给负载调度器。
步骤302,负载调度器利用业务虚拟机组中的各虚拟机的负载信息调整该业务虚拟机组中的虚拟机数量,并利用该虚拟机数量确定当前在该业务虚拟机组中添加虚拟机或者从该业务虚拟机组中回收虚拟机。
本发明实施例中,负载调度器利用业务虚拟机组中的各虚拟机的负载信息调整该业务虚拟机组中的虚拟机数量,并利用该虚拟机数量确定当前在该业务虚拟机组中添加虚拟机或者从该业务虚拟机组中回收虚拟机的过程,具体包括但不限于:负载调度器利用业务虚拟机组中的各虚拟机的负载信息计算业务虚拟机组的平均负载信息;当平均负载信息大于预设第一阈值时,负载调度器增加业务虚拟机组中的虚拟机数量,利用增加的虚拟机数量确定当前在业务虚拟机组中添加虚拟机;当平均负载信息小于预设第二阈值时,负载调度器减少业务虚拟机组中的虚拟机数量,利用减少的虚拟机数量确定当前从业务虚拟机组中回收虚拟机。其中,预设第一阈值大于预设第二阈值。
其中,负载调度器在业务虚拟机组中增加的虚拟机数量可以根据实际需要进行配置,如预先配置增加2个虚拟机时,则在业务虚拟机组中增加的虚拟机数量为2;负载调度器确定当前在业务虚拟机组中添加虚拟机后,由应用服务器上的虚拟化软件平台在应用服务器上划分新的虚拟机,以使负载调度器可以将新划分的虚拟机添加到业务虚拟机组中。负载调度器在业务虚拟机组中减少的虚拟机数量可以根据实际需要进行配置,如预先配置减少2个虚拟机时,则在业务虚拟机组中减少的虚拟机数量为2;负载调度器确定当前从业务虚拟机组中回收虚拟机后,由应用服务器上的虚拟化软件平台在应用服务器上删除虚拟机,以使负载调度器可以从业务虚拟机组中回收虚拟机。
例如,当虚拟机1的CPU利用率信息为85%,虚拟机2的CPU利用率信息为80%,虚拟机3的CPU利用率信息为90%时,则业务虚拟机组的平均CPU利用率信息为85%。进一步的,假设预设第一阈值为80%,则负载调度器增加业务虚拟机组中的虚拟机数量,如由应用服务器2上的虚拟化软件平台在应用服务器2上划分虚拟机4,且负载调度器将虚拟机4添加到业务虚拟机组中,此时业务虚拟机组中包括虚拟机1、虚拟机2、虚拟机3和虚拟机4。
又例如,当虚拟机1的CPU利用率信息为25%,虚拟机2的CPU利用率信息为20%,虚拟机3的CPU利用率信息为30%时,则业务虚拟机组的平均CPU利用率信息为25%。进一步的,假设预设第二阈值为20%,则负载调度器需要减少业务虚拟机组中的虚拟机数量,如由应用服务器1上的虚拟化软件平台在应用服务器1上删除虚拟机2,基于此,负载调度器将从业务虚拟机组中回收虚拟机2,此时业务虚拟机组中包括虚拟机1、虚拟机3。
步骤303,负载调度器利用负载均衡算法,在业务虚拟机组中的各虚拟机之间,对访问业务的用户访问请求报文进行负载分担。
例如,当业务虚拟机组中包括虚拟机1、虚拟机2、虚拟机3和虚拟机4时,则在虚拟机1、虚拟机2、虚拟机3和虚拟机4之间对访问业务的用户访问请求报文进行负载分担;当业务虚拟机组中包括虚拟机1和虚拟机3时,则在虚拟机1和虚拟机3之间对访问业务的用户访问请求报文进行负载分担。
本发明实施例中,负载均衡算法包括但不限于基于客户端调度的负载均衡算法、基于应用层系统负载的负载均衡算法。当然,本发明实施例中并不局限于上述负载均衡算法,所有的负载均衡算法均在本发明保护范围之内。
本发明实施例中,负载调度器利用负载均衡算法,在业务虚拟机组中的各虚拟机之间,对访问业务的用户访问请求报文进行负载分担的过程,具体可以包括但不限于如下情况:情况一、针对负载调度器当前收到的访问业务的用户访问请求报文,该负载调度器利用负载均衡算法从业务虚拟机组中的各虚拟机中选择一个虚拟机,并将该用户访问请求报文发送给当前选择的虚拟机。和/或,情况二、针对已经选择了虚拟机但未发送给虚拟机的用户访问请求报文,该负载调度器利用负载均衡算法从业务虚拟机组中的各虚拟机中选择一个虚拟机,并将该用户访问请求报文发送给当前选择的虚拟机。
针对情况一、当用户的业务量增加时,业务虚拟机组中的各虚拟机的CPU使用率和内存使用率增高,业务虚拟机组中的所有虚拟机已经无法满足用户的访问需求,此时负载调度器在该业务虚拟机组中添加虚拟机,并利用添加虚拟机后的业务虚拟机组对用户访问请求报文进行负载分担。因此,当负载调度器在收到新的用户访问请求报文时,可以将该用户访问请求报文分配给新添加的虚拟机,从而达到分担业务的需求。当用户的业务量减少时,业务虚拟机组中的各虚拟机的CPU使用率和内存使用率降低,业务虚拟机组中的部分虚拟机即可以满足用户的访问需求,此时负载调度器从该业务虚拟机组中回收虚拟机,并利用回收虚拟机后的业务虚拟机组对用户访问请求报文进行负载分担。因此,当负载调度器在收到新的用户访问请求报文时,该用户访问请求报文不再分配给该回收的虚拟机,从而达到回收资源的目的。
针对情况二、负载调度器在为用户访问请求报文选择虚拟机之后,并不是立刻将该用户访问请求报文发送给该虚拟机,而是将该用户访问请求报文存储到该虚拟机对应的处理队列,并依据先入先出策略,依次将虚拟机对应的处理队列中的用户访问请求报文发送给该虚拟机。因此,针对已经选择了虚拟机但未发送给该虚拟机的用户访问请求报文,负载调度器还可以将该用户访问请求报文分配给其它虚拟机。基于此,当用户的业务量增加时,业务虚拟机组中的各虚拟机的CPU使用率和内存使用率增高,业务虚拟机组中的所有虚拟机已经无法满足用户的访问需求,此时负载调度器在该业务虚拟机组中添加虚拟机,并利用添加虚拟机后的业务虚拟机组对用户访问请求报文进行负载分担。因此,针对已经选择了虚拟机但未发送给该虚拟机的用户访问请求报文,负载调度器可以将该用户访问请求报文分配给新添加的虚拟机,从而达到分担业务的需求。当用户的业务量减少时,业务虚拟机组中的各虚拟机的CPU使用率和内存使用率降低,业务虚拟机组中的部分虚拟机即可以满足用户的访问需求,此时负载调度器从该业务虚拟机组中回收虚拟机,并利用回收虚拟机后的业务虚拟机组对用户访问请求报文进行负载分担。因此,针对已经选择了虚拟机但未发送给该虚拟机的用户访问请求报文,如果该虚拟机被选择为回收的虚拟机,则负载调度器不再将该用户访问请求报文分配给该回收的虚拟机,并重新分配虚拟机,从而达到回收资源的目的。
基于上述技术方案,本发明实施例中,通过配置包括一个或者多个虚拟机的业务虚拟机组,并且业务虚拟机组内的虚拟机提供同一业务,负载调度器可以利用业务虚拟机组中的各虚拟机的负载信息调整业务虚拟机组中的虚拟机数量,从而当有大量用户需要访问该业务时,可以增加提供该业务的虚拟机的数量来分担业务,以满足大量用户的访问需求;当需要访问该业务的用户数量减少时,可以减少提供该业务的虚拟机的数量,以回收虚拟机资源。
基于与上述方法同样的发明构思,本发明实施例中还提供了一种负载调度器,业务虚拟机组内包括一个或者多个虚拟机,且业务虚拟机组内的虚拟机用于提供同一业务,如图4所示,所述负载调度器包括:
检测模块11,用于检测所述业务虚拟机组中的各虚拟机的负载信息;
处理模块12,用于利用所述业务虚拟机组中的各虚拟机的负载信息调整所述业务虚拟机组中的虚拟机数量,并利用所述虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机或者从所述业务虚拟机组中回收虚拟机;
负载模块13,用于利用负载均衡算法,在所述业务虚拟机组中的各虚拟机之间,对访问所述业务的用户访问请求报文进行负载分担。
所述处理模块12,具体用于利用所述业务虚拟机组中的各虚拟机的负载信息计算所述业务虚拟机组的平均负载信息;当所述平均负载信息大于预设第一阈值时,则增加所述业务虚拟机组中的虚拟机数量,并利用增加的虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机;当所述平均负载信息小于预设第二阈值时,则减少所述业务虚拟机组中的虚拟机数量,并利用减少的虚拟机数量确定当前从所述业务虚拟机组中回收虚拟机;
其中,所述预设第一阈值大于所述预设第二阈值。
所述负载模块13,具体用于针对所述负载调度器当前收到的访问所述业务的用户访问请求报文,利用负载均衡算法从所述业务虚拟机组中的各虚拟机中选择虚拟机,并将所述用户访问请求报文发送给当前选择的虚拟机;和/或,针对所述负载调度器已经选择了虚拟机但未发送给所述虚拟机的用户访问请求报文,利用负载均衡算法从所述业务虚拟机组中的各虚拟机中选择虚拟机,并将所述用户访问请求报文发送给当前选择的虚拟机。
本发明实施例中,所述负载信息具体包括:中央处理器CPU利用率信息,和/或,内存利用率信息。进一步的,所述负载调度器具体包括Linux虚拟服务器LVS中的负载调度器,所述虚拟机具体包括LVS中的虚拟机。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (10)
1.一种负载分担的方法,其特征在于,业务虚拟机组内包括一个或者多个虚拟机,且业务虚拟机组内的虚拟机用于提供同一业务,所述方法包括:
负载调度器检测所述业务虚拟机组中的各虚拟机的负载信息;
所述负载调度器利用所述业务虚拟机组中的各虚拟机的负载信息调整所述业务虚拟机组中的虚拟机数量,并利用所述虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机或者从所述业务虚拟机组中回收虚拟机;
所述负载调度器利用负载均衡算法,在所述业务虚拟机组中的各虚拟机之间,对访问所述业务的用户访问请求报文进行负载分担。
2.如权利要求1所述的方法,其特征在于,所述负载调度器利用所述业务虚拟机组中的各虚拟机的负载信息调整所述业务虚拟机组中的虚拟机数量,并利用所述虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机或者从所述业务虚拟机组中回收虚拟机的过程,具体包括:
所述负载调度器利用所述业务虚拟机组中的各虚拟机的负载信息计算所述业务虚拟机组的平均负载信息;当所述平均负载信息大于预设第一阈值时,则所述负载调度器增加所述业务虚拟机组中的虚拟机数量,并利用增加的虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机;当所述平均负载信息小于预设第二阈值时,则所述负载调度器减少所述业务虚拟机组中的虚拟机数量,并利用减少的虚拟机数量确定当前从所述业务虚拟机组中回收虚拟机;
其中,所述预设第一阈值大于所述预设第二阈值。
3.如权利要求1或2所述的方法,其特征在于,
所述负载调度器利用负载均衡算法,在所述业务虚拟机组中的各虚拟机之间,对访问所述业务的用户访问请求报文进行负载分担的过程,具体包括:
针对所述负载调度器当前收到的访问所述业务的用户访问请求报文,所述负载调度器利用负载均衡算法从所述业务虚拟机组中的各虚拟机中选择虚拟机,并将所述用户访问请求报文发送给当前选择的虚拟机;和/或,
针对所述负载调度器已经选择了虚拟机但未发送给所述虚拟机的用户访问请求报文,所述负载调度器利用负载均衡算法从所述业务虚拟机组中的各虚拟机中选择虚拟机,并将所述用户访问请求报文发送给当前选择的虚拟机。
4.如权利要求1或2所述的方法,其特征在于,所述负载信息具体包括:中央处理器CPU利用率信息,和/或,内存利用率信息。
5.如权利要求1或2所述的方法,其特征在于,所述负载调度器包括Linux虚拟服务器LVS中的负载调度器,所述虚拟机包括所述LVS中的虚拟机。
6.一种负载调度器,其特征在于,业务虚拟机组内包括一个或者多个虚拟机,且业务虚拟机组内的虚拟机用于提供同一业务,所述负载调度器包括:
检测模块,用于检测所述业务虚拟机组中的各虚拟机的负载信息;
处理模块,用于利用所述业务虚拟机组中的各虚拟机的负载信息调整所述业务虚拟机组中的虚拟机数量,并利用所述虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机或者从所述业务虚拟机组中回收虚拟机;
负载模块,用于利用负载均衡算法,在所述业务虚拟机组中的各虚拟机之间,对访问所述业务的用户访问请求报文进行负载分担。
7.如权利要求6所述的负载调度器,其特征在于,
所述处理模块,具体用于利用所述业务虚拟机组中的各虚拟机的负载信息计算所述业务虚拟机组的平均负载信息;当所述平均负载信息大于预设第一阈值时,则增加所述业务虚拟机组中的虚拟机数量,并利用增加的虚拟机数量确定当前在所述业务虚拟机组中添加虚拟机;当所述平均负载信息小于预设第二阈值时,则减少所述业务虚拟机组中的虚拟机数量,并利用减少的虚拟机数量确定当前从所述业务虚拟机组中回收虚拟机;
其中,所述预设第一阈值大于所述预设第二阈值。
8.如权利要求6或7所述的负载调度器,其特征在于,
所述负载模块,具体用于针对所述负载调度器当前收到的访问所述业务的用户访问请求报文,利用负载均衡算法从所述业务虚拟机组中的各虚拟机中选择虚拟机,并将所述用户访问请求报文发送给当前选择的虚拟机;和/或,
针对所述负载调度器已经选择了虚拟机但未发送给所述虚拟机的用户访问请求报文,利用负载均衡算法从所述业务虚拟机组中的各虚拟机中选择虚拟机,并将所述用户访问请求报文发送给当前选择的虚拟机。
9.如权利要求6或7所述的负载调度器,其特征在于,所述负载信息具体包括:中央处理器CPU利用率信息,和/或,内存利用率信息。
10.如权利要求6或7所述的负载调度器,其特征在于,所述负载调度器为Linux虚拟服务器LVS中的负载调度器,所述虚拟机为LVS中的虚拟机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510018944.6A CN104917805A (zh) | 2015-01-14 | 2015-01-14 | 一种负载分担的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510018944.6A CN104917805A (zh) | 2015-01-14 | 2015-01-14 | 一种负载分担的方法和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104917805A true CN104917805A (zh) | 2015-09-16 |
Family
ID=54086504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510018944.6A Pending CN104917805A (zh) | 2015-01-14 | 2015-01-14 | 一种负载分担的方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104917805A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017114017A1 (zh) * | 2015-12-30 | 2017-07-06 | 华为技术有限公司 | 实现负载均衡的计算机设备、系统和方法 |
CN107015864A (zh) * | 2017-01-16 | 2017-08-04 | 平安银行股份有限公司 | 业务批量处理控制方法及装置 |
CN107222355A (zh) * | 2017-07-27 | 2017-09-29 | 郑州云海信息技术有限公司 | 一种服务器升级方法及装置 |
CN107341045A (zh) * | 2017-07-13 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种虚拟机调度管理方法及调度器 |
WO2018228216A1 (zh) * | 2017-06-12 | 2018-12-20 | 华为技术有限公司 | 一种虚拟机部署方法及omm虚拟机 |
CN109460301A (zh) * | 2018-09-07 | 2019-03-12 | 中南大学 | 一种流数据负载的弹性资源配置方法及系统 |
CN110324244A (zh) * | 2018-03-28 | 2019-10-11 | 北京华为数字技术有限公司 | 一种基于Linux虚拟服务器的路由方法及服务器 |
CN111262841A (zh) * | 2020-01-09 | 2020-06-09 | 武汉思普崚技术有限公司 | 一种虚拟微隔离网络的资源调度方法及系统 |
CN112367267A (zh) * | 2020-09-30 | 2021-02-12 | 新华三大数据技术有限公司 | 一种虚拟机管理方法及装置 |
CN112764879A (zh) * | 2021-01-14 | 2021-05-07 | 深圳市科思科技股份有限公司 | 负载均衡方法、电子设备及计算机可读存储介质 |
-
2015
- 2015-01-14 CN CN201510018944.6A patent/CN104917805A/zh active Pending
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017114017A1 (zh) * | 2015-12-30 | 2017-07-06 | 华为技术有限公司 | 实现负载均衡的计算机设备、系统和方法 |
US10171567B2 (en) | 2015-12-30 | 2019-01-01 | Huawei Technologies Co., Ltd. | Load balancing computer device, system, and method |
CN107015864A (zh) * | 2017-01-16 | 2017-08-04 | 平安银行股份有限公司 | 业务批量处理控制方法及装置 |
CN107015864B (zh) * | 2017-01-16 | 2018-03-20 | 平安银行股份有限公司 | 业务批量处理控制方法及装置 |
WO2018228216A1 (zh) * | 2017-06-12 | 2018-12-20 | 华为技术有限公司 | 一种虚拟机部署方法及omm虚拟机 |
US11556369B2 (en) | 2017-06-12 | 2023-01-17 | Huawei Technologies Co., Ltd. | Virtual machine deployment method and OMM virtual machine |
CN107341045A (zh) * | 2017-07-13 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种虚拟机调度管理方法及调度器 |
CN107222355A (zh) * | 2017-07-27 | 2017-09-29 | 郑州云海信息技术有限公司 | 一种服务器升级方法及装置 |
CN110324244A (zh) * | 2018-03-28 | 2019-10-11 | 北京华为数字技术有限公司 | 一种基于Linux虚拟服务器的路由方法及服务器 |
CN110324244B (zh) * | 2018-03-28 | 2021-09-14 | 北京华为数字技术有限公司 | 一种基于Linux虚拟服务器的路由方法及服务器 |
CN109460301B (zh) * | 2018-09-07 | 2022-06-24 | 中南大学 | 一种流数据负载的弹性资源配置方法及系统 |
CN109460301A (zh) * | 2018-09-07 | 2019-03-12 | 中南大学 | 一种流数据负载的弹性资源配置方法及系统 |
CN111262841A (zh) * | 2020-01-09 | 2020-06-09 | 武汉思普崚技术有限公司 | 一种虚拟微隔离网络的资源调度方法及系统 |
CN111262841B (zh) * | 2020-01-09 | 2022-05-03 | 武汉思普崚技术有限公司 | 一种虚拟微隔离网络的资源调度方法及系统 |
CN112367267A (zh) * | 2020-09-30 | 2021-02-12 | 新华三大数据技术有限公司 | 一种虚拟机管理方法及装置 |
CN112367267B (zh) * | 2020-09-30 | 2022-03-29 | 新华三大数据技术有限公司 | 一种虚拟机管理方法及装置 |
CN112764879A (zh) * | 2021-01-14 | 2021-05-07 | 深圳市科思科技股份有限公司 | 负载均衡方法、电子设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104917805A (zh) | 一种负载分担的方法和设备 | |
US10733029B2 (en) | Movement of services across clusters | |
CN107087019B (zh) | 一种基于端云协同计算架构的任务调度方法及装置 | |
Aslam et al. | Load balancing algorithms in cloud computing: A survey of modern techniques | |
CN103051564B (zh) | 资源动态调配的方法和装置 | |
US11231955B1 (en) | Dynamically reallocating memory in an on-demand code execution system | |
CN105159775A (zh) | 基于负载均衡器的云计算数据中心的管理系统和管理方法 | |
JP6881575B2 (ja) | 資源割当システム、管理装置、方法およびプログラム | |
CN104426694B (zh) | 一种调整虚拟机资源的方法和装置 | |
CN108900626B (zh) | 一种云环境下数据存储方法、装置及系统 | |
US20120233313A1 (en) | Shared scaling server system | |
CN112925607A (zh) | 一种系统扩缩容方法及装置、电子设备 | |
CN113821340A (zh) | 分布式系统的动态均衡方法、系统、终端及存储介质 | |
CN105592134B (zh) | 一种负载分担的方法和装置 | |
CN112463395A (zh) | 一种资源分配方法、装置、设备及可读存储介质 | |
Komarasamy et al. | A novel approach for Dynamic Load Balancing with effective Bin Packing and VM Reconfiguration in cloud | |
Choi et al. | An improvement on the weighted least-connection scheduling algorithm for load balancing in web cluster systems | |
CN110515728B (zh) | 服务器调度方法、装置、电子设备及机器可读存储介质 | |
CN114168312A (zh) | 一种分布式集群负载均衡方法、装置及存储介质 | |
CN109445931A (zh) | 一种大数据资源调度系统及方法 | |
CN115378885B (zh) | 超融合架构下的虚拟机业务网络带宽管理方法及装置 | |
WO2023077791A1 (zh) | 一种业务处理的方法、系统以及装置 | |
KR20130028554A (ko) | 메시지 버스를 이용한 대용량 분산 처리 장치 및 그 방법 | |
WO2022142515A1 (zh) | 管理实例的方法、装置以及云应用引擎 | |
CN115878309A (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150916 |