Kafka 如何在代理之间分配主题分区

How Kafka distributes the topic partitions among the brokers

我在 3 个不同的 VM 中有 3 个 Kafka 代理,另外还有一个 运行 Zookeeper。我现在创建一个包含 8 个分区的主题。生产者将消息推送到创建的 "topic" 上的这些代理组。

  • 当你创建一个新的主题时,Kafka 会按照现有分区数量最少的代理首先使用的方式放置分区和副本,并且同一分区的副本在不同的代理上。

  • 添加新代理时,它会用于新分区(因为它的现有分区数量最少),但不会自动将现有分区平衡到新代理。您可以使用副本重新分配工具将分区和副本移动到新代理。

  • 是的,您可以向现有主题添加分区。