多节点kafka集群中的主节点

时间:2016-04-11 20:45:39

标签: apache-kafka

我正在尝试设置多节点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

1 个答案:

答案 0 :(得分:8)

Kafka没有" master"和"奴隶"关于其代理的节点(与Apache Hadoop,Spark或Storm等相关技术不同)。 "可以说,所有经纪人都是平等的#34;所以这是个好消息 - 你不需要配置任何特别的东西!您需要做的就是启动三个代理流程*,他们将透明地弄清楚如何合作。

是的,有一个leaders and followers for topic partitions/replicas的概念,但所有这些都是在幕后为您自动管理的。此外,领导者/跟随者分配是动态的,并且可能在运行时发生变化。例如,如果代理B1是分区P8的当前领导者而代理B1随后崩溃,那么作为分区P8的关注者的其中一个代理将自动成为被选为P8的新领导者(比如经纪人B3)。一旦经纪人B1再次活着,它通常会成为新选出的领导人B3关于分区P8的追随者。

*我假设这些进程将在不同的机器上运行,否则(即如果所有三个代理进程在一台机器上运行),您必须为每个进程分配不同的port设置。