Wie kann ich diesen nicht erreichbaren Knoten loswerden
? Wenn Sie einen Knoten ersetzen möchten, müssen Sie das Token des neuen Knotens normalerweise auf (failure node's token) - 1
setzen und es dann bootstrappen lassen. Ab 1.0 gibt es jetzt ein Flag, das Sie beim Start angeben können, um einen toten Knoten zu ersetzen : "cassandra.replace_token=".
Da Sie den neuen Knoten bereits mit demselben Token hinzugefügt haben, gibt es einen zusätzlichen Schritt:
(failure node's token) - 1
nach nodetool move
nodetool removetoken <failed node's token>
von einem der up-Knoten aus nodetool cleanup
auf jedem Knoten Dies sind im Grunde die vor 1.0 Anweisungen zum Ersetzen eines toten Knotens mit das zusätzliche Token verschieben.
Ich hatte das gleiche Problem und löste es mit removenode
, was es nicht erforderlich macht, das Knoten-Token zu finden und zu ändern.
Ermitteln Sie zuerst die Knoten-UUID:
%Vor%Wie Sie sehen können, sind die .201 und .202 tot und in einem anderen Netzwerk. Diese wurden zu .91 und .92 ohne ordnungsgemäße Außerbetriebnahme und Wiederinbetriebnahme geändert. Ich arbeitete an der Installation des Netzwerks und machte ein paar Fehler ...
Zweitens entfernen Sie die .201 mit dem folgenden Befehl:
%Vor%(in älteren Versionen wurde nodetool entfernt ...)
Aber genau wie für nodetool removetoken ...
blockiert es ... (siehe Kommentar von samarth in psandord antwort) Es hat jedoch einen Nebeneffekt, es setzt diese UUID in eine Liste von Knoten, die entfernt werden sollen. Als nächstes können wir die Entfernung mit:
(in älteren Versionen wurde nodetool entfernt ...)
Nun akzeptiert der Knoten den Befehl und sagt mir, dass er den ungültigen Eintrag entfernt:
RemovalStatus: Token entfernen (-9136982325337481102). Warten auf Replikationsbestätigung von [/192.168.2.91,/192.168.2.92].
Wir sehen auch, dass es mit den zwei anderen Knoten kommuniziert, die oben sind, und daher dauert es ein wenig, aber es ist immer noch ziemlich schnell.
Als nächstes zeigt ein nodetool status
den .201-Knoten nicht an. Ich wiederhole mit .202 und jetzt ist der Status sauber.
Danach können Sie auch eine Bereinigung ausführen, wie in psanford answer erwähnt:
%Vor%Die Bereinigung sollte auf allen Knoten nacheinander ausgeführt werden, um sicherzustellen, dass die Änderung vollständig berücksichtigt wird.
Tags und Links amazon-ec2 cassandra cluster-computing cassandra-0.7