Split Brain repair
Bei einem Split Brain ist das Primary / Primary konstrukt auseinander gebrochen und man muß sich entscheiden, welche Seite man zum Master macht bzw. welche Seite die aktuellsten Daten hat.
Erkennen kann man den Split Brain durch das Kommando drbd-overview. Im Idealfall sieht es so aus:
drbd-overview 0:nfs_data/0Connected Primary/Primary UpToDate/UpToDate C r----- /drbd ocfs2 199G 13G 187G 7%
im Fehlerfall:
cs:StandAlone cs:WFConnection
Alternativ kann man auch ein grep aufs Syslog machen
grep -i "split-brain" /var/log/syslog
als Ausgabe erhält man:
Split-Brain detected, dropping connection!
Ich entscheide mich, daß palle-02 der aktuellere ist und pille-01 neu synchronisert werden muß.
Vorgehensweise zur Beseitigung des Split Brain.
auf pille-01 den NFS Server stoppen
service nfs-kernel-server stop
DRBD Device lösen, umount
umount /drbd
DRBD Device gerade ziehen
drbdadm secondary nfs_data
Resource trennen
drbdadm disconnect nfs_data
Alle Änderungen wegschmeißen
drbdadm connect --discard-my-data nfs_data
Primary / Primary Mode wiederherstellen
Auf palle-02 folgendes ausführen
drbdadm primary nfs_data drbdadm connect nfs_data
Die Replikation überwachen mit
drbd-overview
oder mit
cat /proc/drbd
Nachdem die Replikation vollständig abgeschlossen ist, den Slave (pille-01) auch wieder zum Primary machen
drbdadm primary nfs_data
Mount wiederherstellen und den NFS Server starten
mount /drbd service nfs-kernel-server start
That’s all, DRBD up and running, feel free to change and play with the configs 🙂