Notions sur le RAID

Télécharger au format doc, pdf ou txt
Télécharger au format doc, pdf ou txt
Vous êtes sur la page 1sur 13

RAID (Redundant Array of Independant Disks).

Il existe aujourd'hui cinq types de solutions haut de gamme :


 SCSI vers IDE (contrôleur RAID SCSI et disques durs IDE)
 SCSI vers SATA (contrôleur RAID SCSI et disques durs Serial ATA)
 SCSI vers SCSI (contrôleur RAID SCSI et disques durs SCSI)
 FC-AL vers SCSI (contrôleur RAID FC-AL et disques durs SCSI)
 FC-AL vers FC-AL (contrôleur RAID FC-AL et disques durs FC-AL)

Ces solutions vous permettent d'avoir, chacune dans leur domaine, des taux de transferts optimums.

La technologie RAID
Comment accroître du même coup capacité de stockage et sécurité des données

Le principe

Les systèmes RAID permettent l'utilisation conjointe de plusieurs disques afin d'assurer une plus grande
zone de stockage, une meilleure sécurité des données, ou les deux simultanément. L'ordinateur hôte voit
un seul disque de grande capacité. Le système RAID se charge de répartir les données entre les disques,
et de calculer les sommes de contrôle afin de reconstruire les données d'un disque en panne (sauf en RAID
0).

On distingue deux types de systèmes RAID :


 Le RAID logiciel : il s'agit d'une couche logicielle liée au système d'exploitation et à la machine sur
laquelle elle s'exécute. La CPU de la machine hôte est donc sollicitée tant pour les services
normaux que pour la gestion du RAID.
 Le RAID matériel : un contrôleur spécifique est relié à la machine hôte (soit sur son bus natif, soit
par un bus SCSI ou FC-AL). De l'autre côté du contrôleur sont connectés les disques sur lesquels
sont enregistrés données et sommes de contrôle. Le contrôleur a la charge de la gestion des
disques, libérant ainsi la machine hôte pour ses services propres.

Il existe deux types de contrôleurs RAID :


 Le contrôleur indépendant - Logé dans un emplacement 5,25 pouces demi-*ou pleine hauteur, il se
raccorde au bus SCSI ou FC-AL du serveur et contient des contrôleurs de bus SCSI ou FC-AL
pour la gestion des disques.

 Le contrôleur sur carte bus (type PCI) - Il se connecte sur le bus d'entrée/sortie du serveur, et
contient également des contrôleurs de bus SCSI ou FC-AL pour la gestion des disques.
Les avantages d'un contrôleur indépendant par rapport à un contrôleur bus sont multiples :
 Indépendance par rapport au système hôte - Aucun pilote logiciel n'est nécessaire dans le cas d'un
contrôleur indépendant, car il est vu sur le bus comme un disque dur. D'autre part, un contrôleur
peut se brancher sur n'importe quelle plate-forme (Intel, SPARC, HP, etc.) sans aucune contrainte.
 Configuration de contrôleurs redondants possible - Si l'un des contrôleurs tombe en panne, le
second prend le relais, assurant ainsi une continuité de service.
 Possibilité de multi-attachement - Il est possible de partager un contrôleur RAID entre 2 ou
plusieurs serveurs, même si ceux-ci sont de types différents (NT, UNIX, etc.). Des économies
importantes peuvent ainsi être réalisées.

Il est à noter que malgré la sécurité apportée par de nombreux niveaux de RAID, ces systèmes ne
dispensent pas des sauvegardes.

Les avantages du système RAID


 Capacité de stockage plus importante (sauf en RAID 1)
 Sécurité des données en cas de panne d'un disque (sauf en RAID 0), par reconstruction à partir de
disque miroir (RAID 1 et 0+1) ou de sommes de contrôle (RAID 3 ou 5). L'insertion du disque de
remplacement s'effectue à chaud, sans arrêt électrique du système.

Les différents niveaux de RAID


RAID 0 : Les données sont réparties sur deux
disques. Ainsi, l'espace de stockage est
multiplié par 2, et les accès sont plus rapides.
Ce niveau n'offre aucune sécurité.

RAID 1 : Les données sont écrites


simultanément sur le disque et son miroir. La
capacité de stockage n'est pas accrue, mais
la sécurité est optimale.

RAID 0+1 : Ce niveau combine les niveaux 0


et 1. Espace de stockage plus important,
sécurité optimale, rapidité d'écriture et de
lecture, au détriment d'un coût plus élevé.

RAID 3 : L'un des disques est dédié à


l'enregistrement des sommes de contrôle ; les
données sont enregistrées sur les autres
disques. L'écriture met en œuvre tous les
disques, la lecture n'active que les disques de
données.

RAID 5 : Ici, la parité est répartie de manière


égale entre les disques de l'ensemble. Les
opérations d'écriture sont plus lentes qu'en
niveau 3, mais la lecture est plus rapide.

RAID 6 : Dans ce niveau, deux ensembles de


parités sont calculés et répartis entre les
disques de l'ensemble. Ce niveau supporte
une panne de deux disques simultanément
(au lieu d'un seul en RAID 5).

2.3 Niveaux RAID


Voici une brève description des niveaux de RAID gérés par Linux. Certaines de ces infos sont
basiques mais j'ai fait mention d'éléments spécifiques à la mise en oeuvre au sein de Linux.
Sautez cette section si vous savez ce qui se cache derrière le RAID. Vous y reviendrez quand
vous aurez des problèmes :o)

Les patches RAID pour Linux offrent les possibilités suivantes :

 mode linéaire
o Deux disques et plus sont combinés par concaténation. L'écriture sur le disque
RAID se fera donc d'abord sur le premier puis sur le second quand il sera plein
et ainsi de suite. Il n'est pas nécessaire que les disques soient de la même taille
et, pour tout dire, la taille n'est ici d'aucune importance.
o Il n'y a aucune redondance à ce niveau. Si un disque tombe en panne, vous
perdrez surement toutes vos données. Vous aurez peut être la chance d'en
récupérer une partie si, du point de vue du système de fichiers, il ne manque
qu'un gros bloc consécutif de données.
o Les performances en lecture/écriture ne vont pas s'améliorer automatiquement
mais si plusieurs utilisateurs se servent simultanément du périphérique, il se
peut qu'ils accèdent à des disques différents et que les performances en soient
augmentées.
 RAID-0
o Ou "stripe". Semblable au mode linéaire à ceci près que les lectures et les
écritures ont lieu en parallèle sur les disques. Les disques doivent avoir
sensiblement la même taille. Les périphériques se remplissent progressivement
de la même façon. Si l'un des deux est plus grand que l'autre, l'espace
supplémentaire est toujours employé pour la matrice RAID mais vous
n'utiliserez qu'un des deux disques vers la fin. Les performances en patiront.
o Comme en linéaire, il n'y a pas de redondance des données mais en plus vous
ne serez pas capable de récupérer vos données si un disque tombe en panne.
Au lieu de ce qu'il vous manque un gros bloc de données, votre système de
fichiers comprendra de nombreux petits trous. e2fsck ne sera
vraisemblablement pas en mesure de reconstituer quoi que ce soit.
o Les performances en lecture/écriture augmenteront puisque les lectures et les
écritures auront lieu sur les deux disque en même temps. C'est souvent ce qui
motive l'emploi du RAID-0. Si les bus sont assez rapides, vous pourrez flirter
avec N*P Mo/s.
 RAID-1
o Il s'agit du premier mode redondant. Le RAID-1 s'employe à partir de deux
disques auxquels viennent éventuellement se greffer des disques de secours. Ce
mode duplique les informations d'un disque sur l(es)'autre(s). Bien sûr, les
disques doivent être de même taille. Si un disque est plus grand que les autres,
la matrice sera de la taille du plus petit.
o Jusqu'à N-1 disques otés (ou défectueux), les données restent intactes et si le
contrôleur (SCSI, IDE, etc...) survit, la reconstruction sera immédiatement
entamée sur un des disques de secours après détection de l'anomalie.
o Les performances en écriture sont légèrement inférieures à celles d'un disque
unique vu que les données doivent être écrites sur chaque disque de la matrice.
Les performances en lecture sont en général bien plus mauvaises en raison de
la mise en oeuvre au sein du code d'une stratégie d'équilibrage simpliste.
Cependant, cette partie des sources a été revue pour le noyau 2.4.
 RAID-4
