Zum Hauptinhalt springen
Zuverlässigkeit & Fehlerbehandlung

Ehrliche Mitgliedschaft unter Ausfällen

Ausfälle gut zu erkennen ist der schwierige Teil des Clusterings. Nodus nutzt Heartbeats, Erreichbarkeit pro Peer und ein Verdachtsfenster, um einen langsamen Node von einem verschwundenen zu unterscheiden – und wählt dann deterministisch neu, sodass der Cluster ohne Flattern und ohne Leadership-Lücke heilt.

Ausfallerkennung

„Langsam“ von „weg“ unterscheiden

Entfernt man zu eifrig, wirkt eine GC-Pause wie ein Absturz; entfernt man zu spät, hängen Clients an einem toten Node. Nodus ist um diesen Zielkonflikt herum gebaut.

Heartbeats

Mitglieder tauschen Heartbeats über den persistenten Transport aus. Ein Peer, der weiter antwortet, ist gesund; einer, der verstummt, wird zum Verdachtskandidaten – ohne separaten Health-Check-Dienst.

Erreichbarkeit pro Peer

Die Erreichbarkeit wird pro Peer verfolgt, sodass eine Partition, die eine einzelne Verbindung isoliert, nicht den ganzen Cluster verurteilt. Jedes Mitglied beurteilt jeden Peer anhand seiner eigenen Evidenz.

Ein Verdachtsfenster

Bevor ein verstummter Peer entfernt wird, gilt er für ein Fenster (standardmäßig etwa 20 Sekunden) als „verdächtig“. Dieses Fenster unterscheidet „langsam“ von „weg“ und verhindert, dass ein kurzer Aussetzer die Mitgliedschaft flattern lässt.

Geordneter Austritt vs. harter Kill

Ein sauberes Herunterfahren sendet einen Austritt per Broadcast, sodass Peers den Node sofort entfernen und das Failover schnell erfolgt. Ein harter Kill sendet kein solches Signal, daher entfernt ihn schließlich das Verdachtsfenster.

Selbstheilung

Was passiert, wenn ein Node stirbt

Failover geschieht automatisch. Die Überlebenden erkennen den Verlust, wählen bei Bedarf neu und nehmen den Node wieder auf, wenn er zurückkehrt – alles ohne Eingriff eines Operators.

Erkennen

Heartbeats eines Peers bleiben aus; nach dem Verdachtsfenster wird er für verschwunden erklärt und aus dem Roster entfernt.

Neu wählen

War der verlorene Peer der Leader, führt jeder Überlebende dieselbe deterministische Wahl durch und die Epoch steigt – so gibt es nie eine Lücke ohne Koordinator und nie zwei, die die Rolle beanspruchen.

Wieder aufnehmen

Kehrt der Node zurück, tritt er aus seinem Peer-Set erneut bei, ein Beitritts-Event wird ausgelöst und Roster und Leadership stabilisieren sich wieder.

Die entscheidende Garantie

Keine zwei Leader, keine leaderlose Lücke

Weil Leadership von einer monoton steigenden Epoch getragen wird und jeder Überlebende dieselbe Wahl über dieselben erreichbaren Peers durchführt, konvergiert das Failover auf genau einen neuen Leader mit höherer Epoch. Eine Nachricht eines abgesetzten Leaders ist erkennbar veraltet, sodass Split-Brain-Ansprüche abgewiesen statt ausgeführt werden.

Auf Ihre Last abgestimmt

Schnell, wo es zählt

  • Geordnete Austritte werden sofort entfernt – kein Warten auf einen Timeout
  • Das Verdachtsfenster (Default ca. 20 s) fängt vorübergehende Aussetzer ab
  • Neuwahl ist eine lokale Berechnung, keine mehrstufige Abstimmung
  • Das Disposen verlässt den Cluster sauber, sodass Peers sich schnell erholen

Resilienz, die Sie nicht selbst bauen müssen

Heartbeats, Verdacht und Failover – eingebettet, sodass Ihr Dienst sie einfach bekommt.