Vous êtes sur la page 1sur 24

Pr. K.

ZINEDINE
PLAN PLAN
. Dfinitions I. Dfinitions
II. Prcautions et considrations dusage
III. RAID avec mdadm-
IV. Etat du RAID
V. Simuler une panne V. Simuler une panne
VI. Remplacer un disque
VII. Arrt et Relance manuels
VIII. Travaux Pratiques
En informatique, le mot RAID (Redundant Array of Inexpansive Disks)
dsigne les techniques permettant de rpartir des donnes sur plusieurs
disques durs.
Objectifs: Amliorer soit la tolrance aux pannes, soit la scurit,
soit les performances de l'ensemble, ou une rpartition de tout cela
Le RAID a t dfini par luniversit de Berkeley en 1987 dans le double
but de rduire les cots et daugmenter la fiabilit du stockage des
Dfinitions
but de rduire les cots et daugmenter la fiabilit du stockage des
donnes.
Le but est de combiner plusieurs petits disques physiques indpendants
en une matrice (array : tableau, ensemble, range, matrice) de disques
dont la capacit dpasse celle du SLED (Single Large Expensive Drive).
Une matrice apparat comme une unit logique de stockage unique.
le RAID peut tre tolrant aux fautes en stockant de manire redondante
ses informations selon plusieurs mthodes : RAID-0, RAID-1 et RAID-5
Le RAID-0:appel stripping ou stripe mode : deux disques au moins
forment un seul volume.
Les deux disques ont en principe la mme taille. Sinon, espace inutilis
Chaque opration de lecture/criture sera fractionne et effectue sur
chacun des disques (par bandes stripes ). Par exemple, 4 ko seront
crits sur le disque 0, 4ko sur le disque 1, 4 ko sur le disque 2, puis 4 ko
sur le disque 0, etc. Ainsi, les performances sont accrues puisque les
RAID-0-Dfinition
sur le disque 0, etc. Ainsi, les performances sont accrues puisque les
oprations de lecture et dcriture sont effectues en parallle sur les
disques.
Le RAID-0 na aucune redondance. En cas de panne dun des disques, il
est probable que lensemble des donnes soit perdu.
Le RAID-1 : appel mirroring, cest le premier mode redondant.
Il peut tre utilis partir de deux disques ou plus avec dventuels disques
de secours (Spare Disk).
Chaque information crite sur un disque est duplique sur les autres. Si N-1
disques du RAID viennent tomber, les donnes restent intactes.
Si un disque de secours est prsent, en cas de panne, il est
automatiquement reconstruit et prend la place du disque dfaillant.
RAID-1-Dfinition
automatiquement reconstruit et prend la place du disque dfaillant.
Les performances en criture peuvent tre mauvaises : criture sur N
disques en mme temps, risquant de saturer le contrleur disque et le bus.
Les performances en lecture sont bonnes, car RAID emploie un algorithme
qui peut lire les donnes sur chaque disque (puisquils sont identiques).
Le RAID-5 : RAID avec bande de parit redistribue.
Cest le mode le plus utilis car cest celui qui offre le meilleur compromis
entre le nombre de disques, lespace disponible et la redondance.
Il faut au moins trois disques avec dventuels disques de secours.
La parit est prsente sur chacun des disques.
La taille finale est celle de N-1 disques.
RAID-5-Dfinition
La taille finale est celle de N-1 disques.
Le RAID-5 survit une panne de disque. Dans ce cas, si un disque de
secours est prsent, il sera automatiquement reconstruit. Les
performances en lecture sont quivalentes celles du RAID-0 tandis
quen criture, elles dpendent de lalgorithme employ et de la mmoire
de la machine.
Le choix d'une solution RAID est li trois critres :
Scurit : RAID 1 et 5 offrent tous les deux un niveau de scurit
lev, toutefois la mthode de reconstruction des disques varie entre
les deux solutions. En cas de panne du systme, RAID 5 reconstruit le
disque manquant partir des informations stockes sur les autres
disques, tandis que RAID 1 opre une copie disque disque.
Performances : RAID 1 offre de meilleures performances que RAID 5
en lecture, mais souffre lors d'importantes oprations d'criture.
RAID-1 & RAID-5: Comparaison
en lecture, mais souffre lors d'importantes oprations d'criture.
Cot : le cot est directement li la capacit de stockage devant tre
mise en uvre pour avoir une certaine capacit effective. La solution
RAID 5 offre un volume utile reprsentant 80 90% du volume allou
(le reste servant videmment au contrle d'erreur). La solution RAID 1
n'offre par contre qu'un volume disponible reprsentant 50 % du
volume total (tant donn que les informations sont dupliques).
Disque de secours
Un disque de secours (Spare Disk) ne fait pas partie intgrante dune
matrice RAID tant quun disque ne tombe pas en panne. Si cela arrive, le
disque est marqu dfectueux et le premier disque Spare prend le relais.
Quoi quil arrive, il faut tout de mme, le plus vite possible, changer le
disque dfaillant et reconstruire le RAID.
Disque dfectueux
Prcautions et considration dusage
Disque dfectueux
Un disque dfectueux (Faulty Disk) est un disque qui a t reconnu
dfaillant ou en panne par le RAID. Dans ce cas, RAID utilise le premier
disque Spare pour reconstruire sa matrice. Les disques Faulty
appartiennent toujours la matrice mais sont dsactivs
Boot
La partition de boot (celle qui contient le noyau, la configuration du
bootloader, les fichiers images de disques) ne doit pas tre place dans
une matrice RAID : le chargeur de dmarrage est incapable de monter
des partitions RAID (la prochaine version de GRUB en sera capable)..
Swap
On peut installer un swap sur du RAID mais ce nest en principe pas utile
dans les cas courants. En effet, Linux est capable dquilibrer lutilisation
du swap sur plusieurs disques/partitions seuls. Dans ce cas, dclarer n
swaps dans /etc/fstab avec la mme priorit.
Prcautions et considration dusage
swap
swap
swap
/dev/sda2
/dev/sdb2
/dev/sdc2
defaults,pri=1
defaults,pri=1
defaults,pri=1
0 0
0 0
0 0
Cependant, en cas de besoin de haute disponibilit, le swap sur le RAID
est possible.
swap
/dev/sdc2 defaults,pri=1
0 0
.
Priphriques
Une matrice RAID est reconnue par le systme comme un priphrique
de type bloc, comme nimporte quel disque physique.
Ainsi, un RAID peut tre constitu avec des disques, des partitions
(gnralement, on cre une unique partition sur chaque disque).
Le bus na aucune importance : on peut construire une matrice RAID
Prcautions et considration dusage
Le bus na aucune importance : on peut construire une matrice RAID
avec des disques SCSI et IDE mlangs. De mme, on peut construire
du RAID sur dautres matrices RAID, par exemple du RAID-0+1 (2x2
disques en RAID-1, les deux matrices rsultantes en formant une
nouvelle en RAID-0).
Les priphriques RAID sont sous la forme :
/dev/md0
/dev/md1
.
Ide:
Si les disques IDE ont longtemps t le SCSI du pauvre (matriel de
moins bonne qualit, lenteur, manque de fiabilit) ce nest plus vraiment
le cas. Les derniers modles sont totalement identiques aux disques
SCSI, contrleur except.
On peut donc monter pour un cot raisonnable des configurations RAID
en IDE. Cependant une rgle est retenir :
Prcautions et considration dusage
On peut donc monter pour un cot raisonnable des configurations RAID
en IDE. Cependant une rgle est retenir :
UN SEUL DISQUE IDE PAR BUS IDE
En pratique, cela correspond un disque par cble, sans rien dautre. En
effet, un bus IDE survit en principe la dficience dun disque mais il
arrive rgulirement que le bus IDE devienne lui-mme dfectueux,
entranant la perte du second disque prsent sur le bus et donc la perte
de la matrice RAID.
Lachat de cartes IDE supplmentaires (bas prix) permet de compenser le
problme de fiabilit (deux disques par carte).
.
Hot Swap:
IDE : NE JAMAIS DEBRANCHER CHAUD UN DISQUE IDE ! Cest le
meilleur moyen de dtruire le disque, si ce ntait pas encore le cas et de
dtruire le contrleur IDE (et donc ventuellement la carte mre ou
additionnelle). LIDE nest pas prvu pour.
SCSI : les contrleurs SCSI ne sont pas prvus pour le Hot Swap
Prcautions et considration dusage
SCSI : les contrleurs SCSI ne sont pas prvus pour le Hot Swap
mais devraient en thorie tout de mme fonctionner, si le disque est
identique physiquement et logiquement.
SATA : reconnu comme du SCSI. La spcification SATA en version 2
supporte thoriquement le Hot Swap. Seulement, la plupart des
contrleurs actuels implmentent mal ou pas du tout cette possibilit,
do les risques de plantages ou de griller son contrleur.
SCA : ce sont des disques SCSI spcifiques.
PRPARATION
Loutil mdadm remplace les outils raidtools des anciennes distributions
Linux.
Cet outil unique est plus simple et permet deffectuer lensemble des
oprations.
Son fichier de configuration est /etc/mdadm.conf.
Afin de crer des matrices RAID, il faut que les partitions qui vont servir
RAID avec mdadm
Afin de crer des matrices RAID, il faut que les partitions qui vont servir
crer la matrice soient de type 0xFD (Linux RAID autodetect).
Les partitions doivent tre logiquement sur des disques diffrents, mais
pour des tests, le support RAID autorise des partitions sur le mme
disque.
Dans ce cas, on veillera ce que les partitions disposent de la mme
taille.
CRATION: RAID-0 :
RAID avec mdadm
Disques
Volume RAID /dev/md0
Lecture/Ecriture simultane 2x4k
Fichier de 8k
CRATION: RAID-0 :
Soit 2 partitions /dev/sdb1 et /dev/sdc1. On va crer une partition RAID-0
(Assemblage de ces 2 partitions)
# mdadm --create /dev/md0 --level=raid0 --raid-devices=2 /dev/sdb
/dev/sdc1
--create: crer un Raid
RAID avec mdadm
--create: crer un Raid
/dev/md0:nom du fichier periph.de type bloc reprsentant la matrice RAID
--level: Type de RAID crer : 0, raid0 et stripe pour du RAID0.
--raid-devices: Nombre de partitions utilises pour crer la matrice.
/dev/sdb1, /dev/sdc1: Partitions constituant la matrice, suivant le nombre indiqu
dans --raid-devices.
Il ne reste plus qu installer le systme de fichiers sur le disque RAID :
# mkfs -t ext3 /dev/md0
CRATION: RAID-1 :
RAID avec mdadm
Cest le mme principe. On va rajouter une partition de secours /dev/sdd1.
# mdadm --create /dev/md1 --level=raid1 --raid-devices=2 /dev/sdb1 /dev/sdc1
--spare-devices=1 /dev/sdd1
--level 1, mirror ou raid1 sont de bonnes valeurs pour un RAID-1.
--spare-devices nombre de disques de secours utiliser.
/dev/sdd1 partitions constituant les disques de secours, suivant le nombre
indiqu dans -spare-devices.
Puis : # mkfs -t ext3 /dev/md1
CRATION: RAID-0+1
Il faut au moins quatre partitions.
On doit crer deux matrices RAID-1 quon va regrouper en une matrice RAID-0
# mdadm --create /dev/md0 --level=raid1 --raid-devices=2 /dev/sdb1 /dev/sdc1
# mdadm --create /dev/md1 --level=raid1 --raid-devices=2 /dev/sdd1 /dev/sde1
# mdadm --create /dev/md2 --level=raid0 --raid-devices=2 /dev/md0 /dev/md1
RAID avec mdadm
Puis :
# mkfs -t ext3 /dev/md2
CRATION: RAID-5
RAID avec mdadm
On va utiliser 3 disques de donnes /dev/sdb1, /dev/sdc1, /dev/sdd1 et un disque
de secours /dev/sde1.
# mdadm --create /dev/md5 --level=raid5 --raid-devices=3 /dev/sdb1
/dev/sdc1 /dev/sdd1 --spare-devices=1 /dev/sde1
Puis on formate : # mkfs -t ext3 /dev/md2
SAUVEGARDE DE CONFIGURATION
Pour faciliter la tche de loutil mdadm, on peut crer (ce nest pas obligatoire) le
fichier de configuration /etc/mdadm.conf.
Ce fichier peut tre cr manuellement mais loutil mdadm sait le gnrer.
Il est prfrable de le faire APRS la cration des matrices RAID.
# echo "DEVICE partitions" > /etc/mdadm.conf
RAID avec mdadm
# mdadm --detail --scan>> /etc/mdadm.conf
Le fichier virtuel /proc/mdstat contient des informations sur le RAID. Cest ici que on
peut voir le dtail dun RAID, notamment si un des volumes de la matrice est
dfectueux (Faulty).
Personalities : [raid1]
md0 : active raid1 hda10[2] hda9[1] hda8[0]
104320 blocks [2/2] [UU]
La commande watch permet de vrifier un tat en continu:
Etat du RAID
La commande watch permet de vrifier un tat en continu:
# watch cat /proc/mdstat
On peut aussi utiliser mdadm avec le paramtre --detail :
# mdadm --detail /dev/md0
/dev/md0:
..
2 3 10 -1 spare /dev/hda10
Remarquer quavec cette dernire commande on obtient bien plus de dtails,
notamment quels sont les disques "spare" et "faulty".
On va simuler une panne sur /dev/hda8 :
# mdadm /dev/md0 -f /dev/hda8 (option: -f ou --fail ou --set-failty)
mdadm: set /dev/hda8 faulty in /dev/md0
Regarder ltat du RAID dans /proc/mdstat durant lexcution :
md0 : active raid1 hda10[2] hda9[1] hda8[0](F)
104320 blocks [2/1] [U_]
[=> ] recovery = 8.8% (9216/104320) finish=0.1min
speed=9216K/sec
Remarquer quun (F) est apparu prs de hda8, indiquant un disque Faulty. On
Simuler une panne
Remarquer quun (F) est apparu prs de hda8, indiquant un disque Faulty. On
voit aussi que sur les deux disques, un est en panne et que le RAID reconstruit sa
matrice avec le spare disk.
Aprs lexcution, on obtient :
md0 : active raid1 hda10[1] hda9[0] hda8[2](F)
104320 blocks [2/2] [UU]
Le RAID est reconstruit et fonctionne merveille.
# mdadm --detail /dev/md0
State : clean
2 3 8 -1 faulty /dev/hda8
Le disque Faulty est bien /dev/hda8. /dev/hda10 a pris sa place en tant que disque
de secours. Ainsi, le disque de secours devient un disque RAID de la matrice.
Puisque /dev/hda8 est en panne, on va le remplacer:
Retirer-le avec -r (ou --remove) :
# mdadm /dev/md0 -r /dev/hda8
mdadm: hot removed /dev/hda8
# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 hda10[1] hda9[0]
104320 blocks [2/2] [UU]
Constater que hda8 a disparu. On peut teindre la machine puis remplacer le disque
Remplacer un disque
Constater que hda8 a disparu. On peut teindre la machine puis remplacer le disque
dfaillant. Rallumer la machine, puis repartitionner le disque correctement. Il ny a
plus qu rajouter le disque rpar dans la matrice RAID avec -a (--add) :
# mdadm /dev/md0 -a /dev/hda8
mdadm: hot added /dev/hda8
# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 hda8[2] hda10[1] hda9[0]
104320 blocks [2/2] [UU]
Le disque hda8 apparat nouveau. Voir dtail :
# mdadm --detail /dev/md0
State : clean
2 3 8 -1 spare /dev/hda8
Le disque /dev/hda8 a t remis et est devenu le nouveau disque de secours !
On peut arrter ponctuellement une matrice RAID avec -S (--stop) APRS avoir
dmont le priphrique :
# mdadm --stop /dev/md0
On redmarre une matrice RAID avec -As (--assemble -scan). Cela implique que le
fichier /etc/mdadm.conf est correctement renseign (--scan recherche les
informations dedans).
# mdadm --assemble --scan /dev/md0
Arrt et Relance manuels
Si le RAID ne redmarre pas, on peut tenter avec -R (--run) : il est probable quil
manque un disque ou quune reconstruction en cours nest pas termine :
# mdadm --run /dev/md0
TP
Travaux pratiques
TP

Vous aimerez peut-être aussi