CN107645520A - 一种负载均衡方法、装置以及系统 - Google Patents
一种负载均衡方法、装置以及系统 Download PDFInfo
- Publication number
- CN107645520A CN107645520A CN201610579242.XA CN201610579242A CN107645520A CN 107645520 A CN107645520 A CN 107645520A CN 201610579242 A CN201610579242 A CN 201610579242A CN 107645520 A CN107645520 A CN 107645520A
- Authority
- CN
- China
- Prior art keywords
- load balancing
- information
- load
- group
- server
- 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.)
- Granted
Links
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开一种负载均衡方法、装置及系统。所述方法包括:获取服务器的属性信息以及系统资源使用情况信息,所述属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息;根据所述的属性信息更新所述负载均衡组对应的服务器的数量;根据所述的系统资源使用情况信息以及更新后的负载均衡组更新负载均衡组策略。利用本申请的实施方案,可将负载均衡的配置由静态配置转换成由后端真实服务器主动触发,将负载均衡组的配置由被动配置变成主动配置。
Description
技术领域
本申请涉及LB(Load Balance,负载均衡)技术领域,特别涉及一种负载均衡方法、装置以及系统。
背景技术
负载均衡就是将工作任务分摊到多个操作单元上去执行,从而共同完成工作任务。操作单元,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等。该技术建立在现有网络结构之上,它提供了一种廉价、有效、透明的方法以扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。
负载均衡设备的典型应用场景如图1所示,其组成为:负载均衡设备LB Device,是负责分发各种服务请求到多个服务器的设备;服务器Server,是负责响应和处理各种服务请求的服务器;服务器IP,是服务器的IP地址,供负载均衡设备分发服务请求时使用,其实现原理为:客户端将请求发送到服务器集群前端的负载均衡设备,负载均衡设备上的虚服务接收客户端请求,根据负载均衡策略选择真实的服务器,再通过网络地址转换,用真实服务器地址重写请求报文的目标地址后,将请求发送给选定的真实服务器。真实服务器的响应报文通过负载均衡设备时,报文的源地址被还原为负载均衡的地址,再返回给客户端,完成整个负载调度过程。
现有的负载均衡策略包括如下几种:
轮循均衡(Round Robin):每一次来自网络的请求轮流分配给内部中的服务器,从1至N然后重新开始。此种均衡算法适合于服务器组中的所有服务器都有相同的软硬件配置并且平均服务请求相对均衡的情况。
权重轮循均衡(Weighted Round Robin):根据服务器的不同处理能力,给每个服务器分配不同的权值,使其能够接受相应权值数的服务请求。例如:服务器A的权值被设计成1,B的权值是3,C的权值是6,则服务器A、B、C将分别接受到10%、30%、60%的服务请求。此种均衡算法能确保高性能的服务器得到更多的使用率,避免低性能的服务器负载过重。
随机均衡(Random):把来自网络的请求随机分配给内部中的多个服务器。
权重随机均衡(Weighted Random):此种均衡算法类似于权重轮循算法,不过在处理请求分担时是个随机选择的过程。
响应速度均衡(Response Time):负载均衡设备对内部各服务器发出一个探测请求(例如Ping),然后根据内部中各服务器对探测请求的最快响应时间来决定哪一台服务器来响应客户端的服务请求。此种均衡算法能较好的反映服务器的当前运行状态,但这最快响应时间仅仅指的是负载均衡设备与服务器间的最快响应时间,而不是客户端与服务器间的最快响应时间。
最少连接数均衡(Least Connection):客户端的每一次请求服务在服务器停留的时间可能会有较大的差异,随着工作时间加长,如果采用简单的轮循或随机均衡算法,每一台服务器上的连接进程可能会产生极大的不同,并没有达到真正的负载均衡。最少连接数均衡算法对内部中需负载的每一台服务器都有一个数据记录,记录当前该服务器正在处理的连接数量,当有新的服务连接请求时,将把当前请求分配给连接数最少的服务器,使均衡更加符合实际情况,负载更加均衡。此种均衡算法适合长时处理的请求服务,如FTP。
DNS响应均衡(Flash DNS):在Internet上,无论是HTTP、FTP或是其它的服务请求,客户端一般都是通过域名解析来找到服务器确切的IP地址的。在此均衡算法下,分处在不同地理位置的负载均衡设备收到同一个客户端的域名解析请求,并在同一时间内把此域名解析成各自相对应服务器的IP地址(即与此负载均衡设备在同一位地理位置的服务器的IP地址)并返回给客户端,则客户端将以最先收到的域名解析IP地址来继续请求服务,而忽略其它的IP地址响应。在种均衡策略适合应用在全局负载均衡的情况下,对本地负载均衡是没有意义的。
现有的负载均衡方案存在如下技术缺陷:
1、服务器无法得到精确调度。
在现有的负载均衡策略下,通常会要求负载均衡设备后端的服务器需要有大致相同的配置(即处理能力必须大致相当)。否则,除权重轮循均衡外,可能会出现较弱服务器无法承担负载的问题。另外权重负载只能凭借经验估计权重,无法精确判定服务器的处理性能,也无法做到精准的负载均衡。
2、服务器无法动态扩容和缩容。
当发现服务器容量不足或者过剩,无法只是简单的增减服务器。需要在调整服务器数量的同时还要配置负载均衡设备。
针对现有负载均衡方案存在的上述技术缺陷,目前尚未提出有效的解决方案。
发明内容
为了解决现有技术中的负载均衡方案存在的服务器无法得到精确调度的技术问题,本申请提供了一种负载均衡方法、装置以及系统,负载均衡设备可以按照服务器的运行参数进行业务级负载均衡,实现了一种新的负载均衡技术,将负载均衡的配置由静态配置转换成由后端真实服务器主动触发,将负载均衡组的配置由被动配置变成主动配置。
本申请提供一种负载均衡方法、装置及系统是这样实现的:
一种主动式自动负载均衡系统,包括客户端、与所述客户端通过IP网络相连接的负载均衡设备、与所述负载均衡设备相连接的服务器,所述的系统还包括一负载均衡动态调整装置,所述的负载均衡动态调整装置包括与所述服务器相连接的负载均衡客户端以及与所述负载均衡设备相连接的负载均衡服务端,
其中,所述的负载均衡客户端,用于收集服务器的系统资源使用情况信息以及属性信息,并将所述的系统资源使用情况信息以及所述的属性信息发送至所述的负载均衡服务端,所述的属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息;
所述的负载均衡服务端,用于接收系统资源使用情况信息以及属性信息,根据所述的属性信息更新所述负载均衡组对应的服务器的数量,根据所述的成员以及所述的系统资源使用情况信息更新负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备。
一种负载均衡动态调整装置,包括负载均衡客户端以及负载均衡服务端,其中,所述的负载均衡客户端,用于收集服务器的系统资源使用情况信息以及属性信息,并将所述的系统资源使用情况信息以及所述的属性信息发送至所述的负载均衡服务端,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息,所述的属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息;
所述的负载均衡服务端,与所述的负载均衡客户端相连接,用于接收系统资源使用情况信息以及属性信息,根据所述的属性信息更新所述负载均衡组对应的服务器的数量,根据所述的成员以及所述的系统资源使用情况信息配置负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备。
一种负载均衡服务端,用于接收系统资源使用情况信息以及属性信息,根据所述的属性信息更新所述负载均衡组对应的服务器的数量,根据所述的成员以及所述的系统资源使用情况信息配置负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息,所述的属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息。一种负载均衡组的调整方法,包括:获取服务器的属性信息,所述服务器是可为一负载均衡组对应的负载均衡设备提供服务的服务器,所述属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息;根据所述的属性信息更新所述负载均衡组对应的服务器的数量。
一种负载均衡方法,包括:获取服务器的属性信息以及系统资源使用情况信息,所述服务器是可为一负载均衡组对应的负载均衡设备提供服务的服务器,所述属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息;根据所述的属性信息更新所述负载均衡组对应的服务器的数量;根据所述的系统资源使用情况信息以及更新后的负载均衡组配置负载均衡组策略。
由以上本申请实施例提供的技术方案可见,本申请提供的负载均衡方法、装置及系统,由负载均衡客户端采集服务器的系统资源使用情况信息以及服务器属性信息,负载均衡服务端根据系统资源使用情况信息、服务器属性信息以及外部干预信息更新负载均衡组策略,将更新后的负载均衡组策略发送给负载均衡设备,如此实现了一种新的负载均衡技术,将负载均衡的配置由静态配置转换成由后端真实服务器主动触发,将负载均衡组的配置由被动配置变成主动配置。
当然实施本申请的任一产品或者方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术中的负载均衡设备的典型应用场景示意图;
图2是本申请的负载均衡客户端的结构示意图;
图3是本申请提出的负载均衡服务端的结构示意图;
图4是本申请提出的一负载均衡动态调整装置的结构示意图;
图5是本申请提出的负载均衡系统的结构示意图;
图6是本申请的一种负载均衡方法的流程图;
图7是图6中的步骤102的实施方式一的流程图;
图8是图7的应用场景示意图;
图9是图6中的步骤102的实施方式二的流程图;
图10是图9的应用场景示意图;
图11是图6中的步骤102的实施方式三的流程图;
图12是图11的应用场景示意图;
图13是本申请提出的一种负载均衡组的成员的调整方法的流程图;
图14是本申请提出的一种负载均衡系统的交互图;
图15是负载均衡组的示意图;
图16是图6中的步骤103的实施方式一的流程图;
图17是图6中的步骤103的实施方式二的流程图。
具体实施方式
定义:在本申请中,
权重,其含义为后端服务器负载均衡比例的一种控制值,是调节负载均衡策略的一种手段,可以通过配置不同的负载均衡权重比来控制负载均衡的策略。
负载均衡组Load balance Group,其包括负载均衡设备上的一个IP、一个端口和后端为这个端口提供服务的一台或多台服务器,其中,负载均衡设备上的该IP和该端口称为该端口的负载均衡服务,后端一台或者多台服务器称为该负载均衡组的成员。以图15为例,负载均衡设备对外提供服务的IP为1.1.1.1,有两个端口80、90,因此该负载均衡设备两个负载均衡组,分别为80负载均衡组和90负载均衡组,1.1.1.1和端口80加上图15中的2台服务器为80端口的负载均衡组,其中,80负载均衡组的成员分别为服务器A和服务器B,90负载均衡组成员为服务器C。一个LB Device上可以有多个IP和多个端口。
负载均衡,其含义为将工作任务分摊到多个操作单元上去执行,从而共同完成工作任务。操作单元,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等。
系统资源使用情况信息,包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息。
服务器属性信息包括对外服务IP地址、对外服务端口信息以及负载均衡组信息,或服务器属性信息包括对外服务IP地址以及负载均衡组信息。
本申请实施例提供一种负载均衡方法、装置及系统。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本申请提供一种主动式自动负载均衡系统。图5是主动式自动负载均衡系统的结构示意图,图14是本申请提出的一种负载均衡系统的整体交互图,由图5、图14所示,所述主动式自动负载均衡系统包括客户端100、与所述客户端通过IP网络相连接的负载均衡设备200、与所述负载均衡设备相连接的服务器300以及一负载均衡动态调整装置400,该负载均衡动态调整装置400可以包括与所述服务器相连接的负载均衡客户端10以及与所述负载均衡设备相连接的负载均衡服务端20。
负载均衡客户端10可以作为服务器3的一部分进行工作(即将负载均衡客户端设置在服务器上,作为服务器的一部分),与服务器300一一对应,用于收集服务器的系统资源使用情况信息以及属性信息,并将所述的系统资源使用情况信息以及所述的属性信息发送至所述的负载均衡服务端,所述的属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息;
负载均衡服务端20可以作为负载均衡设备200的一部分进行工作(即将负载均衡服务端设置在负载均衡设备上,作为负载均衡设备的一部分),与负载均衡设备200相对应,用于接收系统资源使用情况信息以及属性信息,根据所述的属性信息更新所述负载均衡组对应的服务器的数量,根据所述的成员以及所述的系统资源使用情况信息更新负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备。
在本发明的其他实施方式中,还可通过负载均衡服务端20获取外部干预信息,然后根据所述的成员、所述的外部干预信息以及所述的系统资源使用情况信息更新负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备
负载均衡动态调整装置400与负载均衡设备200、多个后台服务器300进行交互,负载均衡设备可以按照服务器处理性能等运行参数进行业务级负载均衡,实现一种新的负载均衡技术,将负载均衡的配置由静态配置转换成由后端真实服务器主动触发,将负载均衡组的配置由被动配置变成主动配置。
本申请提供一种负载均衡动态调整装置。图4是该负载均衡动态调整装置的结构示意图,如图4所示,所述负载均衡动态调整装置可以包括负载均衡客户端10以及负载均衡服务端20。
其中,所述的负载均衡客户端,用于收集服务器的系统资源使用情况信息以及属性信息,并将所述的系统资源使用情况信息以及所述的属性信息发送至所述的负载均衡服务端,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息,所述的属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息;
所述的负载均衡服务端,与所述的负载均衡客户端相连接,用于接收系统资源使用情况信息以及属性信息,根据所述的属性信息更新所述负载均衡组对应的服务器的数量,根据所述的成员以及所述的系统资源使用情况信息配置负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备。
在本发明的其他实施方式中,还可通过负载均衡服务端20获取外部干预信息,然后根据所述的成员、所述的外部干预信息以及所述的系统资源使用情况信息更新负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备
负载均衡客户端10可以作为服务器的一部分进行工作,与服务器一一对应。负载均衡服务端20作为负载均衡设备的一部分进行工作,与负载均衡设备相对应。负载均衡动态调整装置与负载均衡设备、多个后台服务器进行交互,从而将负载均衡的配置由静态配置转换成由后端真实服务器主动触发,将负载均衡组的配置由被动配置变成主动配置。
图2是本申请提供的一种负载均衡动态调整装置中的负载均衡客户端的结构示意图,如图2所示,所述负载均衡客户端10包括系统信息采集模块11以及服务器信息发送模块12。
其中,所述的系统信息采集模块11,用于收集服务器的系统资源使用情况信息以及服务器属性信息。系统信息采集模块11是负载均衡客户端中收集服务器的相关信息的部分,可以是软件、硬件或二者的结合,例如可以是完成服务器的信息采集功能的接口、处理芯片等元器件。
所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息,所述的属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息。
所述的服务器信息发送模块12,用于发送所述的系统资源使用情况信息以及所述的服务器属性信息。服务器信息发送模块12是负载均衡客户端中定期发送信息的部分,可以是软件、硬件或二者的结合,例如可以是完成信息发送的接口、处理芯片等元器件。
本实施例的一种负载均衡动态调整装置中的负载均衡客户端,可以收集与其相连接的服务器的系统资源使用情况信息以及服务器属性信息,并输出,为将负载均衡的配置由静态配置转换成由后端真实服务器主动触发,将负载均衡组的配置由被动配置变成主动配置提供了数据支持。
图3是本申请提出的一种负载均衡动态调整装置中的负载均衡服务端的结构示意图,如图3所示,所述的负载均衡服务端20用于接收系统资源使用情况信息以及属性信息,根据所述的属性信息更新所述负载均衡组对应的服务器的数量,根据所述的成员以及所述的系统资源使用情况信息配置负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息,所述的属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息。
在本发明的其他实施方式中,还可通过负载均衡服务端20获取外部干预信息,然后根据所述的成员、所述的外部干预信息以及所述的系统资源使用情况信息更新负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备
由图3可知,所述的负载均衡服务端20包括负载均衡信息接收模块21、负载均衡调节模块22、负载均衡信息管理模块23、负载均衡决策模块24以及负载均衡执行模块25。图8为负载均衡服务端的第一种应用场景(即负载均衡组成员稳定无变化)示意图,由图3结合图8可知:
所述的负载均衡信息接收模块21,用于接收系统资源使用情况信息以及服务器属性信息。负载均衡信息接收模块21是负载均衡服务端中接收信息的部分,可以是软件、硬件或二者的结合,例如可以是完成接收相关信息的接口、处理芯片等元器件。
均衡负载信息管理模块23,用于根据所述的负载均衡组信息查找负载均衡组,当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略,当查找到负载均衡组策略时,将所述的系统资源使用情况信息进行保存。均衡负载信息管理模块23是负载均衡服务端中确定负载均衡成员稳定无变化的部分,可以是软件、硬件或二者的结合,例如可以是完成确定负载均衡成员稳定无变化的接口、处理芯片等元器件。
负载均衡调节模块22,用于获取预先设定的负载均衡控制周期,获取外部干预信息。负载均衡调节模块22是负载均衡服务端中获取控制周期以及干预信息的部分,可以是软件、硬件或二者的结合,例如可以是完成获取控制周期以及干预信息的接口、处理芯片等元器件。
负载均衡决策模块24,用于当到达所述的负载均衡控制周期时,根据所述的系统资源使用情况信息以及外部干预信息确定更新的负载均衡组策略,并将更新的负载均衡组策略通过所述的负载均衡执行模块25下发给负载均衡设备。负载均衡决策模块24是负载均衡服务端中确定更新的负载均衡组策略的部分,可以是软件、硬件或二者的结合,例如可以是完成更新负载均衡组策略的接口、处理芯片等元器件。
负载均衡执行模块25是负载均衡服务端中将更新的负载均衡组策略下发给负载均衡设备的部分,可以是软件、硬件或二者的结合,例如可以是完成将更新的负载均衡组策略下发给负载均衡设备的接口、处理芯片等元器件。
在负载均衡服务端的第一种应用场景(即负载均衡组成员稳定无变化)下,负载均衡组存在,因此只需将负载均衡客户端发送过来的相关信息进行记录,保存到负载均衡管理模块即可。
由图3可知,所述的负载均衡服务端20包括负载均衡信息接收模块21、负载均衡调节模块22、负载均衡信息管理模块23、负载均衡决策模块24以及负载均衡执行模块25。图10为负载均衡服务端的第二种应用场景(即负载均衡组无变化,成员有增减)示意图,由图3结合图10可知:
所述的负载均衡信息接收模块21,用于接收系统资源使用情况信息以及服务器属性信息。负载均衡信息接收模块21是负载均衡服务端中接收信息的部分,可以是软件、硬件或二者的结合,例如可以是完成接收相关信息的接口、处理芯片等元器件。
均衡负载信息管理模块23,用于根据所述的负载均衡组信息查找负载均衡组,当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略,当未查找到负载均衡组策略时,根据所述的系统资源使用情况信息设置所述的服务器的负载均衡组属性,将设置后的服务器加入所述的负载均衡组。均衡负载信息管理模块23是负载均衡服务端中确定负载均衡成员稳定无变化、但成员有增减的部分,可以是软件、硬件或二者的结合,例如可以是完成确定负载均衡成员稳定无变化、但成员有增减的接口、处理芯片等元器件。
负载均衡调节模块22,用于获取预先设定的负载均衡控制周期,获取外部干预信息。所述的外部干预因素包括权重、新用户负载开关状态。负载均衡调节模块22是负载均衡服务端中获取控制周期以及干预信息的部分,可以是软件、硬件或二者的结合,例如可以是完成获取控制周期以及干预信息的接口、处理芯片等元器件。
负载均衡决策模块24,用于当到达所述的负载均衡控制周期时,根据所述的系统资源使用情况信息以及外部干预信息确定更新的负载均衡组策略,并将更新的负载均衡组策略通过所述的负载均衡执行模块25下发给负载均衡设备。负载均衡决策模块24是负载均衡服务端中确定更新的负载均衡组策略的部分,可以是软件、硬件或二者的结合,例如可以是完成更新负载均衡组策略的接口、处理芯片等元器件。
负载均衡执行模块25是负载均衡服务端中将更新的负载均衡组策略下发给负载均衡设备的部分,可以是软件、硬件或二者的结合,例如可以是完成将更新的负载均衡组策略下发给负载均衡设备的接口、处理芯片等元器件。
在负载均衡服务端的第二种应用场景(即负载均衡成员有增减)下,负载均衡组存在,但是该服务器信息不存在,则需要将该服务器加入到现有的负载均衡组当中。当然,在加入之前,需要按照服务器系统信息设置相应的负载均衡属性。
负载均衡组成员退出的流程与上述加入的流程类似,此处不再赘述。触发条件为负载均衡服务端在一定时间内,持续不能收到负载均衡客户端发送来的系统资源信息,则认为该服务端已经离线。
由图3可知,所述的负载均衡服务端20包括负载均衡信息接收模块21、负载均衡调节模块22、负载均衡信息管理模块23、负载均衡决策模块24以及负载均衡执行模块25。图12为负载均衡服务端的第二种应用场景(即负载均衡组不存在)示意图,由图3结合图12可知:
所述的负载均衡信息接收模块21,用于接收系统资源使用情况信息以及服务器属性信息。负载均衡信息接收模块21是负载均衡服务端中接收信息的部分,可以是软件、硬件或二者的结合,例如可以是完成接收相关信息的接口、处理芯片等元器件。
均衡负载信息管理模块23,用于根据所述的负载均衡组信息查找负载均衡组,当未查找到负载均衡组时,根据所述的对外服务IP地址、对外服务端口信息创建负载均衡组,根据所述的系统资源使用情况信息生成负载均衡组策略,将所述的负载均衡组策略加入至所述的负载均衡组。均衡负载信息管理模块23是负载均衡服务端中负载均衡组不存在的部分,可以是软件、硬件或二者的结合,例如可以是完成负载均衡组不存在的接口、处理芯片等元器件。
负载均衡调节模块22,用于获取预先设定的负载均衡控制周期,获取外部干预信息。所述的外部干预因素包括权重、新用户负载开关状态。负载均衡调节模块22是负载均衡服务端中获取控制周期以及干预信息的部分,可以是软件、硬件或二者的结合,例如可以是完成获取控制周期以及干预信息的接口、处理芯片等元器件。
负载均衡决策模块24,用于当到达所述的负载均衡控制周期时,根据所述的系统资源使用情况信息以及外部干预信息确定负载均衡组策略,并将所述的负载均衡组策略通过所述的负载均衡执行模块25下发给负载均衡设备。负载均衡决策模块24是负载均衡服务端中确定负载均衡组策略的部分,可以是软件、硬件或二者的结合,例如可以是完成更新负载均衡组策略的接口、处理芯片等元器件。
负载均衡执行模块25是负载均衡服务端中将所述的负载均衡组策略下发给负载均衡设备的部分,可以是软件、硬件或二者的结合,例如可以是完成将更新的负载均衡组策略下发给负载均衡设备的接口、处理芯片等元器件。
在负载均衡服务端的第三种应用场景(即负载均衡组不存在)下,则首先要按照IP、端口和服务器创建负载均衡组,其次要根据负载均衡客户端发送来的系统资源信息进行负载均衡策略配置,最后将负载均衡组配置信息下发给负载均衡设备,完成负载均衡组的建立。
本实施例提供的负载均衡服务端,通过接收由负载均衡客户端收集的服务器的系统资源使用情况信息以及服务器属性信息,并获取外部干预信息,根据所述的系统资源使用情况信息、服务器属性信息以及外部干预信息更新负载均衡组策略(包括三种应用场景),将更新后的负载均衡组策略发送给负载均衡设备,实现了一种新的负载均衡技术,即按照服务器的处理性能等运行参数进行业务级负载均衡,将负载均衡的配置由静态配置转换成由后端真实服务器主动触发,将负载均衡组的配置由被动配置变成主动配置。
基于与上述负载均衡系统相同的发明构思,本申请还提出一种负载均衡组的调整方法,主要用于调整负载均衡组的成员,即在均衡组对应的服务器的数量。图13是负载均衡组的成员的调整方法的流程图,如图13所示,本申请提供的方法包括:
步骤501,获取服务器的属性信息,所述属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息,所述服务器是可为一负载均衡组对应的负载均衡设备提供服务的服务器。
步骤502,根据所述的属性信息更新所述负载均衡组对应的服务器的数量。
在具体的实施方式中,该方法的上述步骤可由负载均衡服务端执行。由负载均衡客户端收集服务器的系统资源使用情况信息以及服务器属性信息,负载均衡服务端根据属性信息更新一负载均衡组的成员,如此为后续负载均衡服务端根据系统资源使用情况信息为更新后的负载均衡组的成员配置负载均衡组策略提供了支持。
本申请的负载均衡组的成员的调整方法中的步骤502包括三种不同的应用场景,下面结合附图分别介绍不同的应用场景。
图7是步骤502的实施方式一的流程图,图8是图7的应用场景(即第一种应用场景)示意图,由图7、图8可知,在第一种应用场景(即负载均衡组成员稳定无变化)中,步骤502包括:
步骤201,根据所述的负载均衡组信息查找负载均衡组;
步骤202,当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略;
步骤203,当查找到负载均衡组策略时,所述负载均衡组的成员保持不变。
在负载均衡组的成员的调整方法的第一种应用场景(即负载均衡组成员稳定无变化)下,负载均衡组存在,因此负载均衡组的成员保持不变。
图9是步骤502的实施方式二的流程图,图10是图9的应用场景(即第二种应用场景)示意图,由图9、图10可知,在第二种应用场景(即负载均衡组策略不存在)中,步骤502包括:
步骤301,根据所述的负载均衡组信息查找负载均衡组;
步骤302,当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略;
步骤303,当未查找到负载均衡组策略时,获取所述服务器的系统资源使用情况信息,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息;
步骤304,根据所述的系统资源使用情况信息设置所述服务器的负载均衡组属性;
步骤305,将设置后的服务器加入所述的负载均衡组,成为所述负载均衡组的成员。
在负载均衡组成员的调整方法的第二种应用场景(即负载均衡成员有增减)下,负载均衡组存在,但是该服务器信息不存在,则需要将该服务器加入到现有的负载均衡组当中。当然,在加入之前,需要按照服务器系统信息设置相应的负载均衡属性。
负载均衡组成员退出的流程与上述加入的流程类似,此处不再赘述。触发条件为负载均衡服务端在一定时间内,持续不能收到负载均衡客户端发送来的系统资源信息,则认为该服务端已经离线。
图11是步骤502的实施方式三的流程图,图12是图11的应用场景(即第三种应用场景)示意图,由图11、图12可知,在第三种应用场景(即负载均衡组不存在)中,步骤502包括:
步骤401,根据所述的负载均衡组信息查找负载均衡组;
步骤402,当未查找到负载均衡组时,根据所述的对外服务IP地址、对外服务端口信息创建负载均衡组,所述的服务器即为所述负载均衡组的成员。
在负载均衡组成员调整方法的第三种应用场景(即负载均衡组不存在)下,则要按照IP、端口和服务器创建负载均衡组。
本实施例提供的负载均衡组成员调整方法,由负载均衡客户端采集服务器的系统资源使用情况信息以及服务器属性信息,负载均衡服务端根据属性信息更新一负载均衡组的成员。
基于与上述负载均衡系统相同的发明构思,本申请还提出一种负载均衡方法。图6是负载均衡方法的流程图,如图6所示,本申请提供的负载均衡方法包括:
步骤101,获取服务器的属性信息以及系统资源使用情况信息,所述属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息。
步骤102,根据所述的属性信息更新所述负载均衡组对应的服务器的数量;
步骤103,根据所述的系统资源使用情况信息以及所述负载均衡组的成员更新负载均衡组策略。
在具体的实施方式中,该方法的上述步骤可由负载均衡服务端执行。一般情况下,一个负载均衡服务端对应一个负载均衡设备。
本实施例提供的负载均衡方法,由负载均衡客户端收集服务器的系统资源使用情况信息以及服务器属性信息,负载均衡服务端根据属性信息更新一负载均衡组的成员,根据系统资源使用情况信息以及所述负载均衡组的成员更新负载均衡组策略,将更新后的负载均衡组策略发送给负载均衡设备,如此实现了一种新的负载均衡技术,将负载均衡的配置由静态配置转换成由后端真实服务器主动触发,将负载均衡组的配置由被动配置变成主动配置。
本申请的负载均衡方法中的步骤102包括三种不同的应用场景,下面结合附图分别介绍不同的应用场景。
图7是步骤102的实施方式一的流程图,图8是图7的应用场景(即第一种应用场景)示意图,由图7、图8可知,在第一种应用场景(即负载均衡组成员稳定无变化)中,步骤102包括:
步骤201,根据所述的负载均衡组信息查找负载均衡组;
步骤202,当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略;
步骤203,当查找到负载均衡组策略时,所述负载均衡组的成员保持不变。
在负载均衡组的成员的调整方法的第一种应用场景(即负载均衡组成员稳定无变化)下,负载均衡组存在,因此负载均衡组的成员保持不变。
图9是步骤102的实施方式二的流程图,图10是图9的应用场景(即第二种应用场景)示意图,由图9、图10可知,在第二种应用场景(即负载均衡组策略不存在)中,步骤102包括:
步骤301,根据所述的负载均衡组信息查找负载均衡组;
步骤302,当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略;
步骤303,当未查找到负载均衡组策略时,获取所述服务器的系统资源使用情况信息,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息;
步骤304,根据所述的系统资源使用情况信息设置所述服务器的负载均衡组属性;
步骤305,将设置后的服务器加入所述的负载均衡组,成为所述负载均衡组的成员。
在负载均衡组成员的调整方法的第二种应用场景(即负载均衡成员有增减)下,负载均衡组存在,但是该服务器信息不存在,则需要将该服务器加入到现有的负载均衡组当中。当然,在加入之前,需要按照服务器系统信息设置相应的负载均衡属性。
负载均衡组成员退出的流程与上述加入的流程类似,此处不再赘述。触发条件为负载均衡服务端在一定时间内,持续不能收到负载均衡客户端发送来的系统资源信息,则认为该服务端已经离线。
图11是步骤102的实施方式三的流程图,图12是图11的应用场景(即第三种应用场景)示意图,由图11、图12可知,在第三种应用场景(即负载均衡组不存在)中,步骤102包括:
步骤401,根据所述的负载均衡组信息查找负载均衡组;
步骤402,当未查找到负载均衡组时,根据所述的对外服务IP地址、对外服务端口信息创建负载均衡组,所述的服务器即为所述负载均衡组的成员。
在负载均衡组成员调整方法的第三种应用场景(即负载均衡组不存在)下,则要按照IP、端口和服务器创建负载均衡组。
图16是步骤103的实施方式一的流程图,由图16可知,在实施方式一中,该步骤具体包括:
步骤601,根据所述的CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息确定所述服务器的负载数值;
步骤602,根据所述的负载数值确定所述服务器的权重信息;
步骤603,根据所述负载均衡组的成员以及所述的权重信息配置负载均衡组策略。
具体的,步骤102已经更新了负载均衡组的成员,此时根据负载均衡组中各个成员服务器的CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息可以折算出各个服务器的负载数值,以图15为例,80负载均衡组包括服务器A、服务器B,可以分别折算出服务器A、服务器B的负载数值,诸如为30、70,然后把每个服务器的负载数值按照比例计算对应的权重信息,即确定服务器A、服务器B各自占用的百分比,如计算可得服务器A的百分比为30%,服务器B为70%,则服务器A的权重信息为0.3,服务器B的权重信息为0.7,后续皆可根据负载均衡组的成员以及权重信息配置负载均衡组策略。
图17是步骤103的实施方式二的流程图,由图17可知,在实施方式二中,该步骤具体包括:
步骤701,获取外部干预信息;
步骤702,根据所述的CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息确定所述服务器的负载数值;
步骤703,根据所述的负载数值确定所述服务器的权重信息;
步骤704,根据所述的权重信息以及所述的外部干预信息确定所述服务器的权重;
步骤705,根据所述负载均衡组的成员以及所述的权重配置负载均衡组策略。
具体的,步骤102已经更新了负载均衡组的成员,此时根据负载均衡组中各个成员服务器的CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息可以折算出各个服务器的负载数值,以图15为例,80负载均衡组包括服务器A、服务器B,可以分别折算出服务器A、服务器B的负载数值,诸如为30、70,然后把每个服务器的负载数值按照比例计算对应的权重信息,即确定服务器A、服务器B各自占用的百分比,如计算可得服务器A的百分比为30%,服务器B为70%,则服务器A的权重信息为0.3,服务器B的权重信息为0.7,假设外部干预信息服务器A为50,服务器B为50,则最终服务器A的权重为(50+30)/2=0.4,服务器B的权重为(50+70)/2=0.6,后续皆可根据负载均衡组的成员以及权重配置负载均衡组策略,并配置到负载均衡设备上。
本实施例提供的负载均衡方法,由负载均衡客户端采集服务器的系统资源使用情况信息以及服务器属性信息,负载均衡服务端根据系统资源使用情况信息、服务器属性信息以及外部干预信息更新负载均衡组策略,将更新后的负载均衡组策略发送给负载均衡设备,如此实现了一种新的负载均衡技术。
通过上述本申请实施例中的方法、装置及系统,可以将负载均衡的配置由静态配置转换成由后端真实服务器主动触发,将负载均衡组的配置由被动配置变成主动配置。
对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(ProgrammableLogic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片2。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(HardwareDescription Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(AdvancedBoolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(JavaHardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby HardwareDescription Language)等,目前最普遍使用的是VHDL(Very-High-Speed IntegratedCircuit Hardware Description Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。
Claims (16)
1.一种主动式自动负载均衡系统,包括客户端、与所述客户端通过IP网络相连接的负载均衡设备、与所述负载均衡设备相连接的服务器,其特征是,所述的系统还包括一负载均衡动态调整装置,所述的负载均衡动态调整装置包括与所述服务器相连接的负载均衡客户端以及与所述负载均衡设备相连接的负载均衡服务端,
其中,所述的负载均衡客户端,用于收集服务器的系统资源使用情况信息以及属性信息,并将所述的系统资源使用情况信息以及所述的属性信息发送至所述的负载均衡服务端,所述的属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息;
所述的负载均衡服务端,用于接收系统资源使用情况信息以及属性信息,根据所述的属性信息更新所述负载均衡组对应的服务器的数量,根据更新后的负载均衡组以及所述的系统资源使用情况信息配置负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备。
2.一种负载均衡动态调整装置,其特征是,所述的负载均衡动态调整装置包括负载均衡客户端以及负载均衡服务端,
其中,所述的负载均衡客户端,用于收集服务器的系统资源使用情况信息以及属性信息,并将所述的系统资源使用情况信息以及所述的属性信息发送至所述的负载均衡服务端,所述服务器是可为一负载均衡组对应的负载均衡设备提供服务的服务器,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息,所述的属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息;
所述的负载均衡服务端,与所述的负载均衡客户端相连接,用于接收系统资源使用情况信息以及属性信息,根据所述的属性信息更新所述负载均衡组对应的服务器的数量,根据更新后的负载均衡组以及所述的系统资源使用情况信息配置负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备。
3.一种负载均衡服务端,其特征是,所述的负载均衡服务端用于接收系统资源使用情况信息以及属性信息,根据所述的属性信息更新所述负载均衡组对应的服务器的数量,根据更新后的负载均衡组以及所述的系统资源使用情况信息配置负载均衡组策略,将所述的负载均衡组策略发送给负载均衡设备,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息,所述的属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息。
4.根据权利要求3所述的负载均衡服务端,其特征是,所述的负载均衡服务端包括负载均衡信息接收模块、负载均衡调节模块、负载均衡信息管理模块、负载均衡决策模块以及负载均衡执行模块,
其中,所述的负载均衡信息接收模块,用于接收系统资源使用情况信息以及属性信息;
均衡负载信息管理模块,用于根据所述的负载均衡组信息查找负载均衡组,当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略,当查找到负载均衡组策略时,将所述的系统资源使用情况信息进行保存;
负载均衡调节模块,用于获取预先设定的负载均衡控制周期,获取外部干预信息;
负载均衡决策模块,用于当到达所述的负载均衡控制周期时,根据所述的系统资源使用情况信息以及外部干预信息配置负载均衡组策略,并将所述的负载均衡组策略通过所述的负载均衡执行模块下发给负载均衡设备。
5.根据权利要求3所述的负载均衡服务端,其特征是,所述的负载均衡服务端包括负载均衡信息接收模块、负载均衡调节模块、负载均衡信息管理模块、负载均衡决策模块以及负载均衡执行模块,
其中,所述的负载均衡信息接收模块,用于接收系统资源使用情况信息以及属性信息;
均衡负载信息管理模块,用于根据所述的负载均衡组信息查找负载均衡组,当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略,当未查找到负载均衡组策略时,根据所述的系统资源使用情况信息设置所述的服务器的负载均衡组属性,将设置后的服务器加入所述的负载均衡组;
负载均衡调节模块,用于获取预先设定的负载均衡控制周期,获取外部干预信息;
负载均衡决策模块,用于当到达所述的负载均衡控制周期时,根据所述的系统资源使用情况信息以及外部干预信息配置负载均衡组策略,并将所述的负载均衡组策略通过所述的负载均衡执行模块下发给负载均衡设备。
6.根据权利要求3所述的负载均衡服务端,其特征是,所述的负载均衡服务端包括负载均衡信息接收模块、负载均衡调节模块、负载均衡信息管理模块、负载均衡决策模块以及负载均衡执行模块,
其中,所述的负载均衡信息接收模块,用于接收系统资源使用情况信息以及属性信息;
均衡负载信息管理模块,用于根据所述的负载均衡组信息查找负载均衡组,当未查找到负载均衡组时,根据所述的对外服务IP地址、对外服务端口信息创建负载均衡组;
负载均衡调节模块,用于获取预先设定的负载均衡控制周期,获取外部干预信息;
负载均衡决策模块,用于当到达所述的负载均衡控制周期时,根据所述的系统资源使用情况信息以及外部干预信息配置负载均衡组策略,并将所述的负载均衡组策略通过所述的负载均衡执行模块下发给负载均衡设备。
7.一种负载均衡组的调整方法,其特征是,所述的方法包括:
获取服务器的属性信息,所述服务器是可为一负载均衡组对应的负载均衡设备提供服务的服务器,所述属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息;
根据所述的属性信息更新所述负载均衡组对应的服务器的数量。
8.根据权利要求7所述的方法,其特征是,根据所述的属性信息更新所述负载均衡组对应的服务器的数量包括:
根据所述的负载均衡组信息查找负载均衡组;
当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略;
当查找到负载均衡组策略时,保持所述负载均衡组对应的服务器的数量不变。
9.根据权利要求7所述的方法,其特征是,根据所述的属性信息更新所述负载均衡组对应的服务器的数量包括:
根据所述的负载均衡组信息查找负载均衡组;
当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略;
当未查找到负载均衡组策略时,获取所述服务器的系统资源使用情况信息,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息;
根据所述的系统资源使用情况信息设置所述服务器的负载均衡组属性;
将设置后的服务器加入所述负载均衡组对应的服务器。
10.根据权利要求7所述的方法,其特征是,根据所述的属性信息更新所述负载均衡组对应的服务器的数量包括:
根据所述的负载均衡组信息查找负载均衡组;
当未查找到负载均衡组时,根据所述的对外服务IP地址、对外服务端口信息创建负载均衡组,所述的服务器即为所述负载均衡组对应的服务器。
11.一种负载均衡方法,其特征是,所述的方法包括:
获取服务器的属性信息以及系统资源使用情况信息,所述服务器是可为一负载均衡组对应的负载均衡设备提供服务的服务器,所述属性信息包括负载均衡组信息和对外服务IP地址,或所述属性信息包括负载均衡组信息、对外服务IP地址和对外服务端口信息,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息;
根据所述的属性信息更新所述负载均衡组对应的服务器的数量;
根据所述的系统资源使用情况信息以及更新后的负载均衡组配置负载均衡组策略。
12.根据权利要求11所述的方法,其特征是,根据所述的属性信息更新所述负载均衡组对应的服务器的数量包括:
根据所述的负载均衡组信息查找负载均衡组;
当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略;
当查找到负载均衡组策略时,所述负载均衡组对应的服务器的数量保持不变。
13.根据权利要求11所述的方法,其特征是,根据所述的属性信息更新所述负载均衡组对应的服务器的数量包括:
根据所述的负载均衡组信息查找负载均衡组;
当查找到负载均衡组时,根据所述的对外服务IP地址在所述的负载均衡组里查找负载均衡组策略;
当未查找到负载均衡组策略时,获取所述服务器的系统资源使用情况信息,所述的系统资源使用情况信息包括CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息;
根据所述的系统资源使用情况信息设置所述服务器的负载均衡组属性;
将设置后的服务器加入所述负载均衡组对应的服务器。
14.根据权利要求11所述的方法,其特征是,根据所述的属性信息更新所述负载均衡组对应的服务器的数量包括:
根据所述的负载均衡组信息查找负载均衡组;
当未查找到负载均衡组时,根据所述的对外服务IP地址、对外服务端口信息创建负载均衡组,所述的服务器即为所述负载均衡组对应的服务器。
15.根据权利要求12至14任意一项所述的方法,其特征是,根据所述的系统资源使用情况信息以及更新后的负载均衡组配置负载均衡组策略包括:
根据所述的CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息确定所述服务器的负载数值;
根据所述的负载数值确定所述服务器的权重信息;
根据更新后的负载均衡组以及所述的权重信息配置负载均衡组策略。
16.根据权利要求12至14任意一项所述的方法,其特征是,根据所述的系统资源使用情况信息以及更新后的负载均衡组配置负载均衡组策略包括:
获取外部干预信息;
根据所述的CPU使用情况信息、内存使用情况信息、IO情况信息、软中断情况信息以及网卡带宽情况信息确定所述服务器的负载数值;
根据所述的负载数值确定所述服务器的权重信息;
根据所述的权重信息以及所述的外部干预信息确定所述服务器的权重;
根据更新后的负载均衡组以及所述的权重配置负载均衡组策略。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610579242.XA CN107645520B (zh) | 2016-07-21 | 2016-07-21 | 一种负载均衡方法、装置以及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610579242.XA CN107645520B (zh) | 2016-07-21 | 2016-07-21 | 一种负载均衡方法、装置以及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107645520A true CN107645520A (zh) | 2018-01-30 |
CN107645520B CN107645520B (zh) | 2020-12-04 |
Family
ID=61108769
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610579242.XA Active CN107645520B (zh) | 2016-07-21 | 2016-07-21 | 一种负载均衡方法、装置以及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107645520B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881509A (zh) * | 2018-05-31 | 2018-11-23 | 网宿科技股份有限公司 | 一种基于httpdns的dns查询方法及装置 |
CN109618002A (zh) * | 2019-01-11 | 2019-04-12 | 武汉斗鱼鱼乐网络科技有限公司 | 一种微服务网关优化方法、装置及存储介质 |
CN110149395A (zh) * | 2019-05-20 | 2019-08-20 | 华南理工大学 | 一种基于海量小文件高并发情况下动态负载均衡方法 |
CN110855741A (zh) * | 2019-09-29 | 2020-02-28 | 北京奇艺世纪科技有限公司 | 业务的自适应接入方法和装置、存储介质、电子装置 |
CN111064998A (zh) * | 2019-12-27 | 2020-04-24 | 南京巨鲨显示科技有限公司 | 一种支持负载均衡的录播系统 |
CN112333273A (zh) * | 2020-11-06 | 2021-02-05 | 杭州迪普科技股份有限公司 | 一种访问请求的转发方法及系统 |
CN114553780A (zh) * | 2020-11-11 | 2022-05-27 | 北京华为数字技术有限公司 | 负载均衡的方法、装置以及网卡 |
WO2024125022A1 (zh) * | 2022-12-12 | 2024-06-20 | 华为云计算技术有限公司 | 流量调度方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009059456A1 (en) * | 2007-11-06 | 2009-05-14 | Lucent Technologies Inc. | Method for controlling load balance of network system, client, server and network system |
CN102611735A (zh) * | 2011-12-21 | 2012-07-25 | 奇智软件(北京)有限公司 | 一种应用服务的负载均衡方法及系统 |
CN103973728A (zh) * | 2013-01-25 | 2014-08-06 | 杭州华三通信技术有限公司 | 一种多数据中心环境下负载均衡的方法及装置 |
CN105592134A (zh) * | 2015-08-26 | 2016-05-18 | 杭州华三通信技术有限公司 | 一种负载分担的方法和装置 |
-
2016
- 2016-07-21 CN CN201610579242.XA patent/CN107645520B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009059456A1 (en) * | 2007-11-06 | 2009-05-14 | Lucent Technologies Inc. | Method for controlling load balance of network system, client, server and network system |
CN102611735A (zh) * | 2011-12-21 | 2012-07-25 | 奇智软件(北京)有限公司 | 一种应用服务的负载均衡方法及系统 |
CN103973728A (zh) * | 2013-01-25 | 2014-08-06 | 杭州华三通信技术有限公司 | 一种多数据中心环境下负载均衡的方法及装置 |
CN105592134A (zh) * | 2015-08-26 | 2016-05-18 | 杭州华三通信技术有限公司 | 一种负载分担的方法和装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881509A (zh) * | 2018-05-31 | 2018-11-23 | 网宿科技股份有限公司 | 一种基于httpdns的dns查询方法及装置 |
CN109618002A (zh) * | 2019-01-11 | 2019-04-12 | 武汉斗鱼鱼乐网络科技有限公司 | 一种微服务网关优化方法、装置及存储介质 |
CN109618002B (zh) * | 2019-01-11 | 2022-07-05 | 武汉斗鱼鱼乐网络科技有限公司 | 一种微服务网关优化方法、装置及存储介质 |
CN110149395A (zh) * | 2019-05-20 | 2019-08-20 | 华南理工大学 | 一种基于海量小文件高并发情况下动态负载均衡方法 |
CN110855741A (zh) * | 2019-09-29 | 2020-02-28 | 北京奇艺世纪科技有限公司 | 业务的自适应接入方法和装置、存储介质、电子装置 |
CN110855741B (zh) * | 2019-09-29 | 2022-01-11 | 北京奇艺世纪科技有限公司 | 业务的自适应接入方法和装置、存储介质、电子装置 |
CN111064998A (zh) * | 2019-12-27 | 2020-04-24 | 南京巨鲨显示科技有限公司 | 一种支持负载均衡的录播系统 |
CN112333273A (zh) * | 2020-11-06 | 2021-02-05 | 杭州迪普科技股份有限公司 | 一种访问请求的转发方法及系统 |
CN112333273B (zh) * | 2020-11-06 | 2023-03-14 | 杭州迪普科技股份有限公司 | 一种访问请求的转发方法及系统 |
CN114553780A (zh) * | 2020-11-11 | 2022-05-27 | 北京华为数字技术有限公司 | 负载均衡的方法、装置以及网卡 |
WO2024125022A1 (zh) * | 2022-12-12 | 2024-06-20 | 华为云计算技术有限公司 | 流量调度方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107645520B (zh) | 2020-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107645520A (zh) | 一种负载均衡方法、装置以及系统 | |
CN107196869B (zh) | 基于主机实际负载的自适应负载均衡方法、设备和系统 | |
US20190319881A1 (en) | Traffic management based on past traffic arrival patterns | |
US20240259327A1 (en) | Software load balancer to maximize utilization | |
CN106233276B (zh) | 网络可访问块存储装置的协调准入控制 | |
US10044797B2 (en) | Load balancing of distributed services | |
US11336718B2 (en) | Usage-based server load balancing | |
CN102035737A (zh) | 一种基于认知网络的自适应负载均衡方法和装置 | |
Javadpour | Improving resources management in network virtualization by utilizing a software-based network | |
CN107800768A (zh) | 开放平台控制方法和系统 | |
CN109600447A (zh) | 用于处理数据的方法、装置和系统 | |
US11005925B2 (en) | Load balancing with power of random choices | |
CN110519395A (zh) | 服务请求处理方法、装置、计算机设备及存储介质 | |
CN113014611B (zh) | 一种负载均衡方法及相关设备 | |
EP4170491A1 (en) | Resource scheduling method and apparatus, electronic device, and computer-readable storage medium | |
US10986172B2 (en) | Configurable connection reset for customized load balancing | |
CN108900626A (zh) | 一种云环境下数据存储方法、装置及系统 | |
CN110233866A (zh) | 一种负载均衡方法及负载均衡器 | |
JP4265377B2 (ja) | 負荷分散方法及び装置とシステム並びにプログラム | |
CN116909735A (zh) | 算力调度方法及装置、服务器和存储介质 | |
CN108900314A (zh) | 一种网络加速服务的请求数计费方法和装置 | |
Nguyen et al. | Modeling multi-constrained fog-cloud environment for task scheduling problem | |
CN104219325A (zh) | 一种soa负载均衡装置及应用该装置的路由算法 | |
CN112561301A (zh) | 工单分配方法、装置、设备和计算机可读介质 | |
US10616318B1 (en) | Load balancer employing slow start, weighted round robin target selection |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1250290 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |