一种kafka集群负载均衡方法、系统、设备以及介质技术方案

技术编号:27141528 阅读:15 留言:0更新日期:2021-01-27 21:16
本发明专利技术公开了一种kafka集群负载均衡方法,包括以下步骤:获取每一个节点当前的网络负载以及每一个节点下的数据盘当前的读写负载、当前的容量负载和当前的主题分区负载;基于当前的网络负载、当前的读写负载、当前的容量负载和当前的主题分区负载中的一个或多个判断是否触发调整当前的主题创建配置策略;响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对当前的主题配置策略进行调整以对主题进行负载均衡。本发明专利技术还公开了一种系统、计算机设备以及可读存储介质。本发明专利技术提出的方案通过实时获取集群负载状态,从而动态调整Kafka主题配置优化规则,降低Kafka集群数据倾斜、单点负载过高、网络阻塞发生的可能性,实现Kafka集群的资源均衡配置。实现Kafka集群的资源均衡配置。实现Kafka集群的资源均衡配置。

【技术实现步骤摘要】
一种kafka集群负载均衡方法、系统、设备以及介质


[0001]本专利技术涉及kafka集群领域,具体涉及一种kafka集群负载均衡方法、系统、设备以及存储介质。

技术介绍

[0002]Kafka作为消息队列服务,在实际业务中往往包含多个主题且承载较大的数据量,但Kafka自身不能感知集群中的读写负载、网络压力、主题分区、磁盘容量信息,创建主题时不会根据上述信息进行主题规则优化,不均衡的主机规则配置往往会导致数据倾斜、单点负载过高、网络阻塞等问题。

技术实现思路

[0003]有鉴于此,为了克服上述问题的至少一个方面,本专利技术实施例提出一种kafka集群负载均衡方法,包括以下步骤:
[0004]获取每一个节点当前的网络负载以及每一个节点下的数据盘当前的读写负载、当前的容量负载和当前的主题分区负载;
[0005]基于所述当前的网络负载、当前的读写负载、当前的容量负载和当前的主题分区负载中的一个或多个判断是否触发调整当前的主题创建配置策略;
[0006]响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡。
[0007]在一些实施例中,获取每一个节点当前的网络负载,进一步包括:
[0008]利用预设的过滤项获取集群中的每一个节点的入站速率和出站速率以得到所述每一个节点的网络负载。
[0009]在一些实施例中,获取每一个节点下的数据盘当前的读写负载,进一步包括:
[0010]利用预设的过滤项获取多个所述主题的数据的读写速率,并将与同一个数据盘对应的若干个主题的数据的读写速率累加以得到所述同一个数据盘的读写负载。
[0011]在一些实施例中,获取每一个节点下的数据盘当前的容量负载,进一步包括:
[0012]获取所述数据盘保存的每一个主题数据文件中的数据索引存储的信息大小字段以得到所述主题对应的数据大小,进而得到所述容量负载。
[0013]在一些实施例中,获取每一个节点下当前的主题分区负载,进一步包括:
[0014]获取主题的元信息以得到每一个主题在不同的数据盘中的分区分布信息,根据所述分区分布信息确定每一个数据盘内的主题分区负载。
[0015]在一些实施例中,响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡,进一步包括:
[0016]根据集群的业务场景,确定网络负载指标以及读写负载指标、容量负载指标和主题分区负载指标的优先级;
[0017]根据所述优先级确定所述主题配置优化规则。
[0018]在一些实施例中,响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡,进一步包括:
[0019]分别对所述网络负载指标以及所述读写负载指标、所述容量负载指标和所述主题分区负载指标设置阈值;
[0020]响应于所述当前的网络负载以及所述当前的读写负载、所述当前的容量负载和所述当前的主题分区负载中的一个或多个大于阈值,触发调整当前的主题创建配置策略。
[0021]基于同一专利技术构思,根据本专利技术的另一个方面,本专利技术的实施例还提供了一种kafka集群负载均衡系统,包括:
[0022]集群负载感知模块,所述集群负载感知模块配置为获取每一个节点当前的网络负载以及每一个节点下的数据盘当前的读写负载、当前的容量负载和当前的主题分区负载;
[0023]集群均衡规则模块,所述集群均衡规则模块配置为基于所述当前的网络负载、当前的读写负载、当前的容量负载和当前的主题分区负载中的一个或多个判断是否触发调整当前的主题创建配置策略;
[0024]主题配置优化模块,所述主题配置优化模块配置为响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡。
[0025]基于同一专利技术构思,根据本专利技术的另一个方面,本专利技术的实施例还提供了一种计算机设备,包括:
[0026]至少一个处理器;以及
[0027]存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时执行如上所述的任一种kafka集群负载均衡方法的步骤。
[0028]基于同一专利技术构思,根据本专利技术的另一个方面,本专利技术的实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时执行如上所述的任一种kafka集群负载均衡方法的步骤。
[0029]本专利技术具有以下有益技术效果之一:本专利技术提出的方案针对Kafka集群增加检测读写负载、网络负载、主题分区负载、磁盘容量负载的负载感知模块,实时获取集群负载状态,针对集群负载状态,动态调整Kafka主题配置优化规则,降低Kafka集群数据倾斜、单点负载过高、网络阻塞发生的可能性,实现Kafka集群的资源均衡配置、提升集群稳定性。
附图说明
[0030]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
[0031]图1为本专利技术的实施例提供的kafka集群负载均衡方法的流程示意图;
[0032]图2为本专利技术的实施例提供的根据主题配置优化规则进行主题配置优化的流程框图;
[0033]图3为本专利技术的实施例提供的kafka集群负载均衡系统的结构示意图;
[0034]图4为本专利技术的实施例提供的计算机设备的结构示意图;
[0035]图5为本专利技术的实施例提供的计算机可读存储介质的结构示意图。
具体实施方式
[0036]为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本专利技术实施例进一步详细说明。
[0037]需要说明的是,本专利技术实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本专利技术实施例的限定,后续实施例对此不再一一说明。
[0038]需要说明的是,在本专利技术的实施例中,Kafka集群为高吞吐量的分布式发布订阅消息系统;主题:kafka中Topic即为主题,若要使用kafka作为数据分发等功能,需先创建topic,使用topic作为数据订阅消费的对象;Consumer:kafka中数据拉取的操作角色,从指定的主题中获取数据;Producer:kafka中数据写入的操作角色,向指定的主题中写入数据;分区:Partition,kafka topic中概念,为主题单副本中数据分片概念,全部分区下的数据才是一个主题的全部数据;副本:Replication,kafka topic数据副本个数,若主题为2副本,即本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种kafka集群负载均衡方法,其特征在于,包括以下步骤:获取每一个节点当前的网络负载以及每一个节点下的数据盘当前的读写负载、当前的容量负载和当前的主题分区负载;基于所述当前的网络负载、当前的读写负载、当前的容量负载和当前的主题分区负载中的一个或多个判断是否触发调整当前的主题创建配置策略;响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡。2.如权利要求1所述的方法,其特征在于,获取每一个节点当前的网络负载,进一步包括:利用预设的过滤项获取集群中的每一个节点的入站速率和出站速率以得到所述每一个节点的网络负载。3.如权利要求1所述的方法,其特征在于,获取每一个节点下的数据盘当前的读写负载,进一步包括:利用预设的过滤项获取多个所述主题的数据的读写速率,并将与同一个数据盘对应的若干个主题的数据的读写速率累加以得到所述同一个数据盘的读写负载。4.如权利要求1所述的方法,其特征在于,获取每一个节点下的数据盘当前的容量负载,进一步包括:获取所述数据盘保存的每一个主题数据文件中的数据索引存储的信息大小字段以得到所述主题对应的数据大小,进而得到所述容量负载。5.如权利要求1所述的方法,其特征在于,获取每一个节点下当前的主题分区负载,进一步包括:获取主题的元信息以得到每一个主题在不同的数据盘中的分区分布信息,根据所述分区分布信息确定每一个数据盘内的主题分区负载。6.如权利要求1所述的方法,其特征在于,响应于触发调整当前的主题创建配置策略,利用主题配置优化规则对所述当前的主题配置策略进行调整以对主题进行负载均衡,进一步包括:根据集群的业务场景,确...

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

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

1