Formation Apache Kafka : de zéro à la prod

Durabilité Kafka : acks, réplication et min.insync.replicas — chapitre 8

Comprendre en profondeur les mécanismes de réplication, d’acks, de leadership, d'ISR, de min.insync.replicas et de flush pour garantir une durabilité sans…

Réservé aux abonnés

Contexte

La durabilité Kafka repose sur trois réglages : acks côté producteur, le facteur de réplication et min.insync.replicas côté topic. La durabilité est une propriété critique dans les systèmes event-driven. Kafka garantit qu’un message ne disparaît pas, même en cas de :

  • panne de broker,
  • coupure réseau,
  • redémarrage du leader,
  • crash du producteur ou du consommateur.

Cette garantie repose sur plusieurs piliers :

  • réplication des partitions,
  • groupe ISR,
  • acknowledgements configurés,
  • durabilité disque (fsync, flush),
  • politiques de leadership.

Ce chapitre décompose ces mécanismes et fournit une méthodologie pour obtenir une durabilité *réelle* et non théorique.

Lexique

Durabilité

Garantie que les messages ne seront jamais perdus, même après crash.

ACK

Confirmation envoyée au producteur quand un message est bien répliqué.

Replication Factor

Nombre de copies d’une partition sur différents brokers.

ISR (In-Sync Replicas)

Réplicas à jour, capables de devenir leader sans perte.

min.insync.replicas

Nombre minimal de réplicas synchronisés pour accepter un message.

unclean.leader.election

Politique qui autorise ou interdit un leader non synchronisé (dangereux).

Diagramme

Producteuracks=allLeader · B1écrit le lotFollower · B2dans l’ISRFollower · B3hors ISR (en retard)copieack quand B1 + B2ont le lotAvec min.insync.replicas = 2ISR = 3écriture acceptéeISR = 2écriture acceptéeISR = 1écriture refuséeUne donnée confirmée n’est perdue que si 2 machines meurent en même tempsunclean.leader.election.enable=false : jamais de leader choisi hors de l’ISR
Schéma acks=all, ISR et min.insync.replicas

La suite de cette leçon est réservée aux abonnés

Les 3 premières leçons de chaque formation sont gratuites. Débloquez la suite pour continuer.