A Kafka cluster needs to keep serving applications while its software changes. It also needs a recovery plan for failures that take the entire cluster out of service. Those plans become more demanding when records, consumer progress, and application databases must move together.
Running a second cluster gives you somewhere to recover. Whether recovery works depends on what reached that cluster, which application state survived, and how you transfer responsibility for new work.
We’ll examine safe upgrades, recovery objectives, and replication between independent Kafka clusters. Then we’ll follow an order-processing application through failover and the eventual return to its original region.