DRBD Configuration · 6 min read · Jan 30, 2026
Réplique du troisième nœud DRBD 8.3 avec Debian Etch
Réplique du troisième nœud DRBD 8.3 avec Debian Etch
Guide d’installation et de configuration pour DRBD 8.3 + Debian Etch
Configuration du troisième nœud
par Brian Hellman
La récente version de DRBD 8.3 inclut maintenant la fonctionnalité Le troisième nœud comme un composant disponible gratuitement. Ce document couvrira les bases de la configuration d’un troisième nœud sur une installation standard de Debian Etch. À la fin de ce tutoriel, vous disposerez d’un appareil DRBD qui peut être utilisé comme un SAN, une cible iSCSI, un serveur de fichiers ou un serveur de base de données.
Remarque : Les clients de support LINBIT peuvent sauter la section 1 et utiliser les dépôts de paquets.
LINBIT a des solutions de troisième nœud hébergées disponibles, veuillez les contacter à [email protected] pour plus d’informations.
Préface :

La configuration est la suivante :
- Trois serveurs : alpha, bravo, foxtrot
- alpha et bravo sont les nœuds locaux primaire et secondaire
- foxtrot est le troisième nœud qui se trouve sur un réseau distant
- Les deux alpha et bravo ont des interfaces sur le réseau 192.168.1.x (eth0) pour la connectivité externe.
- Un lien croisé existe sur alpha et bravo (eth1) pour la réplication utilisant 172.16.6.10 et .20
- Heartbeat fournit une IP virtuelle de 192.168.5.2 pour communiquer avec le nœud de récupération après sinistre situé dans un emplacement géographiquement diversifié
Section 1 : Installation de la source
Ces étapes doivent être effectuées sur chacun des 3 nœuds.
Prérequis :
- make
- gcc
- bibliothèques de développement glibc
- générateur de scanner flex
- en-têtes pour le noyau actuel
Entrez ce qui suit à la ligne de commande en tant qu’utilisateur privilégié pour satisfaire ces dépendances :
apt-get install make gcc libc6 flex linux-headers-uname -r libc6-dev linux-kernel-headers
Une fois les dépendances installées, téléchargez DRBD. La dernière version peut toujours être obtenue à http://oss.linbit.com/drbd/. Actuellement, c’est 8.3.
cd /usr/src/
wget http://oss.linbit.com/drbd/8.3/drbd-8.3.0.tar.gz
Après le téléchargement, complétez les étapes suivantes :
- Décompressez DRBD
- Entrez le répertoire source
- Compilez la source
- Installez DRBD
tar -xzvf drbd-8.3.0.tar.gz
cd /usr/src/drbd-8.3.0/
make clean all
make install
Maintenant, chargez et vérifiez le module :
modprobe drbd
cat /proc/drbd
version : 8.3.0 (api:88/proto:86-89)
GIT-hash : 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 construit par root@alpha, 2009-02-05 10:36:11
Une fois cela complété sur chacun des trois nœuds, continuez à la section suivante.
Section 2 : Configuration de Heartbeat
Configurer un troisième nœud implique de superposer DRBD sur DRBD. Une IP virtuelle est nécessaire pour que le troisième nœud se connecte, pour cela nous allons configurer une simple configuration Heartbeat v1. Cette section ne sera effectuée que sur alpha et bravo.
Installez Heartbeat :
apt-get install heartbeat
Éditez le fichier authkeys :
vi /etc/ha.d/authkeys
auth 1
1 sha1 votremotdepasseultrasupersecreticiUne fois le fichier créé, changez les permissions sur le fichier. Heartbeat ne démarrera pas si cette étape n’est pas suivie.
chmod 600 /etc/ha.d/authkeysCopiez le fichier authkeys vers bravo :
scp /etc/ha.d/authkeys bravo:/etc/ha.d/Éditez le fichier ha.cf :
vi /etc/ha.d/ha.cfdebugfile /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 bravoCopiez le fichier ha.cf vers bravo :
scp /etc/ha.d/ha.cf bravo:/etc/ha.d/Éditez le fichier haresources, l’IP créée ici sera l’IP à laquelle notre troisième nœud se réfère.
vi /etc/ha.d/haresourcesalpha IPaddr::192.168.5.2/24/eth0Copiez le fichier haresources vers bravo :
scp /etc/ha.d/haresources bravo:/etc/ha.d/Démarrez le service heartbeat sur les deux serveurs pour activer l’IP virtuelle :
alpha:/# /etc/init.d/heartbeat startbravo:/# /etc/init.d/heartbeat startHeartbeat activera la nouvelle interface (eth0:0).
Remarque : Il peut falloir jusqu’à une minute à heartbeat pour activer l’interface.
alpha:/# ifconfig eth0:0
eth0:0 Link encap:Ethernet HWaddr 00:08:C7:DB:01:CC
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Section 3 : Configuration de DRBD
La configuration de DRBD se fait via le fichier drbd.conf. Cela doit être le même sur tous les nœuds (alpha, bravo, foxtrot). Veuillez noter que le compteur d’utilisation est réglé sur oui, ce qui signifie qu’il notifiera Linbit que vous avez installé DRBD. Aucune information personnelle n’est collectée. Veuillez consulter cette page pour plus d’informations :
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 fournie par Heartbeat
}
on foxtrot {
device /dev/drbd3;
disk /dev/sdb1;
address 192.168.5.3:7788; # IP publique du nœud de sauvegarde
meta-disk internal;
}
}
Section 4 : Préparation des appareils DRBD
Maintenant que la configuration est en place, créez les métadonnées sur alpha et bravo.
alpha:/usr/src/drbd-8.3.0# drbdadm create-md data-lower
Écriture des métadonnées…
initialisation du journal d’activité
BITMAP non initialisé
Nouveau bloc de métadonnées drbd créé avec succès.
bravo:/usr/src/drbd-8.3.0# drbdadm create-md data-lower
Écriture des métadonnées…
initialisation du journal d’activité
BITMAP non initialisé
Nouveau bloc de métadonnées drbd créé avec succès.
Maintenant, démarrez DRBD sur alpha et bravo :
alpha:/usr/src/drbd-8.3.0# /etc/init.d/drbd startbravo:/usr/src/drbd-8.3.0# /etc/init.d/drbd startVérifiez que les appareils DRBD de niveau inférieur sont connectés :
cat /proc/drbd
version : 8.3.0 (api:88/proto:86-89)
GIT-hash : 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 construit par 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
Dites à alpha de devenir le nœud primaire :
REMARQUE : Comme l’indique la commande, cela va écraser toutes les données sur bravo : C’est le bon moment pour aller chercher votre boisson préférée.
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 construit par 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
[==>……………..] synchronisé : 15.9% (16057/19073)M
fin : 0:16:30 vitesse : 16,512 (8,276) K/sec
Après la synchronisation des données, créez les métadonnées sur data-upper sur alpha, suivies de foxtrot.
Notez que la ressource est data-upper et que l’option –stacked est uniquement sur alpha.
alpha:~# drbdadm –stacked create-md data-upper
Écriture des métadonnées…
initialisation du journal d’activité
BITMAP non initialisé
Nouveau bloc de métadonnées drbd créé avec succès.
succès
foxtrot:/usr/src/drbd-8.3.0# drbdadm create-md data-upper
Écriture des métadonnées…
initialisation du journal d’activité
BITMAP non initialisé
Nouveau bloc de métadonnées drbd créé avec succès.
Activez la ressource empilée, puis faites d’alpha le primaire de data-upper :
alpha:/# drbdadm --stacked adjust data-upperfoxtrot:~# drbdadm adjust data-upper
foxtrot:~# cat /proc/drbd
version : 8.3.0 (api:88/proto:86-89)
GIT-hash : 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 construit par 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 construit par 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
[=============>……] synchronisé : 74.4% (4900/19072)M
fin : 0:07:06 vitesse : 11,776 (10,992) K/sec
Encore un moment pour boire !
Après la synchronisation, accédez à votre appareil de bloc DRBD via /dev/drbd3. Cela écrira à la fois sur les nœuds locaux et sur le troisième nœud distant. Dans votre configuration Heartbeat, vous utiliserez le script “drbdupper” pour activer votre appareil /dev/drbd3. Amusez-vous bien !
DRBD® et LINBIT® sont des marques déposées de LINBIT, Autriche.
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.