linux

Kafka中zookeeper的作用是什么

小樊
41
2025-10-23 12:56:15
栏目: 大数据

Kafka中ZooKeeper的传统作用(早期版本,2.8.0之前)
在Kafka早期版本中,ZooKeeper是核心分布式协调服务,承担着保障集群稳定、实现分布式协作的关键功能,具体包括:

1. 集群元数据管理

ZooKeeper作为集中式元数据存储中心,保存了Kafka集群的核心元数据:

2. Controller选举与集群协调

Kafka集群中的Controller是负责管理分区Leader选举、副本同步及Broker上下线的关键角色。ZooKeeper通过临时节点机制确保Controller的唯一性:

3. Broker健康监测

ZooKeeper通过临时节点的心跳机制实时感知Broker状态:

4. Topic配置与动态变更

ZooKeeper存储了Topic的动态配置信息(如分区数、副本因子),支持运行时修改:

5. 消费者组管理与负载均衡

ZooKeeper协助Kafka实现消费者组的协调与负载均衡

6. 分布式一致性保障

ZooKeeper通过ZAB协议(ZooKeeper Atomic Broadcast)实现强一致性,确保Kafka集群元数据变更的全局可见性:

:从Kafka 2.8.0开始,官方推出KRaft模式(基于Raft共识算法),逐步替代ZooKeeper的部分功能(如元数据管理、Controller选举)。Kafka 3.0+版本已完全支持KRaft模式,无需依赖ZooKeeper,但旧版本仍需依赖ZooKeeper运行。

0
看了该问题的人还看了