brbd unter centos installieren

Angenommen man betreibt einen kleinen Server auf dem Daten abgelegt werden, diese werden zur Sicherheit auf zum Beispiel einem Raid abgelegt. Nun sollen die abgelegten Daten beim Ausfall des Server schnellstmöglich auf einem anderen System zur Verfügung stehen. Eine Möglichkeit die Daten auf den anderen Server zu kopieren wäre ein cronjob der alle x Minuten rsync ausführt. Eine weitaus bessere Lösung ist drbd.
Grob gesagt ist drbd ein Raid zwischen zwei Servern und wer mehr darüber wissen möchte, sollte sich die Seite http://www.drbd.org/ anschauen.

Zunächst muss unter centos das Repository installiert werden:
rpm -Uvh http://elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm
Im Anschluss die benötigten Programme installieren
yum install drbd84 kmod-drbd84

Für das drbd device habe ich auf beiden Servern(drbd1,drbd2) /dev/sdb angelegt und die Netzwerkkarten eth1 über ein Crossover Kabel miteinander verbunden.

Die Konfiguration des drbd Device erfolgt in der Datei /etc/drbd.d/data.res:

resource data {
net{
csums-alg md5;
}
disk {
resync-rate 40M;
}
on drbd1 {
device /dev/drbd1;
disk /dev/sdb;
address 192.168.1.1:7789;
meta-disk internal;
}
on drbd2 {
device /dev/drbd1;
disk /dev/sdb;
address 192.168.1.2:7789;
meta-disk internal;
}
}

Dann die drbd devices auf beiden Servern initialisieren:
drbdadm create-md data

Ausgabe:
Writing meta data...
initializing activity log
NOT initializing bitmap
New drbd meta data block successfully created.
success

Im Anschluss das drbd auf beiden Servern starten /etc/init.d/drbd start und das Device aktivieren drbdadm up data.

Über cat /proc/drbd kann man feststellen ob die beiden drbd’s miteinander verbunden sind.
cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent C r—–

Sollte dort anstatt Connected WFConnection stehen, konnte keine Verbindung hergestellt werden.

Zum Schluss muss auf einem der Server das drbd device als primary gesetzt werden, automatisch startet dann die Synchronisierung.

drbdadm primary --force data

Die Ausgabe von cat /proc/drbd sieht dann wie folgt aus
1: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r-----
ns:0 nr:0 dw:0 dr:70296 al:0 bm:4 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:10415772
[>....................] sync'ed: 0.8% (10168/10236)M
finish: 0:02:28 speed: 69,632 (69,632) K/sec

Während die Synchronisierung läuft, kann bereits das Dateisystem auf gewohntem Weg (mkfs.ext4 /dev/drbd1) formatiert werden.

Nach der Formatierung kann das drbd device gemountet und genutzt werden.

drbd Resource auf dem anderen Server mounten

Möchte man das drbd Device auf dem anderen Server mounten, muß man es zunächst unmounten und das drbd device von Primary auf Secondary setzen.

umount /dev/drbd1
drbdadmin secondary data

Nun kann auf dem zweiten Server das drbd Device als primary gesetzt und gemounted werden.

Anmerkung
Ich bin in dem kleinen Artikel nicht auf die Iptables eingegangen, diese müssen natürlich auch entsprechend angepasst werden.
Demnächst werde ich einen Artikel erstellen in dem es darum geht, das eine Clustersoftware das setzen des Primary drbd device und das mounten übernimmt.

Ein Gedanke zu „brbd unter centos installieren

  1. Pingback: Installation und Konfiguration von Pacemaker und coroync unter CentOS | itbasic

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert