What changed
Apache Kafka 4.0 ships without Zookeeper support. The KRaft (Kafka Raft) consensus protocol is now the only mode.
Why this matters
Zookeeper has been a pain point for years:
- Separate cluster to manage and monitor
- Metadata stored in ZK, not Kafka — created sync issues
- Extra failure domain
- More complex ops for small teams
KRaft moves all metadata management into Kafka itself. One less system to run.
Migration path
If you're still on Zookeeper-mode Kafka:
- Upgrade to Kafka 3.x first (supports both modes)
- Run the migration tool:
kafka-zk-to-kraft-migration.sh - Validate in staging
- Upgrade to Kafka 4.0
Kafka 3.9 is the last version supporting Zookeeper mode.
What stays the same
- Client APIs unchanged — producers and consumers don't need updating
- Same config for topics, partitions, replication
- All major connectors (Debezium, MirrorMaker) work with KRaft
Bottom line
If you're on managed Kafka (Confluent Cloud, MSK, Aiven), you're likely already on KRaft. Self-hosted clusters need to plan the migration before upgrading past 3.9.