v1.3 öffnet das Replikationsmodul im Kafka Simulator — die Maschinerie hinter jeder Haltbarkeitsgarantie, die Kafka gibt. Mit 12 neuen Szenarien ist es das bisher größte Paket und bringt das Curriculum auf 45 von 125.
Was in v1.3 steckt
Replikation ist der Ort, an dem Kafkas Garantien konkret werden — und an dem sie verloren gehen können:
- ISR-Mechanik — wie das In-Sync-Replica-Set schrumpft, wenn ein Follower zurückfällt, und wieder wächst, wenn er aufholt, und warum die Mitgliedschaft in diesem Set alles entscheidet.
- Die High Watermark — warum ein Consumer nur bis zur HW lesen darf und warum die HW manchmal stehen bleibt, obwohl der Leader weiter Schreibvorgänge annimmt.
acks=allundmin.insync.replicas— das genaue Verhältnis zwischen beiden: warum ein Producer nach dem Ausfall eines Brokers noch schreiben kann, nach dem zweiten aberNotEnoughReplicasbekommt.- Leader-Wahl — welches Replikat nach einem Ausfall übernimmt und warum es aus der ISR stammen muss.
- Unclean Leader Election — was man tatsächlich verliert, wenn ein nicht synchrones Replikat Leader werden darf, Offset für Offset beobachtet.
Dies ist das Modul, für dessen Sichtbarmachung der ganze Simulator gebaut wurde. Das interessante Verhalten steckt vollständig in den Übergängen — vor und nach dem Ausfall eines Brokers, vor und nach einer ISR-Änderung — und genau die kann ein Whiteboard nicht zeigen.
Neu im freien Spiel: die Active/Passive-Topologie
v1.3 öffnet außerdem die erste Multi-Datacenter-Form in der Sandbox des freien Spiels: Active/Passive — zwei Regionen, ein einseitiger Mirror und ein Failover, das man auf Zuruf auslöst. Es ist der einfachste Weg zu sehen, wie Replikation aufhört, eine Angelegenheit innerhalb eines Clusters zu sein.
Das DR-Curriculum — MirrorMaker 2, Offset-Übersetzung, Failback — kommt später, in v1.8. Dies hier ist die Sandbox, bewusst früh freigeschaltet: Mit der Form zu spielen lohnt sich lange bevor die Szenarien erscheinen, die sie erklären. Jedes der nächsten drei Pakete legt eine weitere Topologie nach.
Warum Replikation der Anker ist
Producer und Consumer sitzen auf diesen Garantien; Storage, Transaktionen und Multi-DC erweitern sie. Sobald man die ISR wandern und die High Watermark halten sieht, ist der Rest des Curriculums eine Reihe von Variationen über ein System, das man bereits versteht.
Öffnen Sie den Simulator, setzen Sie RF=3 und min.insync.replicas=2 — und fangen Sie an, Broker zu killen.