2016-11-18 2 views
1

Wir haben einen grundlegenden 2-Knoten-Cassandra-Cluster. Beide Knoten führen Version 3.9 mit minimalen Konfigurationen zum Aktivieren von Clustering aus. Einer der Knoten ist falsch Generation zu senden, die die anderen Knoten bewirkt, dass die WarnungCassandra erhielt eine ungültige Klatschgeneration für Peer

WARN [GossipStage:1] Gossiper.java:1146 - received an invalid gossip generation for peer /10.3.185.234; local time = 1479469393, received generation = 1872927836 

Node-1 zeigen, die das Problem diese Ausgabe verursacht von

nodetool gossipinfo 

/10.3.185.234 

generation: 1872927836 

1872927836 Epoche hat, ist ein weit weg Datum (Di, 08. Mai 2029 09:43:56 GMT). Knoten 2 wird das Paket legitim verwerfen. Kann ich irgendwie Knoten 1 reparieren, um die richtige Generation zu senden?

Antwort

4

das Problem wurde behoben, durch den gossip_generation Wert in system.local Wicke von cqlsh

update system.local set gossip_generation = 1479472176 where key='local'; 

Starten Sie den Dienst nach dieser Änderung

0

Ich weiß nicht, mit was es Affekt Einstellung muss manuell aber ein anderer Möglichkeit, es zu beheben, ist es, den gesamten Cluster auf einmal zu starten. Das hätte wahrscheinlich für uns funktioniert. (Gefunden nach unserem Fix).

Die Dokumentation sagt, dass wir mehrere rollende Neustarts machen, bis sie repariert sind (was bei uns nicht funktioniert hat.) Der Vorschlaghammer, den gesamten Cluster neu zu starten, funktionierte jedoch. Alle Generationen wurden angemessen eingestellt.