MariaDB Galera Cluster wiederherstellen

· 1 Minute Lesezeit
MariaDB Galera Cluster wiederherstellen

Ich spiele zur Zeit mit einem MariaDB-Cluster herum der mit Galera läuft. Bisher bin ich damit auch sehr zufrieden. Ein Malheur, was mir allerdings gerade zu Beginn passiert ist, ist dass man am besten nicht alle Server auf einmal herunterfährt. In diesem Fall kommt der Cluster nämlich nach einem Neustart von selbst nicht mehr hoch.

Dies liegt daran, dass die jeweilige Node im Cluster, die im wsrep_cluster_address aufgeführten weiteren Nodes versucht zu erreichen, da allerdings auf keiner MariaDB gestartet ist, schlägt dieser Versuch fehl.  In diesem Moment hat man den Cluster quasi zerstört. Ein Neustart des Galera Clusters ist aber, wenn man erst mal weiß wie, recht trivial.

Lasst euch auf allen Nodes die grastate.dat ausgeben. Diese beinhaltet den aktuellen Stand der jeweiligen Node:

[email protected]:~# cat /var/lib/mysql/grastate.dat
# GALERA saved state
version: 2.1
uuid:    a4675eb2-6ab8-11eb-910e-8e8084de41df
seqno:   22355
safe_to_bootstrap: 0

Dies sieht z.B. bei mir so aus. Die Node mit der höchsten seqno ist am weitesten und somit auf dem neuesten Stand. Dort wird nun ein einfaches galera_recovery ausgeführt. Dadurch sollte safe_to_bootstrap auf 1 springen.

Nun reicht ein einfaches galera_new_cluster. Anders als der Befehl vermuten lässt, erstellt der Befehl in diesem Sinn keinen neuen Cluster, sondern erkennt die Daten des vorhandenen Clusters und startet mit diesen einen neuen.

Anschließend lassen sich ganz normal per systemctl start mariadb die vorhanden Nodes wie gewohnt starten.

Related Articles

Ghost 4.0
· 1 Minute Lesezeit
Synology DSM 7 - Externe Linux-Server sichern
· 3 Minuten Lesezeit
mailcow mit Proxmox Mail Gateway nutzen
· 4 Minuten Lesezeit