Kafka KRaft(Kafka Raft Metadata mode)是 Kafka 架构演进史上最重要的一次变革,最初在 KIP-500 中提出。它的核心思想是移除对 ZooKeeper 的依赖,将元数据管理内置到 Kafka 内部,使用基于 Raft 共识算法的变体来管理集群元数据。 下面将详细解析 KRaft 的架构设计,以及它究竟解决了 ZooKeeper 时代的哪些核心痛点。 --- 一、 KRaft 模式的架构设计 在 KRaft 模式下,Kafka 的元数据不再存储在外部系统(ZooKeeper),而是存储在 Kafka 内部的一个特殊的内部主题(Topic)中,名为 。 KRaft 架构的核心组件和运作机制如下: 1. 节点角色分离 在 KRaft 模式下,Kafka 进程(Node)可以承担不同的角色,通过 参数配置: Controller(控制器): 负责管理集群元数据(Topic 创建、分区分配、Leader 选举等)。多个 Controller 节点组成一个 Quorum(仲裁核心),使用 Raft 算法选举出一个 Active Controller。...