DRBD Anleitung · 5 min read · Jan 30, 2026

DRBD 8.3 Dritte Knotenreplikation Mit Debian Etch

DRBD 8.3 Dritte Knotenreplikation Mit Debian Etch

Installations- und Einrichtungsanleitung für DRBD 8.3 + Debian Etch

Die Einrichtung des dritten Knotens

von Brian Hellman

Die kürzliche Veröffentlichung von DRBD 8.3 umfasst jetzt die Funktion Der Dritte Knoten als frei verfügbares Element. Dieses Dokument behandelt die Grundlagen der Einrichtung eines dritten Knotens auf einer Standardinstallation von Debian Etch. Am Ende dieses Tutorials haben Sie ein DRBD-Gerät, das als SAN, iSCSI-Ziel, Dateiserver oder Datenbankserver genutzt werden kann.

Hinweis: LINBIT-Supportkunden können Abschnitt 1 überspringen und die Paket-Repositories nutzen.

LINBIT hat Lösungen für dritte Knoten verfügbar, bitte kontaktieren Sie sie unter sales_us at linbit.com für weitere Informationen.

Vorwort:

Die Einrichtung ist wie folgt:

  • Drei Server: alpha, bravo, foxtrot
  • alpha und bravo sind die primären und sekundären lokalen Knoten
  • foxtrot ist der dritte Knoten, der sich in einem entfernten Netzwerk befindet
  • Sowohl alpha als auch bravo haben Schnittstellen im 192.168.1.x-Netzwerk (eth0) für externe Konnektivität.
  • Eine Crossover-Verbindung besteht zwischen alpha und bravo (eth1) für die Replikation unter Verwendung von 172.16.6.10 und .20
  • Heartbeat stellt eine virtuelle IP von 192.168.5.2 zur Verfügung, um mit dem Disaster-Recovery-Knoten zu kommunizieren, der sich an einem geografisch unterschiedlichen Standort befindet.

Abschnitt 1: Installation der Quelle

Diese Schritte müssen auf jedem der 3 Knoten durchgeführt werden.

Voraussetzungen:

  • make
  • gcc
  • glibc-Entwicklungslibraries
  • flex-Scanner-Generator
  • Header für den aktuellen Kernel

Geben Sie Folgendes an der Kommandozeile als privilegierter Benutzer ein, um diese Abhängigkeiten zu erfüllen:

apt-get install make gcc libc6 flex linux-headers-uname -r libc6-dev linux-kernel-headers

Sobald die Abhängigkeiten installiert sind, laden Sie DRBD herunter. Die neueste Version kann immer unter http://oss.linbit.com/drbd/ bezogen werden. Derzeit ist es 8.3.

cd /usr/src/
wget http://oss.linbit.com/drbd/8.3/drbd-8.3.0.tar.gz

Nachdem der Download abgeschlossen ist:

  • Entpacken Sie DRBD
  • Wechseln Sie in das Quellverzeichnis
  • Kompilieren Sie die Quelle
  • Installieren Sie DRBD

tar -xzvf drbd-8.3.0.tar.gz
cd /usr/src/drbd-8.3.0/
make clean all
make install

Laden und überprüfen Sie nun das Modul:

modprobe drbd
cat /proc/drbd

version: 8.3.0 (api:88/proto:86-89)
GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 erstellt von root@alpha, 2009-02-05 10:36:11

Sobald dies auf jedem der drei Knoten abgeschlossen ist, fahren Sie mit dem nächsten Abschnitt fort.

Abschnitt 2: Heartbeat-Konfiguration

Die Einrichtung eines dritten Knotens bedeutet, DRBD auf DRBD zu stapeln. Eine virtuelle IP wird benötigt, damit der dritte Knoten sich verbinden kann; dafür werden wir eine einfache Heartbeat v1-Konfiguration einrichten. Dieser Abschnitt wird nur auf alpha und bravo durchgeführt.

Installieren Sie Heartbeat:

apt-get install heartbeat

Bearbeiten Sie die Datei authkeys:

vi /etc/ha.d/authkeys

