2016-04-05 9 views
1

Ich habe aktualisiert auf Ejabberd 16.03 und es als Elixir Projektabhängigkeit eingerichtet (wie in: https://blog.process-one.net/how-to-use-ejabberd-as-an-elixir-application-dependency/). Dann habe ich einen Cluster von drei Knoten (node1, node2, node3) eingerichtet, wo Knoten 2 und 3 laufen: ejabberd_cluster.join "node1".Ejabberd 16.03 mit Elixir, Knoten bleibt hängen, wenn der erste Knoten ausgefallen ist

Die Sache ist, dass wenn ich Knoten 1 und 3 nach unten setze, dann node2 herunter und versuche, node2 wieder zu laufen, funktioniert es nicht.

Ich habe gelesen: ejabberd clustering, Slave doesn't work when master goes down, aber mit Ejabberd 14 und Erlang, das Problem ist nicht passiert.

Ich weiß, dass Mnesia so verhält, aber dann, warum es vor dem Upgrade funktionierte?

Antwort

2

In der Tat, das erwartete und beabsichtigte Verhalten von Mnesia, wie Sie darauf hinweisen, ist, dass Sie entweder den Knoten in umgekehrter Reihenfolge oder Force Master starten müssen.

Mnesia hat immer so gearbeitet und das Verhalten hat sich seit der ersten Veröffentlichung von ejabberd mit Clustering vor mehr als 10 Jahren nicht geändert.

In Ihrem Fall ist es nicht korrekt, dass Sie node2 zuletzt stoppen und erst Knoten 2 starten. Es gibt keinen Grund dafür, dass Sie nicht weiterkommen, so dass Sie entweder ein anderes Problem haben oder Ihre vorherigen Cluster-Knoten nicht ordnungsgemäß heruntergefahren wurden, als Sie Knoten 2 gestoppt haben.

+0

Das ist genau das Problem. Aus irgendeinem Grund sind zwei Knoten ausgefallen (nicht absichtlich), dann habe ich den linken Knoten gelöscht und versucht, ihn neu zu starten, aber er blieb stecken, er konnte keine Verbindung zum Cluster herstellen. Also, in diesen Fällen, wenn der Knoten abrupt abbricht, wie kann ich Cluster-Integrität erhalten. Vielen Dank im Voraus, @ mickaël-rémond, für Ihre Antwort. – lbernal

+1

Die verbleibenden Knoten werden überlastet, wenn sie nicht in der Lage sind, den gesamten Verkehr allein zu bewältigen. Wenn Sie sicher sein wollen, dass Ihr System in Ordnung ist, ist es möglicherweise eine zunehmende Redundanz. –

Verwandte Themen