Cluster Setup · 4 min read · Jan 29, 2026

Einrichten eines Active/Active Samba CTDB Clusters mit GFS & DRBD (CentOS 5.5) - Seite 2

Dieser Artikel erklärt, wie man einen Active/Active Samba CTDB Cluster mit GFS und DRBD einrichtet. Vorbereitet von Rafael Marangoni, vom BRLink Servidor Linux Team.

3. Installation der Voraussetzungen und Cluster-Pakete

Es gibt einige Pakete, die vorher installiert werden müssen:

yum -y install drbd82 kmod-drbd82 samba

Lass uns das Red Hat Cluster Suite installieren:

yum -y groupinstall "Cluster Storage" "Clustering"

4. Konfiguration von DRBD

Zuerst müssen wir /etc/drbd.conf auf beiden Knoten konfigurieren:

vi /etc/drbd.conf 
global {
    usage-count yes;
}

common {
  syncer {
                rate 100M;
                al-extents 257;
         }
}

resource r0 {

  protocol C;

  startup {
    become-primary-on both;              ### Für Primary/Primary ###
    degr-wfc-timeout 60;
    wfc-timeout  30;
  }

  disk {
    on-io-error   detach;
  }

  net {
    allow-two-primaries;                 ### Für Primary/Primary ###
    cram-hmac-alg sha1;
    shared-secret "mysecret";
    after-sb-0pri discard-zero-changes;
    after-sb-1pri violently-as0p;
    after-sb-2pri violently-as0p;
  }

  on node1.clustersmb.int {
    device     /dev/drbd0;
    disk       /dev/sdb;
    address    172.16.0.1:7788;
    meta-disk  internal;
  }

  on node2.clustersmb.int {
    device     /dev/drbd0;
    disk       /dev/sdb;
    address    172.16.0.1:7788;
    meta-disk  internal;
  }
}  

Die Hauptpunkte der Konfiguration sind:
resource: bezieht sich auf die Ressource, die von DRBD verwaltet wird, beachten Sie, dass wir “r0” genannt haben
disk: bezieht sich auf das Gerät, das DRBD verwenden wird (eine Festplatte oder Partition)
address: IP-Adresse/Port, die DRBD verwenden wird (beachten Sie, dass wir auf Crossover-Schnittstellen zeigen)
syncer: die Übertragungsrate zwischen den Knoten (wir verwenden 100M, weil wir Gigabit-Karten haben)
Wenn Sie Zweifel haben, schauen Sie bitte in das DRBD-Benutzerhandbuch: www.drbd.org/users-guide-emb/

Nach dieser Konfiguration können wir die Metadaten für die Ressource r0 erstellen. Führen Sie auf beiden Knoten aus:

drbdadm create-md r0

Als nächstes müssen wir die DRBD-Dienste starten, um die initdb zu erstellen. Führen Sie auf beiden Knoten (fast gleichzeitig) aus:

/etc/init.d/drbd start

Um die beiden Knoten als primär zu setzen, führen Sie auf beiden Knoten aus:

drbdsetup /dev/drbd0 primary -o

Um den Fortschritt der Synchronisierung und den Status der DRBD-Ressource zu überprüfen, schauen Sie sich /proc/drbd an:

cat /proc/drbd

Jetzt müssen wir auf das Ende der Synchronisierung warten. Dies kann lange dauern, abhängig von der Größe und Leistung Ihrer Festplatten. Und natürlich von der Geschwindigkeit der Cluster-Netzwerkschnittstellen, die mit dem Crossover-Kabel verwendet werden).

Wenn der Synchronisierungsprozess endet, können wir den Status der Ressource r0 überprüfen:

node1:

[root@node1 ~]# cat /proc/drbd

[root@node1 ~]# cat /proc/drbd
version: 8.2.6 (api:88/proto:86-88)
GIT-hash: 3e69822d3bb4920a8c1bfdf7d647169eba7d2eb4 build by buildsvn@c5-x8664-build, 2008-10-03 11:30:17
0: cs:Connected st:Primary/Primary ds:UpToDate/UpToDate C r—
ns:2097052 nr:0 dw:0 dr:2097052 al:0 bm:128 lo:0 pe:0 ua:0 ap:0 oos:0

