负载均衡方法和装置制造方法及图纸

技术编号:26797833 阅读:30 留言:0更新日期:2020-12-22 17:15
本申请公开了负载均衡方法和装置,涉及云计算技术领域。具体实现方案为:获取集群内各节点的负载信息,其中,负载信息包括以下至少一项:硬盘负载、网络负载、CPU负载、内存负载和延迟负载;分别根据各节点的负载信息计算各节点的负载值;对于每个节点,根据该节点的负载值对该节点进行诊断,得到诊断结果;根据诊断结果进行处理。该实施方式在满足集群异构、热点数据场景同时,使集群负载具有更高的容错性,负载更加均匀。

【技术实现步骤摘要】
负载均衡方法和装置
本申请涉及计算机
,具体涉及云计算

技术介绍
分布式传输负载均衡方案是指在分布式传输系统中分区(Partition)如何在集群的节点(Broker)之间分配的策略。在实际业务中需要均衡节点的负载来提高系统的可用性。目前业界普遍采用轮询、一致性哈希、动态调度的方式解决负载均衡问题。但轮询方式覆盖不了集群异构带来的节点性能差异场景。一致性哈希的方式中各Partition在调度中的权重是一样的,并没有考虑Partition其他指标(例如QPS和流量)的差异,且一致性哈希算法的映射关系我们无法干预和调节。动态调度的方式对于Partition的迁移没有量化,容易造成迁移过度或者迁移不足的情况,并且对于选盘的考虑因素单一,很容易出现硬盘IO瓶颈的情况。
技术实现思路
本公开提供了一种负载均衡方法、装置、设备以及存储介质。根据本公开的第一方面,提供了一种负载均衡方法,包括:获取集群内各节点的负载信息,其中,负载信息包括以下至少一项:硬盘负载、网络负载、CPU负载、内存负载和延迟负载;分别本文档来自技高网...

【技术保护点】
1.一种负载均衡方法,包括:/n获取集群内各节点的负载信息,其中,所述负载信息包括以下至少一项:硬盘负载、网络负载、CPU负载、内存负载和延迟负载;/n分别根据各节点的负载信息计算各节点的负载值;/n对于每个节点,根据该节点的负载值对该节点进行诊断,得到诊断结果;/n根据所述诊断结果进行处理。/n

【技术特征摘要】
1.一种负载均衡方法,包括:
获取集群内各节点的负载信息,其中,所述负载信息包括以下至少一项:硬盘负载、网络负载、CPU负载、内存负载和延迟负载;
分别根据各节点的负载信息计算各节点的负载值;
对于每个节点,根据该节点的负载值对该节点进行诊断,得到诊断结果;
根据所述诊断结果进行处理。


2.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
若连续预定数目的调度周期内该节点的负载值低于第一负载值阈值且该节点的延迟负载高于第一延迟阈值,则诊断结果为该节点为疑似慢节点;以及
所述根据所述诊断结果进行处理,包括:
将所述疑似慢节点上的分区迁移到其他节点;
重启所述疑似慢节点;
若重启后所述疑似慢节点的负载值和延迟负载的没有改善,则将所述疑似慢节点标记为慢节点,并禁止其它分区迁入所述慢节点;
输出该节点为慢节点的告警信息。


3.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
获取该节点内各硬盘的硬盘负载,并计算该节点内平均的硬盘负载;
若存在硬盘负载高于第一硬盘负载阈值或低于第二硬盘负载阈值的硬盘,则诊断结果为硬盘负载不均衡,其中,第一硬盘负载阈值大于第二硬盘负载阈值;以及
所述根据所述诊断结果进行处理,包括:
计算出需要迁移的源硬盘、目的硬盘和硬盘最大可迁移流量;
从所述源硬盘向所述目的硬盘迁移最接近硬盘最大可迁移流量的分区。


4.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
对于该节点的每块硬盘,若该硬盘的硬盘负载小于第三硬盘负载阈值且其承载的分区的流量小于流量下限,则诊断结果为该硬盘为故障硬盘;以及
所述根据所述诊断结果进行处理,包括:
将故障硬盘上的分区迁移到其它节点;
输出提示硬盘故障的告警信息。


5.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
对于该节点的每个分区,若该分区的流量达到设计上限,则诊断结果为该分区为高吞吐分区;以及
所述根据所述诊断结果进行处理,包括:
输出提示该分区为高吞吐分区的告警信息。


6.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
计算各节点的平均负载值;
若所述平均负载值大于过载阈值,则诊断结果为所述集群处于过载状态;以及
所述根据所述诊断结果进行处理,包括:
输出提示所述集群处于过载状态需要扩容的告警信息。


7.根据权利要求1所述的方法,其中,所述根据该节点的负载值对该节点进行诊断,得到诊断结果,包括:
计算各节点的负载值的方差;
若所述方差大于预定方差阈值,则诊断结果为集群负载不均衡;以及
所述根据所述诊断结果进行处理,包括:
根据各节点的负载值确定出源节点和目的节点;
计算所述源节点的期望迁出的流量和所述目的节点的期望迁入的流量;
根据所述期望迁出的流量和所述期望迁入的流量计算所述源节点和所述目的节点之间的最大可迁移流量;
从候选的分区集合中选择最接近所述最大可迁移流量的分区集合作为期望迁移的分区;
将所述期望迁移的分区从源节点迁移到目标节点。


8.根据权利要求7所述的方法,其中,所述从候选的分区集合中选择最接近所述最大可迁移流量的分区集合作为期望迁移的分区,包括:
获取所述目的节点中不同主题下分区的数量和候选的分区集合中各分区所属的主题;
从候选的分区集合中选择最接近最大可迁移流量且迁移后的每个主题下分区的数量不超过预定分区量阈值的分区集合。


9.根据权利要求7所述的方法,其中,所述根据各节点的负载值确定出源节点和目的节点,包括:
根据各节点的负载值将节点分别放到大顶堆和小顶堆中;
每个调度周期取大顶堆堆顶元素作为源节点并取小顶堆堆顶元素作为候选目的节点;
若根据所述候选目的节点的负载值无法选择出可迁移的分区,则将所述候选目的节点暂时移出小顶堆等到下个调度周期再重新加入小顶堆,选择小顶堆中下一个节点作为候选目的节点;
若根据所述候选目的节点的负载值能够选择出可迁移的分区,则将所述候选目的节点确定为目的节点。


10.一种负载均衡装置,包括:
获取单元,被配置成获取集群内各节点的负载信息,其中,所述负载信息包括以...

【专利技术属性】
技术研发人员:李树毫谢维柱邢越
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:北京;11

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

1