o Ce niveau RAID n'est pas utilisé très souvent. Il s'employe à partir de trois
disques et plus. Au lieu d'effectuer une copie des informations, on conserve la
parité sur un disque et on écrit les données sur les autres comme on le ferait
avec une matrice RAID-0. Un disque étant dédié à la parité, la taille de la
matrice sera (N-1)*S ou S est la taille du plus petit disque. Comme en RAID-1,
les disques doivent avoir la même taille sans quoi le S précédent correspondra
à celui du plus petit disque.
o Si un disque lache, l'information de parité permet de reconstruire toutes les
données. Si deux disques lachent, toutes les données sont perdues.
o On n'utilise pas beaucoup ce niveau en raison du stockage de la parité sur un
disque unique. L'information doit être mise à jour à chaque fois qu'on écrit sur
un des disques, ce qui constitue un goulot d'étranglement si le disque de parité
n'est pas nettement plus rapide que les autres. Cependant, si vous avez
beaucoup de petits disques lents et un disque très rapide, le RAID-4 peut
s'avérer très utile.
 RAID-5
o Il s'agit surement du mode le plus approprié quand on souhaite combiner un
grand nombre de disques tout en conservant de la redondance. Le RAID-5
s'employe à partir de trois disques avec éventuellement des disques de secours.
La matrice sera de taille (N-1)*S, comme en RAID-4. A la différence du
RAID-4, l'information de parité est répartie équitablement entre les différents
disques, évitant ainsi le goulot d'étranglement du RAID-4.
o Si un des disques tombe en panne les données restent intactes. La
reconstruction peut commencer immédiatement si des disques de secours sont
disponibles. Si deux disques rendent simultanément l'âme, toutes les données
sont perdues. Le RAID-5 ne survit pas à la défaillance de plus d'un disque.
o Les performances en lecture/écriture s'améliorent mais il est difficile de prévoir
de combien.

Disques de secours

Les disques de secours ne prenent pas part à la matrice RAID jusqu'à ce qu'un des disques de
celle-ci tombe en panne. Quand un disque lache, il est marqué défectueux et la reconstruction
est entamée sur le premier disque de secours disponible.

Les disques de secours renforcent donc la sécurité de systèmes RAID-5 qui peuvent être
difficilement accessibles. Le système peut fonctionner pendant un certain temps aec un disque
défectueux tant que le disque de secours assure la redondance.

Vous ne pouvez être sûr de la survie de votre système en cas de défaillance d'un disque. La
couche RAID peut faire son travail mais les gestionnaires SCSI peuvent receller des erreurs,
les composants IDE peuvent se bloquer et d'autres phénomènes peuvent se produire.

Raid a été développé pour permettre d'outrepasser les capacités limites des unités
de disques durs, pour améliorer les performances et pour augmenter la fiabilité en
apportant la tolérance de panne.

Augmenter la capacité.
RAID permet de mettre "bout à bout" des disques durs, ce qui permet d'accroître la
taille du volume.

Par exemple, avec deux disques d'un Go, on peut créer un seul volume de 2Go.

Améliorer les performances.


Les données sont écrites sur plusieurs disques à la fois. Ainsi, chacun des disque n'a
qu'une partie des données à inscrire.

Exemple: Soit un fichier de 10Mo. S'il est écrit sur un disque ayant un débit de
5mo/s, il sera écrit en 2 secondes. Si l'écriture est partagée entre deux disques, le
temps total ne sera plus que d'une seconde. Si on utilise 5 disques, le temps est
réduit à 40/100èmes de secondes. Ce raisonnement est un peu théorique, les gains
observés n'étant pas aussi spectaculaires à cause de la gestion du système RAID,
de l'écriture d'informations de tolérance de panne, et surtout de goulets
d'étranglement ne permettant pas toujours l'arrivée suffisamment rapide des données
au disques.

Apporter la tolérance de panne.


Certaines configurations RAID permettent de se prémunir contre les défaillances d'un
disque. Cette fonctionnalité est très importante, car sinon, la panne d'un seul des
disques d'un ensemble RAID entraîne la perte des données de tous les disques.
C'est d'ailleurs ce qui arrive au niveau de RAID 0.