node2:

[root@node2 ~]# cat /proc/drbd

[root@node2 ~]# cat /proc/drbd
version: 8.2.6 (api:88/proto:86-88)
GIT-hash: 3e69822d3bb4920a8c1bfdf7d647169eba7d2eb4 build by buildsvn@c5-x8664-build, 2008-10-03 11:30:17
0: cs:Connected st:Primary/Primary ds:UpToDate/UpToDate C r—
ns:0 nr:2097052 dw:2097052 dr:0 al:0 bm:128 lo:0 pe:0 ua:0 ap:0 oos:0

Es ist wichtig zu beachten, dass beide Server auf dem neuesten Stand sind (UpToDate/UpToDate) und primär (Primary/Primary).
Um zu erfahren, was alle Statusinformationen bedeuten, schauen Sie sich an: www.drbd.org/users-guide-emb/ch-admin.html#s-proc-drbd

Wir müssen den DRBD-Dienst so konfigurieren, dass er beim Booten automatisch startet:

chkconfig --level 35 drbd on

5. Konfiguration von GFS

Jetzt müssen wir GFS (Red Hat Global File System) konfigurieren, das ein Cluster-Dateisystem ist, das mit DRBD verwendet wird:

Zuerst müssen wir /etc/cluster/cluster.conf auf beiden Knoten konfigurieren:

vi /etc/cluster/cluster.conf 







        
                
                        
                
        



        
                
                        
                
        






        


Als nächstes müssen wir den cman-Dienst auf beiden Knoten (gleichzeitig) starten:

/etc/init.d/cman start

Danach können wir die anderen Dienste auf beiden Knoten starten: /etc/init.d/clvmd start
/etc/init.d/gfs start
/etc/init.d/gfs2 start

Wir müssen sicherstellen, dass alle Dienste beim Start aktiviert sind.
Führen Sie auf beiden Knoten aus:

chkconfig –level 35 cman on
chkconfig –level 35 clvmd on
chkconfig –level 35 gfs on
chkconfig –level 35 gfs2 on

Als nächstes formatieren wir das Gerät, nur auf einem Knoten:

gfs_mkfs -p lock_dlm -t cluster1:gfs -j 2 /dev/drbd0

Jetzt erstellen wir den Mountpunkt und mounten das drbd-Gerät auf beiden Knoten:

mkdir /clusterdata
mount -t gfs /dev/drbd0 /clusterdata

Lass uns das Gerät in die fstab einfügen, auf beiden Knoten:

vi /etc/fstab

Fügen Sie die folgende Zeile ein:

/dev/drbd0          /clusterdata               gfs    defaults        0 0 

Als nächstes ist es gut zu überprüfen, ob das clusterfs funktioniert:
Nur auf node1, führen Sie aus:

tar -zcvf /clusterdata/backup-test.tgz /etc/

Jetzt überprüfen wir, ob die Datei auf node2 existiert.
Nur auf node2, führen Sie aus:

ls -l /clusterdata/ 

[root@node2 ~]# ls -l /clusterdata
total 12576
-rw-r–r– 1 root root 12844520 Jul 23 16:01 backup-test.tgz

Jetzt testen wir, ob node2 schreiben kann.
Nur auf node2, führen Sie aus:

tar -zcvf /clusterdata/backup-test2.tgz /etc/

Jetzt überprüfen wir, ob die beiden Dateien auf node1 existieren.
Nur auf node1, führen Sie aus:

ls -l /clusterdata/ 

[root@no2 ~]# ls -l /clusterdata/
total 25160
-rw-r–r– 1 root root 12850665 Jul 23 16:03 backup-test2.tgz
-rw-r–r– 1 root root 12844520 Jul 23 16:01 backup-test.tgz

Wenn alles in Ordnung ist, können wir die Testdateien natürlich löschen.
Nur auf einem Knoten, führen Sie aus:

rm -f /clusterdata/backup* 
Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.