|
|
| (4 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) |
| Zeile 1: |
Zeile 1: |
| ==Minimale Konfigurationsdatei==
| | *[[Hochverfügbares NFS-System mit DRBD, Pacemaker und Corosync auf 2 Nodes]] |
| <source lang="bash">
| | *[[DRBD old Stuff]] |
| global { usage-count yes; }
| |
| common {
| |
| syncer { rate 100M; }
| |
| protocol C;
| |
| }
| |
| resource data {
| |
| device /dev/drbd0;
| |
| meta-disk internal;
| |
| on cp1 {
| |
| disk /dev/sdb;
| |
| address 10.0.0.1:7788;
| |
| }
| |
| on cp2 {
| |
| disk /dev/sdb;
| |
| address 10.0.0.2:7788;
| |
| }
| |
| }
| |
| </source>
| |
| | |
| <!---
| |
| <source lang="bash">
| |
| global {
| |
| usage-count yes;
| |
| }
| |
| common {
| |
| syncer {
| |
| rate 10M;
| |
| }
| |
| 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 {
| |
| after-sb-0pri disconnect;
| |
| after-sb-1pri disconnect;
| |
| after-sb-2pri disconnect;
| |
| rr-conflict disconnect;
| |
| }
| |
| }
| |
| resource data {
| |
| device /dev/drbd0;
| |
| meta-disk internal;
| |
| on emi {
| |
| disk /dev/sdd;
| |
| address 10.0.0.1:7788;
| |
| }
| |
| on lilly {
| |
| disk /dev/sdb;
| |
| address 10.0.0.2:7788;
| |
| }
| |
| }
| |
| </source>
| |
| | |
| #/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 data
| |
| =Nützliche Kommandos für drbdadm=
| |
| Der Befehl drbdadm ist vergleichbar mit mdadm bei Softraids. Er kann mit verschiedenen Parametern dazu benutzt werden, DRBD-Devices wie oben bereits gezeigt zu erstellen, aber auch zu ändern, zu (de-)aktivieren oder zu löschen.
| |
| ==Volle Neusynchronisation==
| |
| von /dev/drbd0 mittels der DRBD-Ressource 'home-data' (Status in /proc/drbd)
| |
| drbdadm attach home-data
| |
| | |
| ==Trennen der Verbindung von Laufwerk und DRBD-Ressource:==
| |
| drbdadm detach home-data
| |
| ==Verbinden des DRBD-Treibers mit dem anderen Node:==
| |
| drbdadm connect home-data
| |
| ==Bestehende DRBD-Verbindung zum anderen Node trennen:==
| |
| drbdadm disconnect home-data
| |
| ==Masterrolle agbgeben:==
| |
| drbdadm secondary home-data
| |
| ==Masterrolle übernehmen:==
| |
| drbdadm primary home-data
| |
| ==Übernahme von Änderungen an /etc/drbd.conf:==
| |
| drbdadm adjust home-data
| |
| ==Statusabfrage der Verbindung:==
| |
| drbdadm role home-data
| |