Apache Kafka entfernt die Abhängigkeit von ZooKeeper
(confluent.io)-
Da ZooKeeper als externer Metadatenspeicher verwendet wird, entstehen Probleme wie Redundanz, Ineffizienz und Einschränkungen bei der Skalierbarkeit
-
KIP-500: "Kafka on Kafka"
→ Metadaten werden direkt innerhalb von Kafka verwaltet und in Partitionen gespeichert
→ Metadaten werden als Log behandelt
→ Schnellere Erstellung/Löschung von Topics: Anders als bei ZooKeeper endet dies mit einer O(1)-Operation zum Anlegen eines neuen Topics in der Metadaten-Partition
→ Ein einzelner Cluster kann mehr als eine Million Partitionen unterstützen
- Roadmap
→ Es gibt noch Verwaltungstools, die direkt mit ZooKeeper kommunizieren. Dafür sollen ersetzende APIs bereitgestellt werden
→ Da eine Abhängigkeit zwischen Metadaten-Partition und Controller entsteht, soll in KIP-595 mit dem Raft-Protokoll ein Self-managed metadata quorum implementiert werden
→ KIP-500-Modus zum Ausführen von Kafka ohne ZooKeeper: Anfangs ist die vollständige Unterstützung noch unvollständig, daher wird ZooKeeper im Legacy-Modus zunächst weiterhin mitverwendet
→ KIP-500 ist ein "Bridge Release". Es handelt sich um ein Zwischen-Upgrade, das eine Migration ohne Downtime zu einer Version nach KIP-500 vorbereitet, in der die ZooKeeper-Unterstützung vollständig entfällt. Außerdem wird ein weiteres Upgrade auf die tatsächlich ZooKeeper-freie Version unterstützt
1 Kommentare
Vielen Dank. Ich habe es mit Interesse gelesen.