[Debian] Test et gestion du RAID 1
Une fois le RAID 1 en place il peut être intéressant de tester son bon fonctionnement. Pour ce faire il suffit de débrancher un disque et de démarrer la machine. Si tout ce passe bien c’est que le RAID fonctionne. Une fois le disque rebranché le RAID ne se reconstruit pas automatiquement, de ce fait il faut d’abord reconstruire le RAID avant de tester le deuxième disque dur.
Visualiser l’état du RAID :
root@billy:~# cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sda5[0]
77646776 blocks super 1.2 [2/1] [U_]
md0 : active raid1 sda1[0]
498676 blocks super 1.2 [2/1] [U_]
unused devices:
Un coup d’oeil rapide et nous constatons qu’il manque un disque [2/1] et [U_] au lieu de [2/2] et [UU].
Visualiser l’état individuel d’une grappe :
root@billy:~# mdadm --detail /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Sat Mar 24 21:26:51 2012
Raid Level : raid1
Array Size : 498676 (487.07 MiB 510.64 MB)
Used Dev Size : 498676 (487.07 MiB 510.64 MB)
Raid Devices : 2
Total Devices : 1
Persistence : Superblock is persistent
Update Time : Sun Mar 25 17:46:39 2012
State : clean, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 0
Spare Devices : 0
Name : billy:0 (local to host billy)
UUID : 98098cd5:7481c7d2:d8af0ea8:f16c4bec
Events : 104
Number Major Minor RaidDevice State
0 8 1 0 active sync /dev/sda1
1 0 0 1 removed
root@billy:~# mdadm --detail /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Sat Mar 24 21:27:01 2012
Raid Level : raid1
Array Size : 77646776 (74.05 GiB 79.51 GB)
Used Dev Size : 77646776 (74.05 GiB 79.51 GB)
Raid Devices : 2
Total Devices : 1
Persistence : Superblock is persistent
Update Time : Sun Mar 25 17:50:48 2012
State : clean, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 0
Spare Devices : 0
Name : billy:1 (local to host billy)
UUID : 607ff7b4:4f02a016:f210d9e3:f65d0467
Events : 612
Number Major Minor RaidDevice State
0 8 5 0 active sync /dev/sda5
1 0 0 1 removed
Nous voyons avec la ligne « State » que le RAID fonctionne en mode dégradé et tout en bas que le disque numéro 1 est dans l’état « removed ». Le tableau indique également quelques erreur mineurs et majeurs.
Quand tout est en ordre, les périphériques sont affichés précédés de la mention active sync sinon on trouvera des choses comme faulty spare, ou removed.
Là on voit clairement le problème, /dev/sdb1 et /dev/sdb5 ont été exclus de leur grappe (normal le disque été débranché).
Pour les rajouter il suffit de taper :
root@billy:~# mdadm --manage /dev/md0 --ad /dev/sdb1 mdadm: re-added /dev/sdb1 root@billy:~# mdadm --manage /dev/md1 --ad /dev/sdb5 mdadm: re-added /dev/sdb5
Là, sdb1 a été ré-ajouté dans la grappe md0 et sdb5 dans la grappe md1.
Il est possible de visualiser la reconstruction en affichant le contenu du fichier /proc/mdstat. La commande watch permet de maintenir et rafraichir l’affichage du fichier afin d’avoir l’avancement en temps réel :
root@billy:~# watch -n 1 'cat /proc/mdstat'
Every 1,0s: cat /proc/mdstat Sun Mar 25 18:02:03 2012
Personalities : [raid1]
md1 : active raid1 sdb5[1] sda5[0]
77646776 blocks super 1.2 [2/1] [U_]
[>....................] recovery = 0.7% (545920/77646776) finish=44.7min speed=28732K/sec
md0 : active raid1 sdb1[1] sda1[0]
498676 blocks super 1.2 [2/2] [UU]
unused devices:
La commande prend bien évidement plus ou moins longtemps selon la taille du disque.
Une fois la reconstruction terminer on vérifie que tout est de nouveau en ordre :
root@billy:~# cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sda5[0] sda5[1]
77646776 blocks super 1.2 [2/2] [UU]
md0 : active raid1 sda1[0] sda1[1]
498676 blocks super 1.2 [2/2] [UU]
On peut maintenant répéter la manipulation pour le deuxième disque.
Merci pour ce tuto ! 🙂