6.3.2.2. 生成重新分配 JSON 文件
将给定主题集的所有分区分配给给定代理集合的最简单方法是使用 kafka-reassign-partitions.sh --generate
命令生成重新分配 JSON 文件。
bin/kafka-reassign-partitions.sh --zookeeper <ZooKeeper> --topics-to-move-json-file <TopicsFile> --broker-list <BrokerList> --generate
<TopicsFile>
是一个 JSON 文件,列出了要移动的主题。它具有以下结构:
{
"version": 1,
"topics": [
<TopicObjects>
]
}
其中 <TopicObjects> 是一个以逗号分隔的对象列表,例如:
{
"topic": <TopicName>
}
例如,将 topic-a
和 topic-b
的所有分区移动到代理 4
和 7
bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --topics-to-move-json-file topics-to-be-moved.json --broker-list 4,7 --generate
其中 topics-to-be-moved.json
包含内容:
{ "version": 1, "topics": [ { "topic": "topic-a"}, { "topic": "topic-b"} ] }