A Kafka cluster can have multiple brokers and replicated topics yet still stop serving an application when one location fails. The surviving brokers might lack capacity, the controllers might lose their majority, or every application instance might have been running in the failed location.
High availability comes from designing the complete service to keep working through a defined set of failures. We’ll build a three-zone example and examine its data protection, controller placement, capacity, clients, and recovery process.
The examples assume Apache Kafka 4.3 with KRaft, local broker storage, and three availability zones within one region. The topology is an illustrative design for a stated requirement, not a universal production sizing recommendation.