我正在尝试建立一个多节点kafka集群,并拥有以下三个配置文件。但是我怎么知道哪个节点是主节点呢?
broker.id=1
port=9093
log.dir=/data/logs/kafka/kafka-logs-1
在config/server1.properties 中
broker.id=2
port=9093
log.dir=/data/logs/kafka/kafka-logs-2
在config/server2.properties 中
broker.id=3
port=9093
log.dir=/data/logs/kafka/kafka-logs-3
在config/server3.properties 中
Kafka在代理方面没有"主"one_answers"从"节点的概念(与Apache Hadoop、Spark或Storm等相关技术不同)。可以说,"所有经纪人生而平等"。所以这是个好消息——您不需要配置任何特殊的东西!您所需要做的就是启动三个代理程序*,它们将透明地找出如何合作。
是的,主题分区/副本有一个领导者和追随者的概念,但所有这些都是在幕后自动管理的。此外,领导者/追随者的分配是动态的,可能在运行时发生变化。例如,如果代理B1
是分区P8
的当前领导者,并且代理B1
随后崩溃,那么作为分区P8
的追随者的代理之一将自动被选为P8
的新领导者(例如,代理B3
)。一旦代理B1
再次活动,它通常将成为关于分区P8
的新当选的领导者B3
的追随者。
*我假设这些进程将在不同的机器上运行,否则(即,如果所有三个代理进程都在一台机器上运行),您必须为每个进程分配不同的port
设置