kafka leader倾斜问题一解
最近做一组kafka集群的迁移,但是版本比较老,还是0.10.1.1这个版本,但是迁移做完之后用kafka manager看到居然有leader skewed了,但是这个问题其实不大,不会影响使用。
这里我们看到broker 0居然在7个partition作为leader,而broker 3就3个partition作为leader。
看下面详细的我们就可以看到确实如此。
这里我们实际操作就分为2步。
第一步是使用kafka-reassign-partitions.sh来迁移
生成一个对应的move.json
1 | {"version":1, |
执行一下迁移,因为对应的broker没有变化,只是前后顺序变了,所以非常快
1 | ./kafka-reassign-partitions.sh -zookeeper timo-zk1:2181 --reassignment-json-file move.json --execute |
查看迁移的进度
1 | ./kafka-reassign-partitions.sh -zookeeper timo-zk1:2181 --reassignment-json-file move.json --verify |
这样执行完本来以为好了,但是发现倾斜还是存在,因为kafka的leader没有变化,所以要重新改下leader
生成一个move-leader.json
1 | {"partitions":[ |
1 | ./kafka-preferred-replica-election.sh --zookeeper timo-zk:2181 --path-to-json-file move-leader.json |
好了,收工。