负载均衡的方法、设备和系统的利记博彩app

文档序号:7758684阅读:138来源:国知局
专利名称:负载均衡的方法、设备和系统的利记博彩app
技术领域
本发明涉及计算机技术领域,特别涉及一种负载均衡的方法、设备和系统。
背景技术
服务器集群系统将多个服务器集中起来为客户端提供服务。服务器集群系统服务 的客户端包括网络接入服务器(Network Access Server,以下简称NAQ设备,分组数据服 务节点(Packet Data Serving Node,以下简称PDSN),以及网关通用分组无线服务技术支 持节点(Gateway GPRS Support Node,以下简称GGSN)等网络路由设备。服务器集群对外共用同一个虚拟IP地址,在外部客户端看来,就相当于是一 台服务器为其提供服务。为避免各服务器承担的负载不均衡,需要采用负载均衡器 (LoadBalance,以下简称LB)对服务器集群进行负载的均衡处理。现有技术的服务器集群系统,由负载均衡器节点加上若干个服务器节点组成,负 载均衡器节点根据各服务器节点的负载状态进行负载均衡处理。客户端的业务流发送到负 载均衡器节点上后,负载均衡器节点计算出负载最小的服务器节点,并将业务流转发到该 服务器节点上进行处理,由此实现负载均衡。当业务量超过负载均衡器节点的最大处理能力时,通常需要增加新的负载均衡器 节点分担均衡处理业务流的工作。在增加负载均衡器节点时,新增的负载均衡器节点单独 对外提供一个虚拟IP地址进行业务流的均衡处理,将原负载均衡器节点的某些业务流路 由到新增的负载均衡器节点的虚拟IP地址上,由该负载均衡器节点分担均衡处理业务流 的工作。服务器集群系统配备了多个负载均衡器节点时,各负载均衡器节点之间彼此独立 工作,当负载均衡器节点出现故障需要更换时,需要中断该负载均衡器节点上处理的业务。发明人发现,现有技术中的服务器集群系统中,当存在多个负载均衡器节点时,各 负载均衡器节点彼此独立工作,无法对多个负载均衡器节点进行有效的管理,可能会导致 各负载均衡器节点的负载不均衡,影响了所有负载均衡器节点整体的负载均衡性能。

发明内容
本发明提供了一种负载均衡的方法、设备和系统,以实现在使用多个负载均衡器 节点对业务请求进行均衡处理时,提高负载均衡器节点整体的均衡性能。本发明实施例提供了一种负载均衡的方法,包括获取客户端发送的地址解析协议ARP请求;选取负载均衡器集群中满足预设负载条件的负载均衡器节点,并获取所述满足预 设负载条件的负载均衡器节点的介质访问控制MAC地址;向所述客户端发送ARP应答信息,所述ARP应答信息中包括所述满足预设负载条 件的负载均衡器节点的MAC地址,以使得所述客户端收到所述ARP应答信息后将业务请求 发送到所述满足预设负载条件的负载均衡器节点上进行均衡处理。本发明实施例还提供了一种负载均衡管理器,包括
第一获取模块,用于获取客户端发送的地址解析协议ARP请求;第二获取模块,用于选取负载均衡器集群中满足预设负载条件的负载均衡器节 点,并获取所述满足预设负载条件的负载均衡器节点的介质访问控制MAC地址;发送模块,用于向所述客户端发送ARP应答信息,所述ARP应答信息中包括所述满 足预设负载条件的负载均衡器节点的MAC地址,以使得所述客户端收到所述ARP应答信息 后将业务请求发送到所述满足预设负载条件的负载均衡器节点上进行均衡处理。本发明实施例还提供了一种负载均衡系统,包括上述的负载均衡管理器,还包括 负载均衡器集群,所述负载均衡器集群至少包括两个负载均衡器节点;所述负载均衡器节点,用于在接收到所述客户端发送的业务请求后,对所述业务 请求进行均衡处理。本发明通过获取客户端发送的ARP请求,并根据ARP请求为客户端选择满足预设 负载条件的负载均衡器节点进行业务均衡处理,实现了对负载均衡器集群的有效管理,提 高了负载均衡器集群整体的均衡处理效果。


图Ia为本发明第一实施例提供的负载均衡的方法流程图;图Ib为本发明第一实施例提供的负载均衡方法的应用场景示意图。图2为本发明第二实施例提供的负载均衡的方法流程图;图3为本发明第三实施例提供的负载均衡的方法流程图;图4为本发明第四实施例提供的LBM的结构示意图5为本发明第五实施例提供的负载均衡系统的结构示意图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。参见图Ia为本发明第一实施例提供的负载均衡的方法流程图,本实施例负载 均衡方法的执行主体可以为负载均衡管理器(LoadBalance Manager,以下简称LBM),在 客户端向服务器集群进行业务请求时,通过获取客户端发送的地址解析协议(Address Resolution Protocol,以下简称ARP)请求,采用ARP替换的方式,向客户端返回满足预设 负载条件的负载均衡器节点的介质访问控制(Media Access Control,以下简称MAC)地址, 由该负载均衡器节点对客户端的业务请求进行均衡处理,即选择负载较小的服务器为客户 端提供服务。其中,满足预设负载条件的负载均衡器为负载较小的负载均衡器,该负载均 衡器可以为负载均衡器集群中负载最小的负载均衡器节点,或负载均衡器集群中当前负载 与额定负载比值小于预设阀值的负载均衡器节点,预设阀值可以根据具体应用环境进行设 置,如可为70%。该方法包括以下步骤步骤11、获取客户端发送的ARP请求。客户端在向服务器集群进行业务请求时,先发送ARP请求以获取为自身的业务请
6求进行均衡处理的负载均衡器节点,由该负载均衡器节点为客户端选择出为其服务的服务 器,向客户端返回该服务器的MAC地址,客户端根据该MAC地址向该服务器发送业务请求, 由该服务器进行相关的业务请求处理。参见图Ib为本实施例负载均衡方法的应用场景示意图,在本实施例中,各负载均 衡器组成负载均衡器集群,并共用一个虚拟IP地址。在负载均衡器集群进行负载均衡前, 所有的负载均衡器节点将自身的MAC地址发送给LBM进行注册,在注册时除发送自身MAC 地址外还可以同时发送自身的设备ID(标识),使负载均衡器节点的注册信息更充分,便于 LBM进行管理。LBM存储所有负载均衡器节点的MAC地址和设备ID,以在后续过程中对负载 均衡器节点进行状态检测和管理。此外,还需要将负载均衡器集群的虚拟IP地址也配置到 该LBM的端口上,由此使得客户端发送的ARP请求能先被路由到该LBM设备上。在完成上述的预先配置后,如图Ib所示,客户端在向服务器集群请求服务时,客 户端会先使用负载均衡器集群的虚拟IP地址发送ARP请求,而负载均衡器集群的虚拟IP 地址已预先配置在LBM上,因此该ARP请求经过交换机后会转发到该LBM上。在本实施例中,该LBM仅获取客户端的ARP请求,并不处理客户端发送的业务请 求,客户端的业务请求由LBM选择的负载均衡器节点进行均衡处理。因此,LBM设备能够处 理更多的客户端的ARP请求。步骤12、选取负载均衡器集群中满足预设负载条件的负载均衡器节点,并获取该 满足预设负载条件的负载均衡器节点的MAC地址。该LBM需要先获取负载均衡器集群中的每个负载均衡器节点的负载状态,然后从 中选取满足预设负载条件的负载均衡器节点。LBM获取负载均衡器节点的负载状态的方式 可以有多种,如可预先设置每个负载均衡器节点定期向LBM发送负载状态信息,负载状态 信息中可包括负载均衡器节点当前处理的业务数量等负载信息,LBM根据该负载状态信息 就能够确定负载均衡器节点的负载状态;或者,也可以预先设置负载均衡器集群中的负载 均衡器节点定期向LBM发送心跳检测信息,并在该心跳检测信息中附带上述的的负载状态 信息。其中,心跳检测信息用于向LBM通知该负载均衡器节点的健康状态以及负载级别,如 通知LBM该负载均衡器节点是否能正常工作以及负载是否超出负荷等。负载均衡器节点在 向LBM发送心跳检测信息时附带负载状态信息,就不用再向LBM单独发送负载状态信息了。LBM在获取了各负载均衡器的负载状态后,就可以选取负载均衡器集群中满足预 设负载条件的负载均衡器节点,选取方法可以为选取所述选取负载均衡器集群中负载最 小的负载均衡器节点;或,选取所述选取负载均衡器集群中当前负载与额定负载比值小于 预设阀值的负载均衡器节点。由于该LBM中预先存储了负载均衡器集群中的所有负载均衡器节点的MAC地址, 并可以获取负载均衡器节点的负载状态,如负载均衡器节点正在处理的业务请求的数量 等。在接收到客户端发送的ARP请求后,该LBM设备可以获取各负载均衡器节点的负载状 态,根据该负载均衡器节点的负载状态选择出服务器集群中满足预设负载条件的负载均衡 器节点,并获取到该负载均衡器节点的MAC地址。其中,若LBM采用选取当前负载与额定负 载比值小于预设阀值的负载均衡器节点的方式,且当前负载与额定负载比值小于预设阀值 的负载均衡器节点有多个时,可采用随机选取的方式从中选取。步骤13、向该客户端发送ARP应答信息,该ARP应答信息中包括该满足预设负载条件的负载均衡器节点的MAC地址,以使得该客户端收到该ARP应答信息后将业务请求发送 到该满足预设负载条件的负载均衡器节点上进行均衡处理。LBM向客户端返回ARP应答信息,在该ARP应答信息中附带该满足预设负载条件的 负载均衡器节点的MAC地址,客户端收到该ARP应答信息后,就可以根据该MAC地址,将业 务请求发送到满足预设负载条件的负载均衡器节点上进行负载均衡处理。该负载均衡器节 点根据服务器集群的负载状况,将业务请求数据发送到负载较小的服务器上,由该服务器 处理客户端的业务请求,由此实现了服务器集群的负载均衡。通过上述方法可知,由于采用了 LBM对负载均衡器集群进行统一管理,当客户端 的业务请求量增大时,负载均衡器集群也可以相应的增加新的负载均衡器节点以提高负载 均衡器集群的负载均衡处理能力,在增加新的负载均衡器节点时,仅需要该增加的负载均 衡器节点在LBM上进行注册,向LBM提供其MAC地址和设备ID即可。而不需整个负载均衡 器集群停机进行相关配置,也不需要对增加的负载均衡器节点进行其他额外的路由配置。 能够避免添加或减少负载均衡器节点设备时频繁的业务中断,且理论上可以支持负载均衡 器集群的无限制的扩容;在负载均衡器集群扩容后不需要对现网设备的配置进行修改,降 低了管理和维护的成本。而现有技术中,每增加一台负载均衡器节点时,就需要将分担出的 客户端的业务流重新路由到新增的负载均衡器节点上,并需要修改现网配置,对新增负载 均衡器节点及其相邻的网络设备进行相关配置,增加了负载均衡器集群的维护负担。因此, 本实施例的方案相比现有技术,对负载均衡器集群的维护的管理更加简便有效,且降低了 负载均衡器集群进行扩建时的维护负担。本实施例中,LBM为整个系统的核心设备,因此,需要确保LBM工作的安全性,参见 图Ib所示,在本实施例中,LBM也可以采用双机热备份的机制(Hot Redundant),即同时设 置一 LBM (Master)和一 LBM (Slave),通过采用LBM双机热备份的方式,确保LBM能够安全可 靠的工作,采用的双机热备份的机制与现有技术类似,不再赘述。本实施例通过获取客户端发送的ARP请求,并根据ARP请求为客户端选择满足预 设负载条件的负载均衡器节点进行业务均衡处理,实现了对负载均衡器集群的有效管理, 提高了负载均衡器集群整体的均衡处理效果。在上述第一实施例的技术方案的基础上,还可以进一步进行负载均衡器集群的检 测和维护处理,如检测负载均衡器节点的状态,当检测到负载均衡器节点发生故障或者超 出负荷时,则将该负载均衡器节点上进行负载均衡的业务转移到别的负载均衡器节点上。参见图2为本实施例的负载均衡的方法流程图,本实施例的方法的执行主体可以 为LBM,主要考虑当某个负载均衡器节点发生了故障时,将故障的负载均衡器上的业务请求 转移到正常的负载均衡器节点上进行负载均衡处理。在本实施例中,LBM在接收到客户端的ARP请求,并选择了负载均衡器节点对该客 户端的业务请求进行负载均衡处理之后,还需要记录该客户端的MAC地址与负载均衡器节 点的对应关系,以便于在负载均衡器节点发生了故障时,获取使用了该负载均衡器的客户 端的MAC地址,以通知该客户端重新进行业务请求。本实施例的方法包括步骤21、当判断出负载均衡器集群中存在不可用负载均衡器节点时,则获取使用 了该不可用的负载均衡器节点的客户端的MAC地址。
在本实施例中,可以预先设置负载均衡器集群中的负载均衡器节点定期向LBM发 送心跳检测信息,该心跳检测信息用于向LBM通知该负载均衡器节点的健康状态以及负载 级别,如通知LBM该负载均衡器节点是否能正常工作以及负载是否超出负荷等。当LBM — 定时间没有接收到某个负载均衡器节点的心跳检测信息时,则认为该负载均衡器节点发生 了故障,LBM将该节点判定为不可用的节点,获取已使用了该不可用的负载均衡器节点的客 户端的MAC地址列表,以便将该客户端的业务请求转移到其他能正常工作的负载均衡器节 点上进行均衡处理。此外,还可以在该心跳检测信息中附加负载均衡器节点的负载状态信息,以使得 各负载均衡器节点不需要再单独向LBM发送负载状态信息,从而简化了系统流程。步骤22、根据获取的该客户端的MAC地址;将该客户端的业务请求转由正常工作 的负载均衡器节点进行均衡处理。通常情况下,在负载均衡器节点发生故障时,可以直接将其处理的业务请求转由 该满足预设负载条件的负载均衡器节点进行处理。确定负载均衡器集群中满足预设负载条件的负载均衡器节点的方法与第一实施 例中的方法相同,此处不再赘述,在选择出满足预设负载条件的负载均衡器节点后,就可以 将该负载均衡器节点作为不可用负载均衡器节点的替补,由其为不可用负载均衡器节点对 应的客户端提供业务请求的负载均衡处理。LBM获取使用了该不可用负载均衡器节点的客户端的MAC地址;向这些客户端发 送更新通知,该更新通知中包括该满足预设负载条件的负载均衡器节点的MAC地址,以使 得该客户端在接收到该更新通知后,根据该MAC地址将业务请求发送到该满足预设负载条 件的负载均衡器节点上进行均衡处理。此外,LBM还应记录下该不可用的负载均衡器节点,在后续处理客户端的请求时, 不再向该负载均衡器节点发送业务请求。通过上述方法可知,本实施例中,在负载均衡器集群中的某个负载均衡器节点发 生了故障不可用时,LBM能将该不可用负载均衡器节点上进行负载均衡处理的业务请求发 送到替补的负载均衡器节点上,使得不会因为负载均衡器节点发生了不可用而造成客户端 业务请求的停止,也使得负载均衡器集群能够提供更好的容灾处理能力。本实施例通过发送心跳检测信息判断负载均衡器节点的状态,当发现不可用负载 均衡器节点,能避免再向该负载均衡器节点发送业务请求,并能够将该负载均衡器节点的 业务量转移到其他的负载均衡器节点上,提高了负载均衡器集群的容灾处理性能,使得负 载均衡器集群能够提供更好的负载均衡效果,提高了集群系统的负载均衡性能。参见图3为本实施例的负载均衡的方法流程图,本实施例的方法的执行主体可以 为LBM,主要考虑当某个负载均衡器节点超出负荷时如何进行负载均衡的处理;在本实施例中,LBM在接收到客户端的ARP请求,并选择了负载均衡器节点对该客 户端的业务请求进行负载均衡处理之后,还需要记录该客户端的MAC地址与负载均衡器节 点的对应关系,以便于在负载均衡器节点超出负荷时,获取使用了该负载均衡器的客户端 的MAC地址,将部分客户端的业务请求转移到其他负载均衡器节点上进行处理,以消除该 负载均衡器节点的超负荷状况。本实施例的方法包括
步骤31、当判断出负载均衡器集群中存在超负荷负载均衡器节点时,则获取超承 载量的客户端的MAC地址;超承载量的客户端为使用该超负荷负载均衡器节点的客户端中 超出该超负荷负载均衡器承载量的客户端。在本实施例中,可以预先设置负载均衡器集群中的负载均衡器节点定期向LBM发 送心跳检测信息,该心跳检测信息用于向LBM通知该负载均衡器节点的健康状态以及负载 级别,如通知LBM该负载均衡器节点是否能正常工作以及负载是否超出负荷等。若LBM接 收到的某个负载均衡器节点的心跳检测信息中,其健康状态信息较差或者负载过高,如负 载超出了预设的阈值时,则认为该负载均衡器节点超负荷了。LBM获取已使用了该超负荷的 负载均衡器节点的客户端的MAC地址,并选择出其中超承载量的客户端,获取其MAC地址。 如负载均衡器节点所能承受的上限是100个客户端的业务请求,当其承载了 120个客户端 的业务请求时,就认为其超负荷了,有可能会无法正常工作。则LBM需要获取使用了该负载 均衡器节点的客户端中的20个客户端的MAC地址,以便将该部分的客户端的业务请求转移 到其他正常工作的负载均衡器节点上进行业务均衡处理。步骤32、根据该超承载量的客户端的MAC地址;将该超承载量的客户端的业务请 求转由正常工作的负载均衡器进行均衡处理。在本实施例中,在将超承载量的客户端的业务请求转由正常工作的负载均衡器进 行均衡处理时,可以将超承载量的客户端的业务请求直接转移到满足预设负载条件的负载 均衡器节点上,方法如下确定负载均衡器集群中满足预设负载条件的负载均衡器节点;确定负载均衡器集 群中满足预设负载条件的负载均衡器节点的方法与第一实施例中的方法相同,此处不再赘 述,在选择出满足预设负载条件的负载均衡器节点后,就可以由该负载均衡器节点承担部 分客户端业务请求,以缓解超负荷负载均衡器的状况。根据该超承载量的客户端的MAC地址;向该客户端发送更新通知,该更新通知中 包括该满足预设负载条件的负载均衡器节点的MAC地址,以使得该客户端在接收到该更新 通知后,根据该满足预设负载条件的负载均衡器节点的MAC地址,将业务请求发送到该满 足预设负载条件的负载均衡器节点上进行均衡处理。举例说明如下LBM在选择客户端时,可以选择使负载均衡器节点超出负荷的部 分客户端的业务请求,如负载均衡器1最多能承载100个客户端的业务请求,则当其超负荷 承载了 120个业务请求时,则将超出的20个客户端的业务请求转移到满足预设负载条件的 负载均衡器2上。由此消除了超负荷的负载均衡器节点1的超负荷状况。需要说明的是,LBM将客户端的业务请求转移到满足预设负载条件的负载均衡器 2上后,应使得转移后负载均衡器2不会超负荷。若转移的客户端的业务请求大于该满足预 设负载条件的负载均衡器2还能承载的客户端业务量,则只向该负载均衡器2转移部分客 户端业务量,如负载均衡器2的最多承载100个客户端业务请求,当前承载了 90个客户端 业务请求,但需要转移的客户端业务请求量为20个,则可以只向负载均衡器2转移10个业 务请求;然后LBM再次获取满足预设负载条件的负载均衡器3,将部分业务量转移到该负载 均衡器上;按照上述方法直至将负载均衡器1上超出的全部业务量转移出去。由此实现了 整个负载均衡器集群的负载均衡。通过上述方法可知,本实施例中,在负载均衡器集群中的负载均衡器节点超出负荷时,LBM能将该不可用负载均衡器节点上进行负载均衡处理的业务请求发送到其他的负 载均衡器节点上,使得负载均衡器集群能够提供更好的负载均衡效果。本实施例通过发送心跳检测信息判断负载均衡器节点的状态,当发现超负荷的负 载均衡器节点时,能够将该负载均衡器节点的业务量转移到其他的负载均衡器节点上,使 得负载均衡器集群能够提供更好的负载均衡效果,提高了集群系统的负载均衡性能。图4为本发明第四实施例提供的LBM的结构示意图,如图4所示,与前述方法实施 例对应,本实施例的LBM可包括第一获取模块41、第二获取模块42和发送模块43。第一获取模块41,用于获取客户端发送的地址解析协议ARP请求;第二获取模块42,用于选取负载均衡器集群中满足预设负载条件的负载均衡器节 点,并获取该满足预设负载条件的负载均衡器节点的介质访问控制MAC地址;发送模块43,用于向该客户端发送ARP应答信息,该ARP应答信息中包括该满足预 设负载条件的负载均衡器节点的MAC地址,以使得该客户端收到该ARP应答信息后将业务 请求发送到该满足预设负载条件的负载均衡器节点上进行均衡处理。其中,第二获取模块42在选取满足预设负载均衡条件的负载均衡器节点时,可选 取所述选取负载均衡器集群中负载最小的负载均衡器节点;或,选取所述选取负载均衡器 集群中当前负载与额定负载比值小于预设阀值的负载均衡器节点。本实施例中,负载均衡器组成负载均衡器集群,并共用一个虚拟IP地址,且该虚 拟IP地址配置到该LBM的端口上。在负载均衡器集群进行负载均衡前,所有的负载均衡器 节点将自身的设备ID以及MAC地址发送给LBM进行注册,LBM存储所有负载均衡器节点的 MAC地址和设备ID,以在后续过程中对负载均衡器节点进行状态检测和管理。客户端在向服务器集群请求服务时,客户端会先使用负载均衡器集群的虚拟IP 地址发送ARP请求,该ARP请求经过交换机后会转发到该LBM上。LBM选择出满足预设负载 条件的负载均衡器节点对业务请求进行均衡处理,由该负载均衡器节点为客户端选择出为 其服务的服务器。此外,还可以进一步进行负载均衡器集群的检测和维护处理,如检测负载均衡器 节点的状态,当检测到负载均衡器节点发生故障或者超出负荷时,则将该负载均衡器节点 上进行负载均衡的业务转移到别的负载均衡器节点上。从负载均衡器集群可能存在不可用的负载均衡器节点的方面考虑,该LBM还包 括第一判断模块44,用于判断该负载均衡器集群中是否存在不可用负载均衡器节占.
^ \\\ 第三获取模块45,用于在第一判断模块判断出该负载均衡器集群中存在不可用负 载均衡器节点时,获取使用该不可用负载均衡器节点的客户端的MAC地址;第一均衡模块46,用于根据获取的该客户端的MAC地址;将该客户端的业务请求 转由正常工作的负载均衡器节点进行均衡处理。在判断负载均衡器集群中是否存在不可用负载均衡器节点时,第一判断模块44, 用于当在预设的检测时间内未收到负载均衡器集群中的负载均衡器节点的心跳检测信息 时,则判定该负载均衡器节点为不可用负载均衡器节点。通常情况下,在负载均衡器节点发生故障时,可以直接将其处理的业务请求转由满足预设负载条件的负载均衡器节点进行处理。第一均衡模块46包括确定单元46a,用于确定负载均衡器集群中满足预设负载条件的负载均衡器节占.
^ \\\ 更新单元46b,用于根据获取的该客户端的MAC地址;向该客户端发送更新通知, 该更新通知中包括该满足预设负载条件的负载均衡器节点的MAC地址,以使得该客户端在 接收到该更新通知后,将业务请求发送到该满足预设负载条件的负载均衡器节点上进行均 衡处理。确定单元46a在确定负载小的负载均衡器节点时,先获取负载均衡器集群中各负 载均衡器节点的负载状态;根据该负载均衡器节点的负载状态计算得到负载均衡器集群中 满足预设负载条件的负载均衡器节点。若需要考虑某个负载均衡器节点超出负荷时如何进行负载均衡的处理,则该LBM 包括第二判断模块47,用于判断该负载均衡器集群中是否存在超负荷负载均衡器节
占,第四获取模块48,用于在第二判断模块判断出该负载均衡器集群中存在超负荷负 载均衡器节点时,获取超承载量的客户端的MAC地址;该超承载量的客户端为使用该超负 荷负载均衡器节点的客户端中超出该超负荷负载均衡器承载量的客户端;第二均衡模块49,用于根据该超承载量的客户端的MAC地址;将该超承载量的客 户端的业务请求转由正常工作的负载均衡器进行均衡处理。在将超承载量的客户端的业务请求转由正常工作的负载均衡器进行均衡处理时, 可以将超承载量的客户端的业务请求直接转移到满足预设负载条件的负载均衡器节点上, 第二均衡模块49包括确定单元49a,用于确定负载均衡器集群中满足预设负载条件的负载均衡器节占.
^ \\\ 更新单元49b,用于根据该超承载量的客户端的MAC地址;向该客户端发送更新通 知,该更新通知中包括该满足预设负载条件的负载均衡器节点的MAC地址,以使得该客户 端在接收到该更新通知后,根据该满足预设负载条件的负载均衡器节点的MAC地址,将业 务请求发送到该满足预设负载条件的负载均衡器节点上进行均衡处理。确定单元49a在确定负载小的负载均衡器节点时,先获取负载均衡器集群中各负 载均衡器节点的负载状态;根据该负载均衡器节点的负载状态计算得到负载均衡器集群中 满足预设负载条件的负载均衡器节点。本实施例中的LBM的功能,及其各模块之间的交互机理和效果可参见图Ia 图3 对应实施例的记载,在此不再赘述。本实施例通过获取客户端发送的ARP请求,并根据ARP请求为客户端选择满足预 设负载条件的负载均衡器节点进行业务均衡处理,实现了对负载均衡器集群的有效管理, 提高了负载均衡器集群的均衡处理效果。当发现不可用负载均衡器节点和超负荷的负载均 衡器节点时,能够将该负载均衡器节点的业务量转移到其他的负载均衡器节点上,提高了 负载均衡器集群的容灾处理性能和负载均衡性能。图5为本发明第五实施例提供的负载均衡系统的结构示意图,该系统包括LBM51和负载均衡器集群52,该负载均衡器集群52至少包括两个负载均衡器节点52a。其中,LBM的结构与功能与图4对应的第四实施例的记载相同,其功能及其各模块 之间的交互机理和效果可参见图Ia 图3对应实施例的记载,在此不再赘述。该负载均衡器节点52a,用于在接收到该客户端发送的业务请求后,对该业务请求 进行均衡处理。该负载均衡器节点52a,还用于向该LBM发送负载状态信息;该LBM51,还用于根据该负载均衡器节点52a的负载状态信息,确定该负载均衡器 节点52a的负载状态。在本实施例中,可以预先设置负载均衡器集群52中的负载均衡器节点5 定期 向LBM51发送心跳检测信息,该心跳检测信息用于向LBM51通知负载均衡器节点52a的健 康状态以及负载级别,以便LBM51能够判断该负载均衡器节点是否可用。当LBM51 —定时 间没有接收到某个负载均衡器节点的心跳检测信息时,则认为该负载均衡器节点发生了故 障,LBM51将该节点判定为不可用的节点。该负载均衡器节点52a,还用于在预设的时间间隔内向该LBM51发送心跳检测信 息;该LBM51,还用于在预设的检测时间内未收到负载均衡器集群中的负载均衡器节 点的心跳检测信息时,则判定该负载均衡器节点为不可用负载均衡器节点。本实施例中的LBM51和负载均衡器节点5 之间的交互机理和效果可参见图1 图4对应实施例的记载,在此不再赘述。本实施例通过获取客户端发送的ARP请求,并根据ARP请求为客户端选择满足预 设负载条件的负载均衡器节点进行业务均衡处理,实现了对负载均衡器集群的有效管理, 提高了负载均衡器集群的均衡处理效果。当发现不可用负载均衡器节点和超负荷的负载均 衡器节点时,能够将该负载均衡器节点的业务量转移到其他的负载均衡器节点上,提高了 负载均衡器集群的容灾处理性能和负载均衡性能。本领域普通技术人员可以理解附图只是一个实施例的示意图,附图中的模块或 流程并不一定是实施本发明所必须的。本领域普通技术人员可以理解实施例中的装置中的模块可以按照实施例描述分 布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上 述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过 程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在 执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者光 盘等各种可以存储程序代码的介质。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽 管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然 可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换; 而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。
权利要求
1.一种负载均衡的方法,其特征在于,包括 获取客户端发送的地址解析协议ARP请求;选取负载均衡器集群中满足预设负载条件的负载均衡器节点,并获取所述满足预设负 载条件的负载均衡器节点的介质访问控制MAC地址;向所述客户端发送ARP应答信息,所述ARP应答信息中包括所述满足预设负载条件的 负载均衡器节点的MAC地址,以使得所述客户端收到所述ARP应答信息后将业务请求发送 到所述满足预设负载条件的负载均衡器节点上进行均衡处理。
2.根据权利要求1所述的负载均衡的方法,其特征在于,所述选取负载均衡器集群中 满足预设负载条件的负载均衡器节点,包括选取所述选取负载均衡器集群中负载最小的负载均衡器节点; 或,选取所述选取负载均衡器集群中当前负载与额定负载比值小于预设阀值的负载均 衡器节点。
3.根据权利要求1所述的负载均衡的方法,其特征在于,还包括判断所述负载均衡器集群中是否存在不可用负载均衡器节点,若是,则获取使用所述 不可用负载均衡器节点的客户端的MAC地址;根据获取的所述客户端的MAC地址;将所述客户端的业务请求转由正常工作的负载均 衡器节点进行均衡处理。
4.根据权利要求3所述的负载均衡的方法,其特征在于,将所述客户端的业务请求转 由正常工作的负载均衡器节点进行均衡处理,包括确定负载均衡器集群中满足预设负载条件的负载均衡器节点; 根据获取的所述客户端的MAC地址;向所述客户端发送更新通知,所述更新通知中包 括所述满足预设负载条件的负载均衡器节点的MAC地址,以使得所述客户端在接收到所 述更新通知后,将业务请求发送到所述满足预设负载条件的负载均衡器节点上进行均衡处 理。
5.根据权利要求1所述的负载均衡的方法,其特征在于,还包括判断所述负载均衡器集群中是否存在超负荷负载均衡器节点,若是,则获取超承载量 的客户端的MAC地址;所述超承载量的客户端为使用所述超负荷负载均衡器节点的客户端 中超出所述超负荷负载均衡器承载量的客户端;根据所述超承载量的客户端的MAC地址;将所述超承载量的客户端的业务请求转由正 常工作的负载均衡器进行均衡处理。
6.根据权利要求5所述的负载均衡的方法,其特征在于,将所述超承载量的客户端的 业务请求转由正常工作的负载均衡器进行均衡处理,包括确定负载均衡器集群中满足预设负载条件的负载均衡器节点; 根据所述超承载量的客户端的MAC地址;向所述客户端发送更新通知,所述更新通知 中包括所述满足预设负载条件的负载均衡器节点的MAC地址,以使得所述客户端在接收到 所述更新通知后,根据所述满足预设负载条件的负载均衡器节点的MAC地址,将业务请求 发送到所述满足预设负载条件的负载均衡器节点上进行均衡处理。
7.根据权利要求1所述的负载均衡的方法,其特征在于,选取负载均衡器集群中满足 预设负载条件的负载均衡器节点,包括获取负载均衡器集群中各负载均衡器节点的负载状态;根据所述负载均衡器节点的负载状态计算得到负载均衡器集群中满足预设负载条件 的负载均衡器节点。
8.根据权利要求3所述的负载均衡的方法,其特征在于,判断所述负载均衡器集群中 是否存在不可用负载均衡器节点,包括当在预设的检测时间内未收到负载均衡器集群中的负载均衡器节点的心跳检测信息 时,则判定所述负载均衡器节点为不可用负载均衡器节点。
9.一种负载均衡管理器,其特征在于,包括第一获取模块,用于获取客户端发送的地址解析协议ARP请求; 第二获取模块,用于选取负载均衡器集群中满足预设负载条件的负载均衡器节点,并 获取所述满足预设负载条件的负载均衡器节点的介质访问控制MAC地址;发送模块,用于向所述客户端发送ARP应答信息,所述ARP应答信息中包括所述满足预 设负载条件的负载均衡器节点的MAC地址,以使得所述客户端收到所述ARP应答信息后将 业务请求发送到所述满足预设负载条件的负载均衡器节点上进行均衡处理。
10.根据权利要求9所述的负载均衡管理器,其特征在于,所述第二获取模块,用于选取所述选取负载均衡器集群中负载最小的负载均衡器节 点;或,选取所述选取负载均衡器集群中当前负载与额定负载比值小于预设阀值的负载均 衡器节点。
11.根据权利要求9所述的负载均衡管理器,其特征在于,还包括第一判断模块,用于判断所述负载均衡器集群中是否存在不可用负载均衡器节点, 第三获取模块,用于在所述第一判断模块判断出所述负载均衡器集群中存在不可用负 载均衡器节点时,获取使用所述不可用负载均衡器节点的客户端的MAC地址;第一均衡模块,用于根据获取的所述客户端的MAC地址;将所述客户端的业务请求转 由正常工作的负载均衡器节点进行均衡处理。
12.根据权利要求11所述的负载均衡管理器,其特征在于,所述第一均衡模块包括 确定单元,用于确定负载均衡器集群中满足预设负载条件的负载均衡器节点; 更新单元,用于根据获取的所述客户端的MAC地址;向所述客户端发送更新通知,所述更新通知中包括所述满足预设负载条件的负载均衡器节点的MAC地址,以使得所述客户端 在接收到所述更新通知后,将业务请求发送到所述满足预设负载条件的负载均衡器节点上 进行均衡处理。
13.根据权利要求9所述的负载均衡管理器,其特征在于,还包括第二判断模块,用于判断所述负载均衡器集群中是否存在超负荷负载均衡器节点, 第四获取模块,用于在所述第二判断模块判断出所述负载均衡器集群中存在超负荷负 载均衡器节点时,获取超承载量的客户端的MAC地址;所述超承载量的客户端为使用所述 超负荷负载均衡器节点的客户端中超出所述超负荷负载均衡器承载量的客户端;第二均衡模块,用于根据所述超承载量的客户端的MAC地址;将所述超承载量的客户 端的业务请求转由正常工作的负载均衡器进行均衡处理。
14.根据权利要求13所述的负载均衡管理器,其特征在于,所述第二均衡模块包括 确定单元,用于确定负载均衡器集群中满足预设负载条件的负载均衡器节点;更新单元,用于根据所述超承载量的客户端的MAC地址;向所述客户端发送更新通知, 所述更新通知中包括所述满足预设负载条件的负载均衡器节点的MAC地址,以使得所述客 户端在接收到所述更新通知后,根据所述满足预设负载条件的负载均衡器节点的MAC地 址,将业务请求发送到所述满足预设负载条件的负载均衡器节点上进行均衡处理。
15.根据权利要求9所述的负载均衡管理器,其特征在于,所述第二获取模块,用于获取负载均衡器集群中各负载均衡器节点的负载状态;根据 所述负载均衡器节点的负载状态计算得到负载均衡器集群中满足预设负载条件的负载均 衡器节点。
16.根据权利要求11所述的负载均衡管理器,其特征在于,所述第一判断模块,用于当在预设的检测时间内未收到负载均衡器集群中的负载均衡 器节点的心跳检测信息时,则判定所述负载均衡器节点为不可用负载均衡器节点。
17.一种负载均衡系统,包括权利要求9 16任一所述的负载均衡管理器,还包括负载 均衡器集群,所述负载均衡器集群至少包括两个负载均衡器节点;所述负载均衡器节点,用于在接收到所述客户端发送的业务请求后,对所述业务请求 进行均衡处理。
18.根据权利要求17所述的负载均衡系统,其特征在于,所述负载均衡器节点,还用于在预设的时间间隔内向所述负载均衡管理器发送心跳检 测信息;所述负载均衡管理器,还用于在预设的检测时间内未收到负载均衡器集群中的负载均 衡器节点的心跳检测信息时,则判定所述负载均衡器节点为不可用负载均衡器节点。
19.根据权利要求17所述的负载均衡系统,其特征在于,所述负载均衡器节点,还用于向所述负载均衡管理器发送负载状态信息;所述负载均衡管理器,还用于根据所述负载均衡器节点的负载状态信息,确定所述负 载均衡器节点的负载状态。
全文摘要
本发明公开了一种负载均衡的方法、设备和系统,所述方法包括获取客户端发送的ARP请求;选取负载均衡器集群中满足预设负载条件的负载均衡器节点,并获取所述满足预设负载条件的负载均衡器节点的MAC地址;向所述客户端发送ARP应答信息,所述ARP应答信息中包括所述满足预设负载条件的负载均衡器节点的MAC地址,以使得所述客户端收到所述ARP应答信息后将业务请求发送到所述满足预设负载条件的负载均衡器节点上进行均衡处理。本发明通过获取客户端发送的ARP请求,并根据ARP请求为客户端选择满足预设负载条件的负载均衡器节点进行业务均衡处理,实现了对负载均衡器集群的有效管理,提高了负载均衡器集群整体的均衡处理效果。
文档编号H04L12/56GK102143046SQ20101026892
公开日2011年8月3日 申请日期2010年8月25日 优先权日2010年8月25日
发明者段海峰 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1