Combinaison redondance et distribution des


données (par Renaud Hilleret)

Segments de Segments de
Adressage
données de données de
Indépendant
taille réduite grande taille

Pas de redondance Conventionnel RAID 0

Duplication (x2) RAID 1

Parité Disque RAID 3 RAID 4

Parité Distribuée RAID 5


2 codes de Reed-Solomon RAID 5 + RAID 6

Code de Hamming RAID 2

Les différents niveaux de RAID.


* Les articles en vert sont tirés de l'excellent ouvrage de Renaud Hilleret sur les
disques RAID disponible chez Hermès.

RAID 0

C'est le plus dangereux. Il consiste à mettre bout à bout des partitions. Les
utilisateurs de NT WorkStation le connaissent car c'est l'agrégat de partition sans
contrôle de parité proposé dans l'administrateur de disques.

En cas de défaillance de l'un des disques, l'ensemble des données de l'agrégat


est perdu.

Les données étant réparties sur les deux disques, le débit est amélioré.

RAID 1

Ce niveau de RAID a été développé dans le soucis d'accroître la sécurité des


données en dupliquant sur un deuxième disque qui conservera les mêmes données.
Si un des disques tombe en panne, l'autre, censé être identique servira de secours.
En cas de grave erreur système, je ne sais pas trop ce qui peut arriver, mais en tout
cas, vous aurez deux disques pour vos tentatives de récupération ;-)

C'est donc un dispositif de miroir. La capacité et le débit ne sont pas augmentés.

RAID 2

C'est encore un miroir, sauf qu'un seul des disques est sollicité lors des opérations
de lecture. Ils écrivent tous les deux, mais lors de la lecture un des disque se "
repose " ce qui est censé améliorer sa fiabilité. Il nécessite en général une carte
spéciale.

RAID 3

Raid 3 fonctionne suivant le même principe que Raid 0, sauf que l'on utilise un
troisième disque servant à stocker des indications de parité (c'est l'agrégat à bande
avec parité de NT Serveur). Cependant, une solution matérielle aura le bénéfice de
moins ralentir le serveur. Il est impératif d'utiliser un disque très solide, pour assurer
le contrôle de parité, car c'est celui qui travaille le plus (+-2x plus que les autres). Si
l'un des deux autres disque tombe en panne, le contrôle de parité servira à
reconstruire les données.
Si le disque de contrôle de parité tombe en panne on se retrouve en Raid 0, ce qui
n'est pas totalement catastrophique.

RAID 4 (par Renaud Hilleret)

Un système de disques RAID 4 ne présente quune différence de structure des


données avec un RAID 3. Les informations sont regroupées dans des segments de
taille variable, d'un ou plusieurs secteurs. Cela permet d'assurer le traitement de
demandes de lecture de taille inférieure au segment en parallèle sur plusieurs
disques physiques.

Lors d'écritures de taille inférieure à la taille des segments, le contrôleur doit mettre à
jour les données de parité. Cette opération nécessite entre autre une lecture de
lancienne parité suivie de lécriture de la nouvelle. Ces deux opérations impliquent
lunique disque de parité, le transformant en goulot détranglement. Pour cette raison,
les matrices à parité distribuée sur l ensemble des disques (RAID 5) sont toujours
préférées aux systèmes RAID de niveau 4.

RAID 5

Le "disque de contrôle" est réparti entre tous les disques, donc tous les disques
travaillent autant (en théorie). Vous avez tous les avantages. Le système est n fois
plus rapide (n = le nombre de disque, enfin à peu près...), si un (et un seul) disque
tombe en panne, il suffit de l'enlever et de le remplacer par un tout beau, les données
seront régénérées à partir des autres disques... Attention, cette manoeuvre nécessite
bien sûr un équipement hotplug (branchement à chaud).

Notez toutefois que l'espace total de stockage sera diminué de l'équivalent d'un
disque (pour le contrôle), donc il vaut mieux utiliser 7 disques que 3. Avec trois
disque on perd un tiers de l'espace, avec 7, seulement un 7ème. CQFD.

