调整partiton
调整partition可以直接执行如下命令:
1 |
./kafka-topics.sh --alter --topic topicName --zookeeper $ZK_HOST_NODE --partitions partitionNum |
注意替换topicName、$ZK_HOST_NODE和partitionNum三个参数。
调整replica factor
调整replica-factor需要先创建一个json描述文件replica.json,大致如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
{ "version": 1, "partitions": [ { "topic": "topicName", "partition": 0, "replicas": [ 1, 2 ] }, { "topic": "topicName", "partition": 1, "replicas": [ 2, 3 ] }, { "topic": "topicName", "partition": 2, "replicas": [ 3, 4 ] } ] } |
在描述文件中说明分区和副本所在broker的Id的映射。
而后在replica.json所在的位置执行如下命令:
1 |
$KAFKA_HOME/bin/kafka-reassign-partitions.sh --zookeeper $ZK_HOST_NODE --reassignment-json-file replica.json --execute |
另外,kafka-manager是个好东西,可以直接在界面上完成partiton数目的调整。可惜不能调整replica-factor。
#####
发表评论