2740660572_162b50150eJe reprends la série des articles sur le RAID logiciel commencé il y a maintenant plus de 2 mois…


Pour rappel le RAID1 consiste à assembler 2 disques dur (au moins 2) dans une grappe (ou array).

Les écritures faite sur cette grappe sont répliquées/dupliquées sur les 2 disques dur, ainsi en cas de défaillance d’un des disques les données sont toujours présentes sur l’autre.


Pour plus d’information sur les différents niveaux de RAID cf. wikipedia : http://fr.wikipedia.org/wiki/RAID_%28informatique%29 et comment ça marche : http://www.commentcamarche.net/contents/protect/raid.php3



En pré-requis il faut donc avoir 2 disques dur ayant une partion de même taille marquée en « Linux RAID autodetect » (cf. article Préparer un disque dur pour monter un RAID logiciel).


Il faut ensuite avoir installé mdadm.


 

Création la grappe


On indique ici à mdadm le type de RAID que l’on fait (level = 1), le nombre de disques dur composant cette grappe (raid-devices=2), le nom de la grappe (/dev/md0) et les partitions composant la grappe (/dev/sda3 et /dev/sdb1) :

sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sda3 /dev/sdb1



la commande nous rend la main quasiment aussitôt mais il faut faire très attention puisque la synchronisation des partitions se fait en arrière plan.

watch -n 3 cat /proc/mdstat


Ce qui affiche ce résultat (actualisé toutes les 3 secondes) :

Every 3,0s: cat /proc/mdstat                                            Tue Nov 17 13:43:26 2009
 
Personalities : [raid1]
md0 : active raid1 sdb1[1] sda3[0]
      292969216 blocks [2/2] [UU]
      [>....................]  resync =  0.3% (997184/292969216) finish=63.4min speed=76706K/sec
 
unused devices: <none>


Au terme de la ynchronisation on aura ceci :  

Every 3,0s: cat /proc/mdstat                                            Tue Nov 17 15:00:19 2009
 
Personalities : [raid1]
md0 : active raid1 sdb1[1] sda3[0]
      292969216 blocks [2/2] [UU]
 
unused devices: <none>

 

Sauvegarde des caractéristiques de la grappe (optionnel)


Avec la commande précédente on a créé et assemblé la grappe, elle peut au terme de la synchronisation être utilisée directement.


Cependant sans autre configuration elle ne sera pas remonté au prochain démarrage.

En fait si, mdadm scan les disque à la recherche des superblock caractérisant les partitions RAID et reconstitue les grappe.

Cependant le device créé aura un nom différent de celui donné à la création (md_d0 par exemple au lieu de md0)


Pour plus de sureté, de maîtrise on peut vouloir sauvegarder les les caratéristiques de la grappe.

Cela se fait via le fichier /etc/mdadm/mdadm.conf


On peut si on le souhaite lire attentivement la page man de madadm.conf et créer le paramétrage mdadm.conf à la main, ou exécuter la commande suivante qui va réaliser le travail pour nous :

sudo bash -c "mdadm --detail --scan >> /etc/mdadm/mdadm.conf"


Ce qui ajoutera la ligne suivante au fichier mdadm.conf :

ARRAY /dev/md0 level=raid1 num-devices=2 metadata=00.90 UUID=a02d4c25:4c0a891c:c0c43f3e:b08f1a90


Remarques :

On trouvera parfois que pour alimenter le fichier mdadm.conf il faut éxécuter la commande

mdadm --examine --scan >> /etc/mdadm/mdadm.conf

Cette commande scanne les disques à la recherche des superblocks caractéristiques d’un volume RAID, tandis que la précédente interroge les grappes actives pour retrouver leur informations.

Elle renvoit sensiblement la même chose :

ARRAY /dev/md0 level=raid1 num-devices=2 UUID=a02d4c25:4c0a891c:c0c43f3e:b08f1a90 

(La donnée metadata=00.90 à disparue)


Enfin d’autres sites préconisent l’ajout du flag –verbose à la commande (–examine –scan), cela pour conséquence d’ajouter le nom des partitions utilisé par la grappe RAID :

mdadm --detail --scan --verbose >> /etc/mdadm/mdadm.conf
ARRAY /dev/md0 level=raid1 num-devices=2 metadata=00.90 UUID=a02d4c25:4c0a891c:c0c43f3e:b08f1a90
   devices=/dev/sda3,/dev/sdb1



On peut (il est conseillé) d’éditer le fichier mdadm.conf pour voir les lignes ajoutés, les comprendre à l’aide du man et éventuellement les modifier.



Utilisation du volume RAID


Le volume RAID peut ensuite être utilisé comme n’importe quelle autre partition. Il faut le formatter, puis le monter (à la main ou avec le fstab)


sudo mkfs.ext3 /dev/md0
sudo mount /dev/md0 /mnt/




Sources :

mdadm –detail vs mdadm –examine : http://osdir.com/ml/linux-raid/2009-04/msg00245.html

mdadm: A New Tool For Linux Software RAID Management – O&apos;Reilly Media

Software Raid | Raid Arrays | mdadm on Linux

raid_logiciel – Documentation Ubuntu Francophone

Forum Ubuntu-fr.org / [Résolu] Raid 5 : raid inactif après reboot

Using mdadm to send e-mail alerts for RAID failures

Mdadm – Le wiki de 2 noisettes – noisette.ch

Doug Bunger: Activating an Inactive Raid Element

expert:mdadm [Linuxpédia]


Illustration par sean dreilinger sous CC


Les commentaires sont fermés.