Kafka-之控制器(Controller选举、leader选举)

Kafka-之控制器(控制器选举,leader选举)

1 控制器是什么,如何选举

kafka控制器管理着整个集群中分区以及副本的状态,控制器的选举需要依赖于Zookeeper,在kafka集群启动的时候,会在ZK中创建一个临时节点(EPHEMERAL)/controller,在每个Broker启动的时候,都会先去访问ZK中的这个节点,如果不存在Broker就会则创建这个节点,先到先得称为Controller,其它Broker当访问这个节点的时候,如果读取到brokerid不等于-1,那么说明Controller已经被选举出来了,这个/controller下面的信息为:

[zk: localhost:2181(CONNECTED) 3] get /controller 
{
   "version":1,"brokerid":0,"timestamp"

你可能感兴趣的:(Kafka)