auth 1
1 sha1 yoursupersecretpasswordhere

Sobald die Datei erstellt wurde, ändern Sie die Berechtigungen auf der Datei. Heartbeat wird nicht starten, wenn dieser Schritt nicht befolgt wird.

chmod 600 /etc/ha.d/authkeys

Kopieren Sie die Datei authkeys nach bravo:

scp /etc/ha.d/authkeys bravo:/etc/ha.d/

Bearbeiten Sie die Datei ha.cf:

vi /etc/ha.d/ha.cf
debugfile /var/log/ha-debug
    logfile /var/log/ha-log
    logfacility     local0
    keepalive 1
    deadtime 10
    warntime 5
    initdead 60
    udpport 694
    ucast eth0 192.168.1.10
    ucast eth0 192.168.1.20
    auto_failback off
    node alpha
    node bravo

Kopieren Sie die Datei ha.cf nach bravo:

scp /etc/ha.d/ha.cf bravo:/etc/ha.d/

Bearbeiten Sie die Datei haresources, die hier erstellte IP wird die IP sein, auf die sich unser dritter Knoten bezieht.

vi /etc/ha.d/haresources
alpha IPaddr::192.168.5.2/24/eth0

Kopieren Sie die Datei haresources nach bravo:

scp /etc/ha.d/haresources bravo:/etc/ha.d/

Starten Sie den Heartbeat-Dienst auf beiden Servern, um die virtuelle IP zu aktivieren:

alpha:/# /etc/init.d/heartbeat start
bravo:/# /etc/init.d/heartbeat start

Heartbeat wird die neue Schnittstelle (eth0:0) aktivieren.

Hinweis: Es kann bis zu einer Minute dauern, bis Heartbeat die Schnittstelle aktiviert.

alpha:/# ifconfig eth0:0

eth0:0 Link encap:Ethernet HWaddr 00:08:C7:DB:01:CC
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

Abschnitt 3: DRBD-Konfiguration

Die Konfiguration für DRBD erfolgt über die Datei drbd.conf. Diese muss auf allen Knoten (alpha, bravo, foxtrot) identisch sein. Bitte beachten Sie, dass die Nutzungshäufigkeit auf ja gesetzt ist, was bedeutet, dass es Linbit benachrichtigt, dass Sie DRBD installiert haben. Es werden keine persönlichen Informationen gesammelt. Bitte sehen Sie diese Seite für weitere Informationen:

global { usage-count yes; }

resource data-lower {
  protocol C;
  net {
    shared-secret "LINBIT";
  }
syncer {
    rate 12M;
}

  on alpha {
    device     /dev/drbd1;
    disk       /dev/hdb1;
    address    172.16.6.10:7788;
    meta-disk  internal;
  }

  on bravo {
    device    /dev/drbd1;
    disk      /dev/hdd1;
    address   172.16.6.20:7788;
    meta-disk internal;
  }
}

  resource data-upper {
  protocol A;
  syncer {
    after data-lower;
    rate 12M;
    al-extents 513;
  }
  net {
        shared-secret "LINBIT";
  }
  stacked-on-top-of data-lower {
        device /dev/drbd3;
        address 192.168.5.2:7788; # IP bereitgestellt von Heartbeat
        }

  on foxtrot {
    device     /dev/drbd3;
    disk       /dev/sdb1;
    address    192.168.5.3:7788; # Öffentliche IP des Backup-Knotens
    meta-disk  internal;
  }
}

Abschnitt 4: Vorbereitung der DRBD-Geräte

Jetzt, da die Konfiguration steht, erstellen Sie die Metadaten auf alpha und bravo.

alpha:/usr/src/drbd-8.3.0# drbdadm create-md data-lower

Schreiben von Metadaten…
Initialisierung des Aktivitätsprotokolls
NICHT initialisiertes Bitmap
Neuer drbd-Metadatensatz erfolgreich erstellt.

bravo:/usr/src/drbd-8.3.0# drbdadm create-md data-lower

