![DRBD-Ressourcen kommen nicht wieder online - Pacemaker + Corosync](https://rvso.com/image/718124/DRBD-Ressourcen%20kommen%20nicht%20wieder%20online%20-%20Pacemaker%20%2B%20Corosync.png)
Ich verwende DRBD zur Replikation. Zu Testzwecken verwende ich 2 VMs. Mir ist aufgefallen, dass, wenn ich die Netzwerkschnittstelle eines Knotens trenne, dieser in den Standalone-Modus wechselt und nach der erneuten Verbindung nicht in den verbundenen oder WFconnection-Modus zurückkehrt. Gibt es eine Möglichkeit, dies $drbdadm connect r0
mit Pacemaker auszuführen oder etwas Ähnliches?
Meine Konfiguration:
[root@CentOS1 ~]# cat /etc/drbd.d/nfs.res
resource r0 {
syncer {
c-plan-ahead 20;
c-fill-target 50k;
c-min-rate 25M;
al-extents 3833;
rate 90M;
}
disk {
no-md-flushes;
fencing resource-only;
}
handlers {
fence-peer "/usr/lib/drbd/crm-fence-peer.sh --timeout 120 --dc-timeout 120";
after-resync-target "/usr/lib/drbd/crm-unfence-peer.sh";
}
net {
sndbuf-size 0;
max-buffers 8000;
max-epoch-size 8000;
after-sb-0pri discard-least-changes;
after-sb-1pri consensus;
after-sb-2pri call-pri-lost-after-sb;
}
device /dev/drbd0;
disk /dev/centos/drbd;
meta-disk internal;
on CentOS1 {
address 172.25.1.11:7790;
}
on CentOS2 {
address 172.25.1.12:7790;
}
}
Ressourcenstatus nach dem Trennen und erneuten Verbinden mit dem Netzwerk:
[root@CentOS1 ~]#cat /proc/drbd
version: 8.4.10-1 (api:1/proto:86-101)
GIT-hash: a4d5de01fffd7e4cde48a080e2c686f9e8cebf4c build by mockbuild@, 2017-09-15 14:23:22
0: cs:StandAlone ro:Secondary/Unknown ds:UpToDate/Outdated r-----
ns:0 nr:0 dw:0 dr:2128 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
Protokoll:
[root@CentOS2 ~]# cat /dev/kmsg
6,1171,16427206172,-;e1000: enp0s9 NIC Link is Down
3,1172,16427206435,-;e1000 0000:00:09.0 enp0s9: Reset adapter
SUBSYSTEM=pci
DEVICE=+pci:0000:00:09.0
3,1173,16431488757,-;drbd r0: PingAck did not arrive in time.
6,1174,16431488808,-;drbd r0: peer( Secondary -> Unknown ) conn( Connected -> NetworkFailure ) pdsk( UpToDate -> DUnknown )
6,1175,16431489116,-;drbd r0: ack_receiver terminated
6,1176,16431489121,-;drbd r0: Terminating drbd_a_r0
6,1177,16431489277,-;block drbd0: new current UUID A5A2A33E423F0679:0F9B7A2A6938EE77:4471A80A92A109A4:4470A80A92A109A4
SUBSYSTEM=block
DEVICE=b147:0
6,1178,16431489574,-;drbd r0: Connection closed
6,1179,16431489660,-;drbd r0: conn( NetworkFailure -> Unconnected )
6,1180,16431489667,-;drbd r0: receiver terminated
6,1181,16431489669,-;drbd r0: Restarting receiver thread
6,1182,16431489671,-;drbd r0: receiver (re)started
6,1183,16431489712,-;drbd r0: conn( Unconnected -> WFConnection )
6,1184,16431489801,-;drbd r0: helper command: /sbin/drbdadm fence-peer r0
4,1185,16431673341,-;drbd r0: helper command: /sbin/drbdadm fence-peer r0 exit code 5 (0x500)
6,1186,16431673351,-;drbd r0: fence-peer helper returned 5 (peer is unreachable, assumed to be dead)
6,1187,16431673374,-;drbd r0: pdsk( DUnknown -> Outdated )
3,1188,16450060876,-;drbd r0: bind before connect failed, err = -99
6,1189,16450060962,-;drbd r0: conn( WFConnection -> Disconnecting )
4,1190,16461488768,-;drbd r0: Discarding network configuration.
6,1191,16461488824,-;drbd r0: Connection closed
6,1192,16461488855,-;drbd r0: conn( Disconnecting -> StandAlone )
6,1193,16461488860,-;drbd r0: receiver terminated
6,1194,16461488862,-;drbd r0: Terminating drbd_r_r0
Antwort1
Nein, das stimmt nicht. DRBD und Pacemaker wissen nicht wirklich etwas übereinander, abgesehen von den Rückgabecodes der Ressourcenagenten bei bestimmten Aktionen.
Wenn Sie die Schnittstelle, an die DRBD gebunden ist, darunter hervorziehen, wird DRBD gehen StandAlone
. Sie müssen die Ressource danach einfach erneut verbinden: drbdadm connect <res>
--ODER--drbdadm connect all
Das scheint in Ordnung zu sein, wenn man bedenkt, dass Netzwerkschnittstellen normalerweise nicht vollständig verschwinden und dann ohne Eingreifen eines Administrators wieder auftauchen. Wenn Sie testen möchten, was passiert, wenn die Netzwerkkommunikation abbricht (Paketverlust), sollten Sie IP-Tabellenregeln verwenden. Sie werden dann sehen, dass DRBD in den Zustand WFConnection
„Warten auf Verbindung“ wechselt und wieder zurück, Connected
wenn die Regeln entfernt werden.