Kafka kafka-reassign-partitions.sh 命令使用

编辑文件:tmp,内容如下:

{"topics":

[{"topic": "__consumer_offsets"},{"topic": "kafka_topic"}],

 "version":1

}

生成reassign结果:

sh kafka-reassign-partitions.sh --generate --zookeeper localhost:2181 --broker-list 0,1,2,3,4,5 --topics-to-move-json-file  tmp

将生成json结果拷贝到新的文件:tmp1,执行真正reassign操作

sh kafka-reassign-partitions.sh --execute  --zookeeper localhost:2181 --broker-list 0,1,2,3,4,5 --reassignment-json-file tmp1

会在zookeeper下生成一个PERSISTENT节点(哪怕controller切换,也不会删除,从而在新controller启动后,继续进行其未完成操作):/admin/reassign_partitions 里面是tmp1写入的内容,然后controller不断协调各个broker进行操作,完成的部分会从该节点下删除,最终形成tmp1 json中的内容,后将zookeeper上/admin/reassign_partitions节点删除。

你可能感兴趣的:(kafka)