一种拓扑感知的负载均衡方法、装置及计算机设备制造方法及图纸

技术编号:29594355 阅读:21 留言:0更新日期:2021-08-06 19:56
本发明专利技术公开了一种拓扑感知的负载均衡方法,包括:获取用户下发的负载均衡配置信息,并基于配置信息判断负载均衡的若干后端服务端点是否位于不同节点;若是负载均衡的若干后端服务端点位于不同节点,向不同节点定时下发对各自节点上若干后端服务端点轮询的命令,以获取不同节点的拓扑信息、后端服务端点的健康状态和链路质量;基于拓扑信息、健康状态和链路质量,计算得到后端服务端点的优先级,并基于优先级设置均衡负载的服务响应端点;以及响应于拓扑信息发生变化和/或健康状态和/或链路质量发生变化,重新计算后端服务端点的优先级,并基于优先级调整服务响应端点。本发明专利技术还公开了一种拓扑感知的负载均衡装置和计算机设备。

【技术实现步骤摘要】
一种拓扑感知的负载均衡方法、装置及计算机设备
本专利技术涉及负载均衡
,尤其涉及一种拓扑感知的负载均衡方法、装置及设备。
技术介绍
在云计算时代,业务改造上也不断地开展,伴随着云计算的不断发展,云计算数据中心规模越来越大,在大规模数据中心环境下通过合理规划、技术优化使在硬件资产固定的情况下单位计算资源所承载的计算密度越来越高,而在硬件资产固定的情况下网络带宽资源也是固定的,数据中心的网络带宽资源越来越珍贵,如何合理高效的利用固定的网络带宽资源为用户提供最优质的服务是当前数据中心亟需解决的问题。传统的负载均衡策略无法感知负载均衡后端服务端点的拓扑信息,导致两个问题:第一,负载均衡系统无法有效、合理的规划后端服务端点资源,导致为负载均衡前端提供服务的后端服务端点不是最优的,用户体验差、不能合理利用数据中心资源;第二,用户可以通过合理规划负载均衡后端服务端点的拓扑,以达到系统最优,但是当负载均衡后端服务端点拓扑因故障、计算资源不足等问题而导致变动,系统无法自动调整负载均衡规则,而需要运维人员根据新的拓扑手动重新调整,导致出错风险大、运维成本高。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提出一种拓扑感知的负载均衡方法、装置及计算机设备,使用拓扑感知与链路质量感知的方式根据优先级算法计算负载均衡后端服务端点的优先级,选择最优后端服务端点作为负载均衡服务后端,同时当网络状态发生变化或后端服务端点拓扑发生变化时负载均衡可以自动适配最新的拓扑与链路状态,在不升级硬件的基础上充分利用了数据中心网络链路带宽资源为用户带来最好的使用体验,同时能够实时感知后端服务端点拓扑状态变化与网络链路质量变化,及时调整负载均衡后端服务端点的优先级,始终优先选择最优后端服务端点为负载均衡提供服务。避免了传统负载均衡器无法感知后端服务端点拓扑与链路质量的缺陷同时也避免了管理员手动调整带来的繁琐工作与变更风险。基于上述目的,本专利技术实施例的一方面提供了一种拓扑感知的负载均衡方法,包括以下步骤:获取用户下发的负载均衡配置信息,并基于配置信息判断负载均衡的若干后端服务端点是否位于不同节点;若是负载均衡的若干后端服务端点位于不同节点,向不同节点定时下发对各自节点上若干后端服务端点轮询的命令,以获取不同节点的拓扑信息、若干后端服务端点的健康状态和链路质量;基于拓扑信息、健康状态和链路质量,计算得到若干后端服务端点的优先级,并基于优先级设置均衡负载的服务响应端点;以及响应于拓扑信息发生变化和/或健康状态和/或链路质量发生变化,重新计算若干后端服务端点的优先级,并基于优先级调整服务响应端点。在一些实施方式中,还包括:由不同节点的拓扑感知模块对各自节点上若干后端服务端点进行定时轮询,以获取不同节点的拓扑信息,并将拓扑信息上传到控制模块;由不同节点的健康监测模块对各自节点上若干后端服务端点进行定时轮询,以获取若干后端服务端点的健康状态和链路信息,并将健康状态和链路信息上传到控制模块。在一些实施方式中,响应于拓扑信息发生变化和/或健康状态和/或链路质量发生变化包括:由拓扑感知模块获取当前拓扑信息,并判断当前拓扑信息与上次获取的拓扑信息是否相同;若是当前拓扑信息与上次获取的拓扑信息不同,确认拓扑信息发生变化,并将当前拓扑信息上传到控制模块;由健康监测模块获取当前健康状态和当前链路信息,并将当前健康状态和当前链路信息上传到控制模块,并由控制模块基于当前健康状态和当前链路信息与上次获取的健康状态和链路信息判断健康状态和链路质量是否发生变化。在一些实施方式中,还包括:若是当前拓扑信息与上次获取的拓扑信息相同,确认拓扑信息未发生变化,则不会将当前拓扑信息上传到控制模块。在一些实施方式中,基于拓扑信息、健康状态和链路质量,计算得到若干后端服务端点的优先级包括:基于链路质量中的链路开销计算得到链路平均开销,并基于链路平均开销、拓扑权重、链路权重、链路开销权重、链路稳定性权重、延迟变更权重计算得到若干后端服务端点的负载均衡优先级。在一些实施方式中,基于链路平均开销、拓扑权重、链路权重、链路开销权重、链路稳定性权重、延迟变更权重计算得到若干后端服务端点的负载均衡优先级包括:通过如下公式计算若干后端服务端点的优先级:其中,A1为拓扑T的拓扑权重,A2为链路权重,x1,x2,……,xn为对应链路的链路开销,A3为链路开销权重,A4为链路稳定性权重,L为延迟变更权重,M为链路平均开销。在一些实施方式中,基于优先级设置均衡负载的服务响应端点包括:将若干后端服务端点的优先级按照从高到低排序,并将优先级最高的后端服务端点作为负载均衡的服务响应端点。在一些实施方式中,基于优先级调整服务响应端点包括:将若干后端服务端点重新计算得到的优先级按照从高到低排序,并将重新计算得到的优先级最高的后端服务端点作为负载均衡的服务响应端点。本专利技术实施例的另一方面,还提供了一种拓扑感知的负载均衡装置,包括:第一模块,配置用于获取用户下发的负载均衡配置信息,并基于配置信息判断负载均衡的若干后端服务端点是否位于不同节点;第二模块,配置用于若是负载均衡的若干后端服务端点位于不同节点,向不同节点定时下发对各自节点上若干后端服务端点轮询的命令,以获取不同节点的拓扑信息、若干后端服务端点的健康状态和链路质量;第三模块,配置用于基于拓扑信息、健康状态和链路质量,计算得到若干后端服务端点的优先级,并基于优先级设置均衡负载的服务响应端点;以及第四模块,配置用于响应于拓扑信息发生变化和/或健康状态和/或链路质量发生变化,重新计算若干后端服务端点的优先级,并基于优先级调整服务响应端点。本专利技术实施例的再一方面,还提供了一种计算机设备,包括:至少一个处理器;以及存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现上述方法的步骤。本专利技术具有以下有益技术效果:解决大规模数据中心环境下负载均衡性能不高、无法实时根据负载均衡后端服务端点拓扑状态调整链路的问题,通过对负载均衡器后端服务端点的拓扑进行感知,并根据拓扑感知结果调整负载均衡,实现负载均衡性能最优化,极大提升网络带宽资源利用率与用户使用体验。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。图1为本专利技术提供的拓扑感知的负载均衡方法的实施例的示意图;图2为本专利技术提供的拓扑感知的负载均衡装置的实施例的示意图;图3为本专利技术提供的计算机设备的实施例的示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本专利技术实施例进一步详细说明。需要说明的是,本专利技术实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一本文档来自技高网...

