Apache kafka 卡夫卡什么时候轮换分区负责人?我们有财产来控制它吗?

Apache kafka 卡夫卡什么时候轮换分区负责人?我们有财产来控制它吗?,apache-kafka,Apache Kafka,我想了解卡夫卡多久旋转一次分区引线?我们有任何属性来控制它吗?在创建主题时分配分区负责人。根据卡夫卡文档,分区分配是以循环方式进行的: 我们试图以循环方式平衡集群内的分区,以避免将高容量主题的所有分区聚集在少量节点上。同样地,我们尝试平衡领导权,以便每个节点都是其分区比例份额的领导权 在理想情况下,引线分区不会旋转。但是,在某些情况下,领导者必须移动到另一个代理,例如代理停止和启动以进行维护或更新。然后先导将被转移到另一个同步副本 要管理领导者分区中的这些变化(例如处理不平衡),您有两个选项 选

我想了解卡夫卡多久旋转一次分区引线?我们有任何属性来控制它吗?

在创建主题时分配分区负责人。根据卡夫卡文档,分区分配是以循环方式进行的:

我们试图以循环方式平衡集群内的分区,以避免将高容量主题的所有分区聚集在少量节点上。同样地,我们尝试平衡领导权,以便每个节点都是其分区比例份额的领导权

在理想情况下,引线分区不会旋转。但是,在某些情况下,领导者必须移动到另一个代理,例如代理停止和启动以进行维护或更新。然后先导将被转移到另一个同步副本

要管理领导者分区中的这些变化(例如处理不平衡),您有两个选项

选项1:脚本kafka-preferred-replica-election.sh 此命令行工具可用于帮助将领导力带回主题创建时的副本。有关更多详细信息以及如何使用,请参阅

最简单的例子如下所示。这将触发所有主题的重新分配

kafka-preferred-replica-election.sh——zookeeper本地主机:2181
选项2:使用代理配置自动重新平衡 在代理级别,您有以下配置,可以帮助您引导主题领导者的自动重新平衡:

  • :启用自动引线平衡。后台线程定期检查分区引线的分布,可通过
    leader.disbalance.check.interval.seconds
    配置。如果引线不平衡超过了
    引线不平衡.per.broker.percentage
    ,则会触发将引线重新平衡到分区的首选引线。(默认为
    true

  • :控制器触发分区重新平衡检查的频率。(默认为300)

  • :每个代理允许的领导不平衡比率。如果每个代理的领导余额超过此值,则控制器将触发领导余额。该值以百分比形式指定。(默认为10)