Schreiben von Metadaten…
Initialisierung des Aktivitätsprotokolls
NICHT initialisiertes Bitmap
Neuer drbd-Metadatensatz erfolgreich erstellt.

Jetzt starten Sie DRBD auf alpha und bravo:

alpha:/usr/src/drbd-8.3.0# /etc/init.d/drbd start
bravo:/usr/src/drbd-8.3.0# /etc/init.d/drbd start

Überprüfen Sie, ob die unteren DRBD-Geräte verbunden sind:

cat /proc/drbd

version: 8.3.0 (api:88/proto:86-89)
GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 erstellt von root@alpha, 2009-02-05 10:36:11
0: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent C r—
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:19530844

Sagen Sie alpha, dass es der primäre Knoten werden soll:

HINWEIS: Wie der Befehl besagt, wird dies alle Daten auf bravo überschreiben: Jetzt ist ein guter Zeitpunkt, um Ihr Lieblingsgetränk zu holen.

alpha:/# drbdadm – –overwrite-data-of-peer primary data-lower
alpha:/# cat /proc/drbd

version: 8.3.0 (api:88/proto:86-89)
GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 erstellt von root@alpha, 2009-02-05 10:36:11
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r—
ns:3088464 nr:0 dw:0 dr:3089408 al:0 bm:188 lo:23 pe:6 ua:53 ap:0 ep:1 wo:b oos:16442556
[==>……………..] sync’ed: 15.9% (16057/19073)M
finish: 0:16:30 speed: 16,512 (8,276) K/sec

Nachdem die Datensynchronisierung abgeschlossen ist, erstellen Sie die Metadaten auf data-upper auf alpha, gefolgt von foxtrot.

Hinweis: Die Ressource ist data-upper und die –stacked-Option ist nur auf alpha aktiv.

alpha:~# drbdadm –stacked create-md data-upper

Schreiben von Metadaten…
Initialisierung des Aktivitätsprotokolls
NICHT initialisiertes Bitmap
Neuer drbd-Metadatensatz erfolgreich erstellt.
Erfolg

foxtrot:/usr/src/drbd-8.3.0# drbdadm create-md data-upper

Schreiben von Metadaten…
Initialisierung des Aktivitätsprotokolls
NICHT initialisiertes Bitmap
Neuer drbd-Metadatensatz erfolgreich erstellt.

Aktivieren Sie die gestapelte Ressource und machen Sie alpha zum primären Knoten von data-upper:

alpha:/# drbdadm --stacked adjust data-upper

foxtrot:~# drbdadm adjust data-upper
foxtrot:~# cat /proc/drbd

version: 8.3.0 (api:88/proto:86-89)
GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 erstellt von root@foxtrot, 2009-02-02 10:28:37
1: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent A r—
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:19530208

alpha:~# drbdadm –stacked – –overwrite-data-of-peer primary data-upper
alpha:~# cat /proc/drbd

version: 8.3.0 (api:88/proto:86-89)
GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 erstellt von root@alpha, 2009-02-05 10:36:11
0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r—
ns:19532532 nr:0 dw:1688 dr:34046020 al:1 bm:1196 lo:156 pe:0 ua:0 ap:156 ep:1 wo:b oos:0
1: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent A r—
ns:14512132 nr:0 dw:0 dr:14512676 al:0 bm:885 lo:156 pe:32 ua:292 ap:0 ep:1 wo:b oos:5018200
[=============>……] sync’ed: 74.4% (4900/19072)M
finish: 0:07:06 speed: 11,776 (10,992) K/sec

Zeit für ein Getränk!

Nachdem die Synchronisierung abgeschlossen ist, greifen Sie über /dev/drbd3 auf Ihr DRBD-Blockgerät zu. Dies wird sowohl auf die lokalen Knoten als auch auf den entfernten dritten Knoten schreiben. In Ihrer Heartbeat-Konfiguration verwenden Sie das Skript “drbdupper”, um Ihr /dev/drbd3-Gerät zu aktivieren. Viel Spaß!

DRBD® und LINBIT® sind eingetragene Marken von LINBIT, Österreich.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.