kafka经纪人领导偏斜

问题描述

我有10个节点的kafka集群。kafka代理和zookeeper都在每个节点上运行。最近,我们添加了3个新节点8,9和10,昨天添加了2个节点(2和4)。我有一个包含60个分区和3个复制的主题。在kafka管理器中,brokers Skewed %显示为50,brokers leader Skewed %显示为70。我已经从UI手动重新分配了该分区,并且brokers Skewed %现在为0,但它没有更改brokers leader Skewed % 。我还运行了命令:

$ kafka-preferred-replica-election.sh  --zookeeper localhost:2181 --path-to-json-file test.json

Warning: --zookeeper is deprecated and will be removed in a future version of Kafka.
Use --bootstrap-server instead to specify a broker to connect to.
Created preferred replica election path with ...
Successfully started preferred replica election for partitions Set(..

但是它没有任何改变。我在UI上看到经纪人8和10没有领导者。我如何才能平均地平衡所有经纪人中的领导者?我读到所有代理的群集滚动重启可以解决此问题,但在正常情况下,我无法重新启动生产Kafka群集。

kafka version: 2.3.0
zookeeper version: 3.4.12

添加了kafka manager屏幕截图,并用红色圆圈突出显示了该问题。

kafka manager

enter image description here

我将不胜感激。

解决方法

我能够解决此问题。如果您会仔细查看屏幕截图,则会注意到没有将首选副本(Replicas列的第一项)分配给代理8或10,只有分区37将代理9作为首选副本,因此{{1} }无效。

我已使用Preferred Replica Election(将代理8,9和10在17个分区(6 * 3 -2)中移动到副本0)选项重新组合了首选副本,然后运行Manual Partition Assignments,然后运行{{ 1}}。

希望对其他人有帮助。

注意:最近添加了8,9和10个节点。