Controller
A Kafka controller is a server role that manages cluster metadata and coordinates partition, replica, and leader state.
Apache Kafka in Action
A Kafka controller is a broker designated to manage partition and replica state, including partition assignments and leader selection.
- How it is used
- Uses the controller to coordinate partition assignments, leader selection and recovery when brokers fail.
- How deep it goes
- Explains active and standby controllers, failure takeover and deployment counts, but does not detail the election protocol.
- Examples
- Traces a failed partition leader through controller-triggered election, client metadata refresh and reconnection.
- What you can do after
- Operate/configure it by choosing one controller-broker for local development or three or five for failure tolerance.
Kafka for Architects
A KRaft controller is a Kafka controller implementation that uses the Raft consensus protocol to manage cluster metadata and coordination.
- How it is used
- Coordinates Kafka metadata, broker health, leadership, and cluster availability as part of the platform’s control plane.
- How deep it goes
- Explains active-controller failover, metadata replication, heartbeat monitoring, partition-scale implications, and upgrade sequencing.
- Examples
- Uses a broker-controller cluster diagram, heartbeat-based failure detection, enterprise deployment planning, and rolling upgrade sequencing.
- What you can do after
- Operate/configure controller placement, quorum planning, failure expectations, partition-scale decisions, and rolling upgrades.
Related concepts
- KRaftimplements · KRaft is Apache Kafka’s Raft-based metadata-management mode, using an internal controller quorum instead of ZooKeeper.
- leader electionuses · Leader election is a distributed coordination process that selects one eligible participant to act as leader or coordinator.
- in-sync replicauses · An in-sync replica is a Kafka partition replica sufficiently caught up with its leader to remain eligible for failover.
- Kafka clusterpart of · A Kafka cluster is a group of Kafka brokers that collectively store, distribute, and serve event streams.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.