Il est possible d'opter pour une solution logicielle, très pénalisante du point de vue
temps CPU (surtout en cas de panne). Une solution plus performante consiste à se
faire offrir une belle tour Raid (non il n'y a pas de faute) avec tout plein de jolis
disques à l'intérieur et richement dotée en mémoire. D'ailleurs, je recherche des
gentils mécènes pouvant m'offrir quelques petites tours Raid en échange de ma
gratitude ;-)

Orthogonal RAID 5 (par Renaud Hilleret)

Le système ORTHOGONAL RAID 5 a été proposé par IBM. Dautres niveaux ont été
proposés par différents constructeurs de matériels informatiques. Le système
proposé par IBM est basé sur une technique logicielle qui utilise un contrôleur par
disque dur appartenant à une matrice. Le reste de la configuration est identique à
une matrice RAID5. Ainsi, la matrice peut continuer à fonctionner malgré la panne
dun disque (RAID5), mais aussi dun contrôleur de disque (un contrôleur par disque).

RAID 6 (par Renaud Hilleret)


La définition des systèmes RAID 6 présente un des cas pour lesquels plusieurs
définitions sont proposées par différents acteurs.

Larticle de CHEN [Chen94] propose que ces systèmes utilisent deux codes de
redondance (dun type différent de celui des RAID 2) qui leur permettent de continuer
à fonctionner après les pannes simultanées de deux des disques de la matrice. Ces
matrices sont organisées comme des matrices de niveau RAID 5. On nomme aussi
ces systèmes matrices à redondance P+Q. Ce principe a été mis en oeuvre par la
société StorageTek sur sa gamme de matrice de disques Iceberg destinées aux sites
centraux IBM.

IBM donne une toute autre définition dun système RAID 6 (ou HYBRID RAID 1)
[Dodson93]. Ce système est basé sur une configuration RAID 1. La copie des
informations contenues dans le segment numéro 1 est située sur le segment numéro
2, mais décalée dun disque vers la droite.

RAID 10

C'est une combinaison entre l'agrégat et le miroir. Il est donc le plus sûr et le plus
performant.

Il est rapide car les données sont réparties sur plusieurs disques, il est sûr car le
contrôle de parité est réparti sur tous les disques.

RAID S

Si vous avez des infos, qui pourraient me permettre de le différencié du RAID 3 En


effet, ce niveau de RAID comprend aussi un disque de contrôle dédié.

RAID H

Ce niveau de RAID est à l'état de prototype, vous ne devriez donc pas le trouver à la
FNAC, ni même chez DARTY.

Avantages et inconvénients des principaux niveaux de RAID (par


Renaud Hilleret)

NIVEAU AVANTAGES INCONVENIENTS


Les meilleures Espace disque pour
RAID 1 performances redondance
Débit Performances en entrées-
RAID 3 sorties
Espace disque pour
redondance
Entrées / Sorties Performances en écriture
RAID 5
Espace disque pour
redondance
Disponibilité > RAID 5 Performances en écriture
RAID 6
Entrées / Sorties

Quels sont les différents niveaux RAID ?

RAID 0 – lecteurs en agrégat par bande sans parité, en groupe non redondant

Ce type de configuration d'un


groupe de disques est le plus rapide et le plus efficace en termes de stockage des données, mais il
n'assure pas la tolérance de pannes ; si un lecteur tombe en panne, la défaillance touche toute la
batterie. En l'absence de parité, cette configuration offre la meilleure densité de stockage.
L'entrelacement améliore la vitesse de fonctionnement, puisque les opérations de lecture et écriture
peuvent être effectuées simultanément sur chaque disque.

RAID 1 – Écriture miroir


Ce type de configuration à
tolérance de pannes est le plus rapide dans cette catégorie, mais le moins efficace en termes de
stockage des données. C'est probablement la méthode la plus utilisée de nos jours. Comme toutes les
autres configurations en batterie nécessitent d'utiliser trois lecteurs ou plus, c'est le seul choix possible
lorsque deux lecteurs seulement sont nécessaires. Les deux lecteurs qui composent la 'paire en
miroir' sont perçus comme un seul lecteur par le système d'exploitation ; chacun d'eux est le miroir de
l'autre. En cas de défaillance de l'un des deux lecteurs, les données restent disponibles sur l'autre.
Comme les données sont toujours identiques sur les deux lecteurs, les performances en lecture sont
presque doublées, puisque des opérations consécutives de lecture peuvent se produire sur chaque
lecteur simultanément. Les performances en écriture restent standard.