【技术保护点】
1.一种拓扑感知的负载均衡方法,其特征在于,包括以下步骤:/n获取用户下发的负载均衡配置信息,并基于所述配置信息判断负载均衡的若干后端服务端点是否位于不同节点;/n若是负载均衡的若干后端服务端点位于不同节点,向所述不同节点定时下发对各自节点上所述若干后端服务端点轮询的命令,以获取所述不同节点的拓扑信息、所述若干后端服务端点的健康状态和链路质量;/n基于所述拓扑信息、所述健康状态和所述链路质量,计算得到所述若干后端服务端点的优先级,并基于所述优先级设置均衡负载的服务响应端点;以及/n响应于所述拓扑信息发生变化和/或所述健康状态和/或所述链路质量发生变化,重新计算所述若干后端服务端点的优先级,并基于所述优先级调整所述服务响应端点。/n

【技术特征摘要】
1.一种拓扑感知的负载均衡方法,其特征在于,包括以下步骤:
获取用户下发的负载均衡配置信息,并基于所述配置信息判断负载均衡的若干后端服务端点是否位于不同节点;
若是负载均衡的若干后端服务端点位于不同节点,向所述不同节点定时下发对各自节点上所述若干后端服务端点轮询的命令,以获取所述不同节点的拓扑信息、所述若干后端服务端点的健康状态和链路质量;
基于所述拓扑信息、所述健康状态和所述链路质量,计算得到所述若干后端服务端点的优先级,并基于所述优先级设置均衡负载的服务响应端点;以及
响应于所述拓扑信息发生变化和/或所述健康状态和/或所述链路质量发生变化,重新计算所述若干后端服务端点的优先级,并基于所述优先级调整所述服务响应端点。


2.根据权利要求1所述的拓扑感知的负载均衡方法,其特征在于,还包括:
由所述不同节点的拓扑感知模块对各自节点上所述若干后端服务端点进行定时轮询,以获取所述不同节点的拓扑信息,并将所述拓扑信息上传到控制模块;
由所述不同节点的健康监测模块对各自节点上所述若干后端服务端点进行定时轮询,以获取所述若干后端服务端点的健康状态和链路信息,并将所述健康状态和所述链路信息上传到所述控制模块。


3.根据权利要求2所述的拓扑感知的负载均衡方法,其特征在于,响应于所述拓扑信息发生变化和/或所述健康状态和/或所述链路质量发生变化包括:
由所述拓扑感知模块获取当前拓扑信息,并判断所述当前拓扑信息与上次获取的所述拓扑信息是否相同;
若是所述当前拓扑信息与上次获取的所述拓扑信息不同,确认所述拓扑信息发生变化,并将所述当前拓扑信息上传到所述控制模块;
由所述健康监测模块获取当前健康状态和当前链路信息,并将所述当前健康状态和所述当前链路信息上传到所述控制模块,并由所述控制模块基于所述当前健康状态和所述当前链路信息与上次获取的健康状态和链路信息判断所述健康状态和所述链路质量是否发生变化。


4.根据权利要求3所述的拓扑感知的负载均衡方法,其特征在于,还包括:
若是所述当前拓扑信息与上次获取的所述拓扑信息相同,确认所述拓扑信息未发生变化,则不会将所述当前拓扑信息上传到所述控制模块。


5.根据权利要求1所述的拓扑感知的负载均衡方法,其特征在于,基于所述拓扑信息、所述健康状态和所述链路质量,计算得到所述若干后端服务端点的优先级包括:
基于所述链路...

【专利技术属性】
技术研发人员:李丰启
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1