对于整个kafka的集群,基本是使用Zookeeper实现的,每当一个broker启动的时候,会将自己在Zookeeper中注册

注册包含的属性包含:

Listener_security_protocol_map,指定通信协议

Endpoints, 端口列表

Rack,机架信息,方便分配副本的时候,分配到多个机架上.

Host: broker主机名或者IP

Port: broker端口号

Timestamp:启动时间.

而注册信息保存在ZK的一个临时节点上,利用临时节点是否存在,判断broker的状态.

而Zk上不仅保存了broker的基本信息,还包括了其他的一些集群信息

图片

其中/broker保存了集群的信息,topic信息

/controller,保存了controller组件

/admin 保存管理脚本的数据结果

/isr_change_notification,保存ISR列表变化的分区列表

/config 保存了Kafka集群下的配置信息,可能每个topic有自己的配置,就保存在/config/topics/<topic>

/cluster 保存了Kafka集群的简要信息

/controller_epoch,保存controller组件的版本号,来隔离无效的controller请求.

发表评论

邮箱地址不会被公开。 必填项已用*标注