Linux Réseaux
DRBD
Test de simulation de crash système du Primary



Pour : Linux


TEST 1

Sur le serveur 1 (actuellement primary) faite ceci pour arrêter la machine:

# shutdown -h now



Passage du serveur 2 en primary:
Syntaxe:
# drbdadm primary [nom_resource]

# drbdadm primary data



On constate que le serveur 2 est maintenant "primaire".

# cat /proc/drbd [...] 0: cs:WFConnection st:Primary/Unknown ds:UpToDate/DUnknown C r--- [...]



On créer le répertoire de montage:

# mkdir /data



On monte la ressource:

# mount /dev/drbd0 /data



On crée un fichier dessus pour tester le comportement lorsque le serveur 1 redémarrera.

On démarre le serveur 1.

Une fois le serveur 1 démarré, vous pouvez constater qu'il est maintenant secondaire et que la synchronisation avec le serveur 2 primaire ce fait automatiquement.

# cat /proc/drbd version: 8.3.7 (api:88/proto:86-91) srcversion: EE47D8BF18AC166BE219757 1: cs:Connected ro:Secondary/Secondary ds:UpToDate/UpToDate C r---- ns:0 nr:36 dw:36 dr:0 al:0 bm:2 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0



Après la synchronisation de fini, arrêtez le serveur 2 qui est actuellemnt primaire.

# shutdown -h now



Maintenant on va remêttre le serveur 1 en primaire:

# drbdadm primary data



On monte la ressource:

# mount /dev/drbd0 /data



Maintenant vérifier que le fichier que vous aviez créer sur le serveur 2 c'est bien synchronisé.



TEST 2

On va supprimer la partition sur le disque primaire avec "fdisk", puis resynchroniser les données depuis le disque secondaire.

On arrêt le service "drbd".

# service drbd stop



On va utiliser l'outil "fdisk" suivi du nom système de la partition.
Il y a que une partition sur ce disque que l'on supprime avec "d" puis "n" "w" pour sauvegarder et quitter.

# fdisk /dev/sdb WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Command (m for help): d Selected partition 1 Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-1044, default 1): Using default value 1 Last cylinder, +cylinders or +size{K,M,G} (1-1044, default 1044): +500M Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.



Mettre la partition a zero.

# dd if=/dev/zero of=/dev/sdb1 bs=1M count=128 128+0 enregistrements lus 128+0 enregistrements écrits 134217728 octets (134 MB) copiés, 5,43029 s, 24,7 MB/s



On recréer le dictionnaire des méta-datas de "drbd".

# drbdadm create-md data --== Thank you for participating in the global usage survey ==-- The server's response is: node already registered Writing meta data... initializing activity log NOT initialized bitmap New drbd meta data block successfully created. success



On démarre le service "drbd".

# service drbd start



Quand on affiche l'état du disque, on peut voir que la synchronisation ce fait.

# cat /proc/drbd version: 8.3.7 (api:88/proto:86-91) srcversion: EE47D8BF18AC166BE219757 1: cs:SyncTarget ro:Secondary/Secondary ds:Inconsistent/UpToDate C r---- ns:0 nr:148608 dw:148608 dr:0 al:0 bm:9 lo:0 pe:0 ua:1 ap:0 ep:1 wo:b oos:373452 [====>...............] sync'ed: 29.0% (373452/522028)K finish: 0:15:33 speed: 128 (320) K/sec



On va le remêttre primaire:

# drbdadm primary data



On monte la ressource:

# mount /dev/drbd0 /data



On peut maintenant accéder au ressource et constater que les données ce son parfaitement synchronisé.



Lien pour aller sur le site de l'éditeur:
www.drbd.org

Liens qui peuvent vous aidez:
DRBD - Réplication de disque par le réseau
DRBD - Installation et configuration
DRBD - Afficher et comprendre les différents états des disques
DRBD - Message d'erreur "Split-Brain"
DRBD - Erreur - mount: you must specify the filesystem type



Par O.Cédric
Sur www.octetmalin.net

Article publié le:
13/12/2011 09:04





Cette page vous à plus?

Dîtes que vous l'aimez en cliquant sur le bouton Facebook.