DRBD

Aus xinux.net
Zur Navigation springen Zur Suche springen

konfigurationsdatei

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;
        }
}

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