分区重分配重选leader
2021-12-11 11:53:36 0 举报
分区重分配重选leader流程
作者其他创作
大纲/内容
1、由controller节点监听zk的变动2、处理reassign_partitions节点的数据,将变更的数据写入brokers/topics/{topic}节点3、处理新增副本,发送leaderAndIsr请求4、状态机处理新增副本状态5、更新controllerContext信息为TRS6、判断是否需要重选leader,策略为ReassignPartitionLeaderElectionStrategy7、更新zk及元数据
controller
变更后:{ \"version\
watch
topic_1
admin
reassignPartitionClient
reassignPartitionClient脚本
topic_1-0
ReassignPartitionsCommand
执行脚本:{ \"version\
kafka cluster
broker1
将变更的数据写入zk
写入zk节点数据:{ \"version\
add
根据条件重选leader
KafkaController
write
处理新增副本
reassign_partitions
变更前:{ \"version\
zk
broker3
topics
delete
broker2
brokers
0 条评论
下一页