Cluster Setup · 4 min read · Jan 29, 2026
Impostare un Cluster Samba CTDB Active/Active Utilizzando GFS e DRBD (CentOS 5.5) - Pagina 2
Questo articolo spiega come impostare un Cluster Samba CTDB Active/Active, utilizzando GFS e DRBD. Preparato da Rafael Marangoni, dal Team Servidor Linux di BRLink.
3. Installazione dei Prerequisiti e dei Pacchetti del Cluster
Ci sono alcuni pacchetti che devono essere installati prima:
yum -y install drbd82 kmod-drbd82 sambaInstalliamo il Red Hat Cluster Suite:
yum -y groupinstall "Cluster Storage" "Clustering"4. Configurazione di DRBD
Per prima cosa, dobbiamo configurare /etc/drbd.conf su entrambi i nodi:
vi /etc/drbd.conf global {
usage-count yes;
}
common {
syncer {
rate 100M;
al-extents 257;
}
}
resource r0 {
protocol C;
startup {
become-primary-on both; ### Per Primary/Primary ###
degr-wfc-timeout 60;
wfc-timeout 30;
}
disk {
on-io-error detach;
}
net {
allow-two-primaries; ### Per 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;
}
} I punti principali di configurazione sono:
resource: si riferisce alla risorsa che sarà gestita da DRBD, nota che l’abbiamo chiamata “r0”
disk: si riferisce al dispositivo che DRBD utilizzerà (un disco o una partizione)
address: Indirizzo IP/porta che DRBD utilizzerà (nota che puntiamo a interfacce incrociate)
syncer: il tasso di trasferimento tra i nodi (utilizziamo 100M perché abbiamo schede Gigabit)
Se hai dubbi, consulta la Guida per gli Utenti di DRBD: www.drbd.org/users-guide-emb/
Dopo questa configurazione, possiamo creare i metadati sulla risorsa r0. Su entrambi i nodi esegui:
drbdadm create-md r0Successivamente, dobbiamo avviare i servizi DRBD, per creare l’initdb. Su entrambi i nodi (quasi contemporaneamente), esegui:
/etc/init.d/drbd startPer impostare i due nodi come primari, su entrambi i nodi esegui:
drbdsetup /dev/drbd0 primary -oPer controllare il progresso della sincronizzazione e lo stato della risorsa DRBD, guarda in /proc/drbd:
cat /proc/drbdOra, dobbiamo aspettare la fine della sincronizzazione. Questo potrebbe richiedere molto tempo, a seconda delle dimensioni e delle prestazioni dei tuoi dischi.
E, naturalmente, la velocità delle interfacce di rete del cluster che viene utilizzata con il cavo incrociato).
Quando il processo di sincronizzazione termina, possiamo dare un’occhiata allo stato della risorsa r0:
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
È importante notare che entrambi i server sono aggiornati (UpToDate/UpToDate) e primari (Primary/Primary).
Per sapere cosa significano tutte le informazioni di stato, dai un’occhiata a: www.drbd.org/users-guide-emb/ch-admin.html#s-proc-drbd
Dobbiamo fare in modo che il servizio DRBD si avvii automaticamente all’avvio:
chkconfig --level 35 drbd on5. Configurazione di GFS
Ora, dobbiamo configurare GFS (Red Hat Global File System), che è un filesystem cluster da utilizzare con DRBD:
Per prima cosa, dobbiamo configurare /etc/cluster/cluster.conf su entrambi i nodi:
vi /etc/cluster/cluster.conf
Successivamente, dobbiamo avviare il servizio cman, su entrambi i nodi (allo stesso tempo):
/etc/init.d/cman startDopo, possiamo avviare gli altri servizi, su entrambi i nodi:
/etc/init.d/clvmd start
/etc/init.d/gfs start
/etc/init.d/gfs2 start
Dobbiamo assicurarci che tutti i servizi siano abilitati all’inizializzazione.
Su entrambi i nodi, esegui:
chkconfig –level 35 cman on
chkconfig –level 35 clvmd on
chkconfig –level 35 gfs on
chkconfig –level 35 gfs2 on
Successivamente, formattiamo il dispositivo, solo su un nodo:
gfs_mkfs -p lock_dlm -t cluster1:gfs -j 2 /dev/drbd0Ora, creiamo il punto di mount e montiamo il dispositivo drbd, su entrambi i nodi:
mkdir /clusterdata
mount -t gfs /dev/drbd0 /clusterdata
Inseriamo il dispositivo in fstab, su entrambi i nodi:
vi /etc/fstabInserisci la seguente riga:
/dev/drbd0 /clusterdata gfs defaults 0 0 Successivamente, è bene controllare che il clusterfs funzioni:
Solo su node1, esegui:
tar -zcvf /clusterdata/backup-test.tgz /etc/Ora, controlliamo se il file esiste su node2.
Solo su node2, esegui:
ls -l /clusterdata/ [root@node2 ~]# ls -l /clusterdata
total 12576
-rw-r–r– 1 root root 12844520 Jul 23 16:01 backup-test.tgz
Ora, testiamo se node2 può scrivere.
Solo su node2, esegui:
tar -zcvf /clusterdata/backup-test2.tgz /etc/Ora, controlliamo se i due file esistono su node1.
Solo su node1, esegui:
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
Se tutto va bene, ovviamente possiamo eliminare i file di test.
Solo un nodo, esegui:
rm -f /clusterdata/backup* Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.