ZooKeeper Atomic Broadcast (ZAB) orders and replicates Kafka metadata changes among ZooKeeper servers. A dynamically elected leader coordinates followers, and changes commit after replication. section 9.1.4
Within a ZooKeeper-managed Kafka cluster, ZAB supports:
- Replicating topic-creation requests, partition assignments, and other metadata updates. section 9.1.4
- Requiring a majority acknowledgment; a 2N+1 quorum tolerates up to N failed servers. section 9.1.4
- Coordinating through the active Kafka controller, which communicates with the ZooKeeper leader and distributes updates to brokers. section 9.1.4
Metadata change
When a client requests a topic or configuration change, the request reaches the active controller, which coordinates with the ZooKeeper leader; ZAB replicates the change to followers before commitment. section 9.1.4
Figure 9.6 Various types of communication within a Kafka cluster using ZooKeeper
Use the communication diagram to trace interactions among brokers, the active controller, and the ZooKeeper ensemble. section 9.1.4
