当前位置:   article > 正文

kafka-preferred-replica-election命令详解

kafka-preferred-replica-election

一、kafka-preferred-replica-election使用背景

在创建一个topic时,kafka尽量将partition均分在所有的brokers上,并且将replicas也均分在不同的broker上。

每个partitiion的所有replicas叫做"assigned replicas","assigned replicas"中的第一个replicas叫"preferred replica",刚创建的topic一般"preferred replica"是leader。leader replica负责所有的读写。

但随着时间推移,broker可能会停机,会导致leader迁移,导致机群的负载不均衡。我们期望对topic的leader进行重新负载均衡,让partition选择"preferred replica"做为leader。
 

kafka-preferred-replica-election命令便是用于对Leader进行重新负载均衡

 

二、kafka-preferred-replica-election用法

用法1: 触发对所有的topic Leader进行负载均衡

kafka-preferred-replica-election --zookeeper cdh-002/kafka

用法2: 对某个topic Leader触发负载均衡

  1. kafka-preferred-replica-election --zookeeper cdh-002/kafka --path-to-json-file xx.json
  2. 其中xx.json格式见如下解释:
  3. [root@cdh-003 ~]# kafka-preferred-replica-election
  4. This tool causes leadership for each partition to be transferred back to the 'preferred replica', it can be used to balance leadership among the servers
  5. Option Description
  6. ------ -----------
  7. --path-to-json-file <String: list of The JSON file with the list of
  8. partitions for which preferred partitions for which preferred
  9. replica leader election needs to be replica leader election should be
  10. triggered> done, in the following format -
  11. {"partitions":
  12. [{"topic": "foo", "partition": 1},
  13. {"topic": "foobar", "partition": 2}]
  14. }

三、生产环境常开启topic Leader的自动负载均衡

可通过配置auto.leader.rebalance.enable=true实现topic Leader的自动负载均衡

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/708152
推荐阅读
相关标签
  

闽ICP备14008679号