我的Kafka群集存在问题 . 我有3个代理,因此当我停止代理1(例如)时,每个主题分区与领导者1在副本配置中使用seconde代理更改其领导者 . 所以这是好的行为,它运作良好 .
但是当我重新启动代理1时,我需要执行:
./kafka-preferred-replica-election.sh --zookeeper myHost
因为现在的领导者是另一个副本 .
所以我的问题是:有一种方法可以配置Kafka自动执行吗?
谢谢
我假设您的默认值(当所有经纪人都在运行时)分配是 balancer 的,并且首选的领导者是均匀分布的 .
是的,当重新启动代理时,Kafka可以自动重新选择所有分区的首选领导者 . 这实际上是默认启用的,请参阅 auto.leader.rebalance.enable .
auto.leader.rebalance.enable
在重新启动经纪人后,Kafka可以采取 leader.imbalance.check.interval.seconds 来触发重选 . 默认为5分钟 . 所以也许你没等多久!
leader.imbalance.check.interval.seconds
还有 leader.imbalance.per.broker.percentage ,它定义了允许的非首选领导者的百分比 . 默认为10% .
leader.imbalance.per.broker.percentage
有关这些配置的完整详细信息,请参阅Kafka网站上的broker config section .
1 回答
我假设您的默认值(当所有经纪人都在运行时)分配是 balancer 的,并且首选的领导者是均匀分布的 .
是的,当重新启动代理时,Kafka可以自动重新选择所有分区的首选领导者 . 这实际上是默认启用的,请参阅
auto.leader.rebalance.enable
.在重新启动经纪人后,Kafka可以采取
leader.imbalance.check.interval.seconds
来触发重选 . 默认为5分钟 . 所以也许你没等多久!还有
leader.imbalance.per.broker.percentage
,它定义了允许的非首选领导者的百分比 . 默认为10% .有关这些配置的完整详细信息,请参阅Kafka网站上的broker config section .