RAID 2 – Entrelacement des secteurs avec conservation des informations ECC (codage avec
correction des erreurs) sur un lecteur

Comme les informations d'ECC sont enregistrées sur chaque secteur de tous les lecteurs, cette
configuration n'offre aucun avantage sur RAID 3 et n'est pas utilisée.

RAID 3 – Entrelacement des secteurs avec conservation des informations de parité sur un
lecteur
Les informations de parité sont
enregistrées sur un seul lecteur, et le contrôle d'intégrité des données repose sur l'ECC des lecteurs
eux-mêmes, comme dans RAID 2. Comme les informations de parité sont enregistrées sur un disque
réservé à cet effet, un lecteur quelconque de la batterie peut tomber en panne sans que ses données
soient perdues. Elles peuvent être reconstruites sur un lecteur de remplacement, à l'aide des
informations restantes et des informations de parité. Pour conserver de bonnes performances lors du
transfert de petits fichiers, il peut être nécessaire d'utiliser des moteurs synchronisés sur tous les
lecteurs. Les opérations de lecture et d'écriture ne peuvent pas être effectuées en recouvrement, mais
les performances en lecture sont améliorées, puisque des lectures consécutives peuvent être
effectuées en même temps sur tous les lecteurs.

RAID 4 – Entrelacement de secteurs très importants, avec conservation des informations de


parité sur un lecteur

Il s'agit d'une version de RAID 3 plus rapide, dans la mesure où la lecture complète d'un fichier peut
être effectuée sur un seul disque. Les performances en écriture ne sont pas améliorées, puisque le
lecteur des informations de parité doit recevoir des mises à jour à chaque opération d'écriture. Comme
les avantages sur RAID 3 sont peu significatifs et que les performances en écriture sont inférieures à
celles de RAID 5, cette configuration n'est pas utilisée.

RAID 5 – Entrelacement de secteurs importants, avec entrelacement de parité par rotation


Comme il n'y a pas de lecteur
réservé aux informations de parité, les performances en écriture sont supérieures à celles de RAID 3,
grâce au recouvrement des données et à des écritures de mise à jour des informations de parité. Les
opérations de lecture peuvent être entrelacées, puisque tous les lecteurs contiennent des agrégats de
données. RAID 1 reste plus rapide, mais RAID 5 offre une meilleure efficacité de stockage. La mise à
jour des informations de parité est gérée plus efficacement par RAID 5, en vérifiant les changements
dans les bits de données et en ne modifiant que les bits de parité correspondants. Pour les opérations
d'écriture de petites quantités de données, ces améliorations sont sans effet, car la plupart des
lecteurs mettent entièrement à jour les secteurs pour chaque opération d'écriture. Par contre, pour les
écritures de grandes quantités de données, seuls les secteurs dans lesquels des modifications de bits
doivent être effectuées sont réécrits, et l'amélioration est manifeste. La gestion des informations de
parité réduit les performances en écriture, avec dans certains cas une vitesse qui n'est que le tiers de
celle de RAID 1, c'est pourquoi RAID 5 n'est en général pas utilisé dans les processus exigeant
d'excellentes performances.

L'entrelacement
La méthode RAID de formation d'un lecteur logique unique à partir de plusieurs unités physiques fait
appel à un processus appelé l'entrelacement. Celui-ci consiste à organiser les informations de façon
logique, afin de répartir les fichiers individuels au sein d'un groupe de lecteurs. Un segment peut être
composé d'un seul octet ou s'étendre sur plusieurs secteurs. Cette méthode offre l'avantage
d'autoriser un accès plus rapide aux données, car les lectures peuvent s'effectuer en parallèle sur les
lecteurs individuels. Par contre, une fois le lecteur logique formaté, la capacité de l'ensemble est fixe.
L'extension est donc plus compliquée qu'un simple ajout de modules de lecture.

Vous aimerez peut-être aussi