DRBD
konfigurationsdatei
#/etc/drbd.conf
global {
usage-count yes;
}
common {
syncer { rate 10M; }
}
resource data {
protocol C;
handlers {
pri-on-incon-degr "echo o > /proc/sysrq-trigger ; halt -f";
pri-lost-after-sb "echo o > /proc/sysrq-trigger ; halt -f";
local-io-error "echo o > /proc/sysrq-trigger ; halt -f";
outdate-peer "/usr/sbin/drbd-peer-outdater";
}
startup {
}
disk {
on-io-error detach;
}
net {
allow-two-primaries;
after-sb-0pri disconnect;
after-sb-1pri disconnect;
after-sb-2pri disconnect;
rr-conflict disconnect;
}
syncer {
rate 10M;
al-extents 257;
}
on thorin {
device /dev/drbd0;
disk /dev/sda3;
address 172.18.241.29:7788;
meta-disk /dev/sda5 [0];
}
on thrain {
device /dev/drbd0;
disk /dev/sda3;
address 172.18.241.30:7788;
meta-disk /dev/sda5 [0];
}
}
konfigurationsdatei auf andere node kopieren
root@thorin:~# scp /etc/drbd.conf thrain:/etc
auf beiden seiten md kreieren
root@thorin:~# drbdadm create-md data root@thrain:~# drbdadm create-md data
partitionen aktivieren
root@thorin:~# drbdadm up data root@thrain:~# drbdadm up data
eine seite auf master setzen.
root@thorin:~# drbdsetup /dev/drbd0 primary -o
formatieren.
root@thorin:~# mkfs.ext3 /dev/drbd0
Split Brain recovery manuell
Auf dem Secondary Node folgendes ausführen:
drbdadm secondary data drbdadm disconnect data drbdadm -- --discard-my-data connect data
und auf dem Primary Node:
drbdadm connect data
Das System stellt sich dann von selbst wieder her, wenn keine anderen Probleme vorliegen.
Zustand checken
root@reliant:~# drbd-overview 0:galactica-services SyncTarget Primary/Primary Inconsistent/UpToDate C r---- [====>...............] sync'ed: 25.7% (38072/51196)M 1:orion Connected Primary/Primary UpToDate/UpToDate C r----
Hozhammermethode
drbdadm -- --overwrite-data-of-peer primary