首页 笔记 图片 查字 
所属分类:Kafka
浏览:56
内容:

broker在zk中的存储信息:
在线broker id集合
分区leader和isr队列
controller辅助选举leader的存储信息

在zookeeper中的目录信息:
/brokers
/broker/ids/[0...N]   临时znode,存储所有的broker节点的broker.id值(全局不可重复)
/broker/topics/  持久znode,存储所有的topic注册信息
/brokers/topics/[topic_name]/partitions/[0...N]   持久znode,存储某个topic的partitions所有分区信息,0-N代表partition-id
/brokers/topics/[topic]/partitions/[partitionId]/state   持久znode,存储某个分区的状态信息

/controller  存储Controller控制器所在的kafka broker信息
/controller_epoch   存储着Controller的选举次数,初始为0,每次重新选举后+1,用于防止broker脑裂,无视epoch更低的请求

/consumers
/consumers/[group_id]/ids/   临时znode,存储Consumer的订阅信息,每个consumer都有一个唯一的ID
/consumers/[group_id]/owners/[topic_name]/[partition_id]    临时znode,存储着consumer group对应的各个topic及partition的消费者线程
/consumers/[group_id]/offsets/[topic_name]/[partition_id]    持久znode,存储着consumer group对应的各个topic及partition的消费偏移量

/admin
/admin/reassign_partitions   存储partition重分配信息
/admin/preferred_replica_election   存储最优replica选举信息
/admin/delete_topics   存储近期删除的topic

/isr_change_notification/   存储ISR变更通知信息

新版kafka将消费者的位置信息(offset)保存在kafka内部的topic( __consumer_offsets )里面。