Zookeeper

  • Zookeeper manage les brokers (garde la liste complète)
  • Zookeeper aide à l’élection du leader des partitions
  • Zookeeper envoie des notifications à Kafka en cas de changements (new topic, broker dies, broker comes up, delete topics …)
  • Kafka 2.x ne peut pas fonctionner sans Zookeeper
  • Kafka 3.x can fonctionner dans Zookeeper (KIP-500) en utilisant Kafka Raft à la place
  • Kafka 4.x fonctionnera sans Zookeeper
  • Zookeeper fonctionne avec un nombre impair de serveurs (1, 3, 5, 7)
  • Zookeeper a un leader (celui qui effectue les écritures), le reste des serveurs sont des followers (ceux qui lisent)
  • Zookeeper ne stocke pas les offsets des consumers (Kafka > v0.10)

Kafka Zookeeper

Pourquoi Zookeeper

  • Avec les brokers Kafka ?
    • Attendre Kafka v4 pour se passer de Zookeeper en production
  • Avec les clients Kafka ?
    • A travers le temps, les clients Kafka ont migré la CLI pour utiliser les brokers et non zookeeper
    • Depuis Kafka v2.2, kafka-topics.sh CLI utilise les brokers à la place des zookeepers