Aller au contenu
Accueil

RAID (informatique)

Contenu · 1 Introduction o 1.1 Différence entre les disques physiques et les disques logiques o 1.2 Lecture et écriture des données o 1.3 Qu'est-ce que le RAID ? o 1.4 Pourquoi utiliser RAID ? o 1.5 Historique · 2 Concepts de base utilisés par l…

Contenu

·         1 Introduction

o    1.1 Différence entre les disques physiques et les disques logiques

o    1.2 Lecture et écriture des données

o    1.3 Qu'est-ce que le RAID ?

o    1.4 Pourquoi utiliser RAID ?

o    1.5 Historique

·         2 Concepts de base utilisés par les systèmes RAID

o    2.1 Mise en cache

o    2.2. Miroir : Plus d'une copie des données

o    2.3 Les rayures : Une partie des données se trouve sur un autre disque

o    2.4 Correction d'erreurs et défauts

o    2.5 Hot spares : utiliser plus de disques que nécessaire

o    2.6 Taille des bandes et des morceaux : répartition des données sur plusieurs disques

o    2.7 Assemblage du disque : JBOD, concaténation ou enjambement

o    2.8 Clone de lecteur

o    2.9 Différentes configurations

·         3 Principes de base : niveaux RAID simples

o    3.1 Niveaux RAID en usage courant

§  3.1.1 RAID 0 "stripping" (rayures)

§  3.1.2 RAID 1 "en miroir

§  3.1.3 RAID 5 "stripping à parité répartie

§  3.1.4 Images

o    3.2 Niveaux de RAID moins utilisés

§  3.2.1 RAID 2

§  3.2.2 RAID 3 "stripping avec parité dédiée

§  3.2.3 RAID 4 "stripping avec parité dédiée

§  3.2.4 RAID 6

§  3.2.5 Images

o    3.3 Niveaux RAID non standard

§  3.3.1 Double parité / Parité diagonale

§  3.3.2 RAID-DP

§  3.3.3 RAID 1.5

§  3.3.4 RAID 5E, RAID 5EE et RAID 6E

§  3.3.5 RAID 7

§  3.3.6 Intel Matrix RAID

§  3.3.7 Pilote RAID Linux MD

§  3.3.8 RAID Z

§  3.3.9 Images

·         4 Rejoindre les niveaux du RAID

·         5 Faire un RAID

o    5.1 RAID logiciel

o    5.2 RAID matériel

o    5.3 RAID assisté par matériel

·         6 Différents termes relatifs aux défaillances du matériel

o    6.1 Taux d'échec

o    6.2 Délai moyen avant la perte de données

o    6.3 Délai moyen de récupération

o    6.4 Taux d'erreurs sur les bits non récupérables

·         7 Problèmes avec le RAID

o    7.1 Ajout ultérieur de disques

o    7.2 Défaillances liées

o    7.3 L'atomicité

o    7.4 Données irrécupérables

o    7.5 Fiabilité du cache en écriture

o    7.6 Compatibilité des équipements

·         8 Ce que le RAID peut et ne peut pas faire

o    8.1 Ce que le RAID peut faire

o    8.2 Ce que le RAID ne peut pas faire

·         9 Exemple

·         10 Références

·         11 Autres sites web

RAID est un acronyme qui signifie Redundant Array of Inexpensive Disks ou Redundant Array of Independent Disks. RAID est un terme utilisé en informatique. Avec le RAID, plusieurs disques durs sont transformés en un seul disque logique. Il existe différentes façons de procéder. Chacune des méthodes qui réunit les disques durs présente des avantages et des inconvénients par rapport à l'utilisation des disques comme disques uniques, indépendants les uns des autres. Les principales raisons pour lesquelles le RAID est utilisé sont les suivantes

  • Faire en sorte que la perte de données soit moins fréquente. Pour ce faire, il faut disposer de plusieurs copies des données.
  • Pour obtenir plus d'espace de stockage en ayant beaucoup de petits disques.
  • Pour obtenir plus de flexibilité (les disques peuvent être changés ou ajoutés pendant que le système continue de fonctionner)
  • Pour obtenir les données plus rapidement.

Il n'est pas possible d'atteindre tous ces objectifs en même temps, il faut donc faire des choix.

Il y a aussi de mauvaises choses :

  • Certains choix peuvent protéger contre la perte de données en raison de la défaillance d'un (ou de plusieurs) disque(s). Mais ils ne protègent pas contre la suppression ou l'écrasement des données.
  • Dans certaines configurations, le RAID peut tolérer qu'un ou plusieurs disques tombent en panne. Après le remplacement des disques défaillants, les données doivent être reconstruites. Selon la configuration et la taille des disques, cette reconstruction peut prendre beaucoup de temps.
  • Certains types d'erreurs rendront impossible la lecture des données

La plupart des travaux sur le RAID sont basés sur un document écrit en 1988.

Les entreprises utilisent des systèmes RAID pour stocker leurs données depuis que cette technologie a été mise au point. Les systèmes RAID peuvent être fabriqués de différentes manières. Depuis sa découverte, le coût de construction d'un système RAID a beaucoup baissé. Pour cette raison, même certains ordinateurs et appareils utilisés à la maison ont des fonctions RAID. Ces systèmes peuvent être utilisés pour stocker de la musique ou des films, par exemple.

Introduction

Différence entre les disques physiques et les disques logiques

Un disque dur est une partie d'un ordinateur. Les disques durs normaux utilisent le magnétisme pour stocker des informations. Lorsque des disques durs sont utilisés, ils sont disponibles pour le système d'exploitation. Dans Microsoft Windows, chaque disque dur reçoit une lettre de lecteur (commençant par C :, A : ou B : sont réservés aux lecteurs de disquettes). Les systèmes d'exploitation de type Unix et Linux ont une arborescence de répertoires à racine unique. Cela signifie que les personnes qui utilisent les ordinateurs ne savent parfois pas où les informations sont stockées (pour être juste, beaucoup d'utilisateurs de Windows ne savent pas non plus où leurs données sont stockées).

En informatique, les disques durs (qui sont du matériel, et qui peuvent être touchés) sont parfois appelés "disques physiques" ou "physical drives". Ce que le système d'exploitation montre à l'utilisateur est parfois appelé disque logique. Un disque physique peut être divisé en différentes sections, appelées partitions de disque. Habituellement, chaque partition de disque contient un système de fichiers. Le système d'exploitation affichera chaque partition comme un disque logique.

Par conséquent, pour l'utilisateur, la configuration avec de nombreux disques physiques et la configuration avec de nombreux disques logiques se ressemblent. L'utilisateur ne peut pas décider si un "disque logique" est identique à un disque physique, ou s'il fait simplement partie du disque. Les réseaux de stockage (SAN) changent complètement cette vue. Tout ce qui est visible d'un SAN est un certain nombre de disques logiques.

Lecture et écriture des données

Dans l'ordinateur, les données sont organisées sous forme de bits et d'octets. Dans la plupart des systèmes, 8 bits constituent un octet. La mémoire de l'ordinateur utilise l'électricité pour stocker les données, les disques durs utilisent le magnétisme. Par conséquent, lorsque des données sont écrites sur un disque, le signal électrique est converti en signal magnétique. Lorsque les données sont lues sur un disque, la conversion se fait dans l'autre sens : Un signal électrique est créé à partir de la polarité d'un champ magnétique.

Qu'est-ce que le RAID ?

Une matrice RAID relie deux ou plusieurs disques durs de manière à former un disque logique. Il y a différentes raisons pour lesquelles cela est fait. Les plus courantes sont les suivantes :

  • Stopper la perte de données, lorsqu'un ou plusieurs disques de la matrice tombent en panne.
  • Obtenir des transferts de données plus rapides.
  • Obtenir la possibilité de changer de disque pendant que le système continue de fonctionner.
  • La jonction de plusieurs disques pour obtenir une plus grande capacité de stockage ; parfois, on utilise beaucoup de disques bon marché plutôt qu'un disque plus cher.

Le RAID se fait en utilisant un matériel ou un logiciel spécial sur l'ordinateur. Les disques durs joints ressembleront alors à un seul disque dur pour l'utilisateur. La plupart des niveaux de RAID augmentent la redondance. Cela signifie qu'ils stockent les données plus souvent, ou qu'ils stockent des informations sur la manière de reconstruire les données. Cela permet à un certain nombre de disques de tomber en panne sans que les données ne soient perdues. Lorsque le disque défaillant est remplacé, les données qu'il devrait contenir seront copiées ou reconstruites à partir des autres disques du système. Cela peut prendre beaucoup de temps. Le temps nécessaire dépend de différents facteurs, comme la taille du réseau.

Pourquoi utiliser RAID ?

L'une des raisons pour lesquelles de nombreuses entreprises utilisent le RAID est que les données contenues dans la matrice peuvent être utilisées simplement. Ceux qui utilisent les données n'ont pas besoin de savoir qu'ils utilisent le RAID. Lorsqu'une panne se produit et que la baie se rétablit, l'accès aux données sera plus lent. L'accès aux données pendant ce temps ralentira également le processus de récupération, mais cela reste beaucoup plus rapide que de ne pas pouvoir travailler du tout avec les données. Selon le niveau du RAID, les disques peuvent toutefois ne pas tomber en panne pendant que le nouveau disque est préparé pour être utilisé. Un disque défaillant à ce moment-là entraînera la perte de toutes les données de la matrice.

Les différentes façons de joindre les disques sont appelées niveaux RAID. Un chiffre plus élevé pour le niveau n'est pas nécessairement meilleur. Les différents niveaux RAID ont des objectifs différents. Certains niveaux RAID nécessitent des disques spéciaux et des contrôleurs spéciaux.

Histoire

En 1978, un homme du nom de Norman Ken Ouchi, qui travaillait chez IBM, a fait une suggestion décrivant les plans de ce qui allait devenir le RAID 5. Les plans décrivaient également quelque chose de similaire au RAID 1, ainsi que la protection d'une partie du RAID 4.

Des chercheurs de l'université de Berkeley ont participé à la planification de la recherche en 1987. Ils essayaient de faire en sorte que la technologie RAID puisse reconnaître deux disques durs au lieu d'un. Ils ont découvert que lorsque la technologie RAID disposait de deux disques durs, elle offrait un bien meilleur stockage qu'avec un seul disque dur. Cependant, elle s'effondre beaucoup plus souvent.

En 1988, les différents types de RAID (1 à 5), ont été décrits par David Patterson, Garth Gibson et Randy Katz dans leur article intitulé "A Case for Redundant Arrays of Inexpensive Disks (RAID)". Cet article a été le premier à appeler la nouvelle technologie RAID et le nom est devenu officiel.

Concepts de base utilisés par les systèmes RAID

Le RAID utilise quelques idées de base, qui ont été décrites dans l'article "RAID : High-Performance, Reliable Secondary Storage" de Peter Chen et d'autres, publié en 1994.

Caching

La mise en cache est une technologie qui a également ses applications dans les systèmes RAID. Il existe différents types de caches qui sont utilisés dans les systèmes RAID :

  • Système d'exploitation
  • Contrôleur RAID
  • Réseau de disques d'entreprise

Dans les systèmes modernes, une demande d'écriture est indiquée comme étant faite lorsque les données ont été écrites dans le cache. Cela ne signifie pas que les données ont été écrites sur le disque. Les demandes provenant de la mémoire cache ne sont pas nécessairement traitées dans le même ordre que celui dans lequel elles ont été écrites dans la mémoire cache. Cela permet, en cas de défaillance du système, de constater que certaines données n'ont pas été écrites sur le disque concerné. C'est pourquoi de nombreux systèmes disposent d'une mémoire cache sauvegardée par une batterie.

En miroir : Plus d'une copie des données

Quand on parle de miroir, c'est une idée très simple. Au lieu que les données se trouvent à un seul endroit, il y a plusieurs copies des données. Ces copies se trouvent généralement sur différents disques durs (ou partitions de disque). S'il y a deux copies, l'une d'entre elles peut échouer sans que les données soient affectées (comme c'est toujours le cas sur l'autre copie). La mise en miroir peut également donner un coup de pouce lors de la lecture des données. Elle sera toujours prise à partir du disque le plus rapide qui répond. L'écriture des données est cependant plus lente, car tous les disques doivent être mis à jour.

Les rayures : Une partie des données se trouve sur un autre disque

Avec les rayures, les données sont divisées en différentes parties. Ces parties se retrouvent ensuite sur différents disques (ou partitions de disques). Cela signifie que l'écriture des données est plus rapide, car elle peut se faire en parallèle. Cela ne signifie pas qu'il n'y aura pas d'erreurs, car chaque bloc de données ne se trouve que sur un seul disque.

Correction d'erreurs et défauts

Il est possible de calculer différents types de sommes de contrôle. Certaines méthodes de calcul des sommes de contrôle permettent de trouver une erreur. La plupart des niveaux RAID qui utilisent la redondance peuvent le faire. Certaines méthodes sont plus difficiles à réaliser, mais elles permettent non seulement de détecter l'erreur, mais aussi de la corriger.

Hot spares : utiliser plus de disques que nécessaire

La plupart des moyens de faire en sorte que le RAID soutienne quelque chose sont appelés "hot spare". Un hot spare est un disque vide qui n'est pas utilisé en fonctionnement normal. Lorsqu'un disque tombe en panne, les données peuvent être copiées directement sur le disque de secours. De cette façon, le disque défaillant doit être remplacé par un nouveau disque vide pour devenir le disque de secours.

Taille des bandes et des morceaux : répartition des données sur plusieurs disques

Le RAID fonctionne en répartissant les données sur plusieurs disques. Deux des termes souvent utilisés dans ce contexte sont la taille des bandes et la taille des morceaux.

La taille du morceau est le plus petit bloc de données qui est écrit sur un seul disque de la matrice. La taille de la bande est la taille d'un bloc de données qui sera réparti sur tous les disques. Ainsi, avec quatre disques et une taille de bande de 64 kilo-octets (ko), 16 ko seront écrits sur chaque disque. La taille des morceaux dans cet exemple est donc de 16 kB. En augmentant la taille de la bande, on obtient un taux de transfert de données plus rapide, mais aussi une latence maximale plus importante. Dans ce cas, c'est le temps nécessaire pour obtenir un bloc de données.

Assemblage du disque : JBOD, concaténation ou enjambement

De nombreux contrôleurs (et aussi des logiciels) peuvent assembler les disques de la manière suivante : Ils prennent le premier disque, jusqu'à la fin, puis ils prennent le second, et ainsi de suite. De cette façon, plusieurs petits disques ressemblent à un grand. Ce n'est pas vraiment du RAID, car il n'y a pas de redondance. De plus, le spanning permet de combiner des disques là où le RAID 0 ne peut rien faire. En général, on appelle cela un simple paquet de disques (JBOD).

C'est comme un parent éloigné du RAID, car le disque logique est constitué de différents disques physiques. La concaténation est parfois utilisée pour transformer plusieurs petits disques en un seul disque utile plus grand. Cela ne peut pas être fait avec le RAID 0. Par exemple, JBOD pourrait combiner des disques de 3 Go, 15 Go, 5,5 Go et 12 Go en un disque logique de 35,5 Go, qui est souvent plus utile que les disques seuls.

Dans le diagramme de droite, les données sont concaténées de la fin du disque 0 (bloc A63) au début du disque 1 (bloc A64) ; de la fin du disque 1 (bloc A91) au début du disque 2 (bloc A92). Si le RAID 0 était utilisé, alors les disques 0 et 2 seraient tronqués à 28 blocs, soit la taille du plus petit disque de la matrice (disque 1) pour une taille totale de 84 blocs.

Certains contrôleurs RAID utilisent JBOD pour parler du travail sur des disques sans fonctions RAID. Chaque disque apparaît séparément dans le système d'exploitation. Ce JBOD n'est pas la même chose que la concaténation.

De nombreux systèmes Linux utilisent les termes "mode linéaire" ou "mode append". L'implémentation de Mac OS X 10.4 - appelée "Concatenated Disk Set" - ne laisse à l'utilisateur aucune donnée utilisable sur les autres disques si l'un d'eux tombe en panne dans un ensemble de disques concaténés, bien que les disques fonctionnent autrement comme décrit ci-dessus.

La concaténation est l'une des utilisations du gestionnaire de volumes logiques sous Linux. Elle peut être utilisée pour créer des lecteurs virtuels.

Clone de lecteur

La plupart des disques durs modernes possèdent une norme appelée "Self-Monitoring, Analysis and Reporting Technology" (S.M.A.R.T). SMART permet de surveiller certaines choses sur un disque dur. Certains contrôleurs permettent de remplacer un seul disque dur avant même qu'il ne tombe en panne, par exemple parce que le test S.M.A.R.T ou un autre test de disque signale trop d'erreurs corrigibles. Pour ce faire, le contrôleur copie toutes les données sur un disque de rechange chaud. Après cela, le disque peut être remplacé par un autre (qui deviendra simplement le nouveau disque de rechange).

Différentes configurations

La configuration des disques et la façon dont ils utilisent les techniques ci-dessus affectent les performances et la fiabilité du système. Lorsque plusieurs disques sont utilisés, l'un d'entre eux est plus susceptible de tomber en panne. C'est pourquoi des mécanismes doivent être mis en place pour pouvoir trouver et réparer les erreurs. Cela rend l'ensemble du système plus fiable, car il est capable de survivre et de réparer la défaillance.

 

Notions de base : niveaux RAID simples

Les niveaux RAID en usage courant

RAID 0 "rayures".

Le RAID 0 n'est pas vraiment un RAID car il n'est pas redondant. Avec le RAID 0, les disques sont simplement assemblés pour former un grand disque. C'est ce qu'on appelle le "striping". Lorsqu'un disque tombe en panne, c'est toute la matrice qui tombe en panne. Par conséquent, le RAID 0 est rarement utilisé pour les données importantes, mais la lecture et l'écriture de données sur le disque peuvent être plus rapides avec le striping car chaque disque lit une partie du fichier en même temps.

Avec le RAID 0, les blocs de disques qui se succèdent sont généralement placés sur des disques différents. Pour cette raison, tous les disques utilisés par un RAID 0 doivent avoir la même taille.

Le RAID 0 est souvent utilisé pour le Swapspace sur les systèmes d'exploitation de type Linux ou Unix.

RAID 1 "en miroir

Avec le RAID 1, deux disques sont mis ensemble. Tous deux contiennent les mêmes données, l'un "miroir" de l'autre. Cette configuration est facile et rapide, qu'elle soit mise en œuvre avec un contrôleur matériel ou par logiciel.

RAID 5 "stripping à parité répartie

Le niveau 5 du RAID est probablement celui qui est utilisé le plus souvent. Au moins trois disques durs sont nécessaires pour construire une baie de stockage RAID 5. Chaque bloc de données sera stocké à trois endroits différents. Deux de ces endroits stockeront le bloc tel qu'il est, le troisième stockera une somme de contrôle. Cette somme de contrôle est un cas particulier de code Reed-Solomon qui n'utilise que l'addition de bits. Il est généralement calculé à l'aide de la méthode XOR. Comme cette méthode est symétrique, un bloc de données perdu peut être reconstruit à partir de l'autre bloc de données et de la somme de contrôle. Pour chaque bloc, un disque différent contiendra le bloc de parité qui contient la somme de contrôle. Ceci est fait pour augmenter la redondance. Tout disque peut tomber en panne. Globalement, il y aura un disque contenant les sommes de contrôle, de sorte que la capacité totale utilisable sera celle de tous les disques sauf un. La taille du disque logique résultant sera la taille de tous les disques ensemble, à l'exception d'un disque qui contient les informations de parité.

Bien sûr, ce processus est plus lent que le niveau 1 du RAID, car à chaque écriture, tous les disques doivent être lus pour calculer et mettre à jour les informations de parité. Les performances de lecture du RAID 5 sont presque aussi bonnes que celles du RAID 0 pour le même nombre de disques. À l'exception des blocs de parité, la distribution des données sur les disques suit le même schéma que le RAID 0. La raison pour laquelle le RAID 5 est légèrement plus lent est que les disques doivent sauter les blocs de parité.

Un RAID 5 avec un disque défaillant continuera à fonctionner. Il est en mode dégradé. Un RAID 5 dégradé peut être très lent. Pour cette raison, un disque supplémentaire est souvent ajouté. C'est ce qu'on appelle un disque de rechange chaud. Si un disque est défaillant, les données peuvent être directement reconstruites sur le disque supplémentaire. Le RAID 5 peut également être réalisé assez facilement dans un logiciel.

Principalement en raison des problèmes de performance des matrices RAID 5 défaillantes, certains experts en bases de données ont formé un groupe appelé BAARF - Battle Against Any Raid Five.

Si le système tombe en panne alors qu'il y a des écritures actives, la parité d'une bande peut devenir incohérente avec les données. Si cela n'est pas réparé avant qu'un disque ou un bloc ne tombe en panne, une perte de données peut se produire. Une parité incorrecte sera utilisée pour reconstruire le bloc manquant dans cette bande. Ce problème est parfois connu sous le nom de "trou d'écriture". Les caches à batterie et les techniques similaires sont couramment utilisées pour réduire les risques de ce type de problème.

Photos

·        

Le RAID 0 met simplement les différents blocs sur les différents disques. Il n'y a pas de redondance.

·        

Avec Raid 1, chaque bloc est présent sur les deux disques

·        

Le RAID 5 calcule des sommes de contrôle spéciales pour les données. Les blocs avec la somme de contrôle et ceux avec les données sont répartis sur tous les disques.

Les niveaux de RAID sont moins utilisés

RAID 2

Il a été utilisé avec de très gros ordinateurs. Des disques spéciaux coûteux et un contrôleur spécial sont nécessaires pour utiliser le RAID de niveau 2. Les données sont distribuées au niveau des bits (tous les autres niveaux utilisent des actions au niveau des octets). Des calculs spéciaux sont effectués. Les données sont réparties en séquences statiques de bits. 8 bits de données et 2 bits de parité sont rassemblés. Ensuite, un code de Hamming est calculé. Les fragments du code de Hamming sont ensuite répartis sur les différents disques.

Le RAID 2 est le seul niveau de RAID qui peut réparer les erreurs, les autres niveaux de RAID ne pouvant que les détecter. Lorsqu'ils constatent que l'information nécessaire n'a pas de sens, ils la reconstruisent simplement. Cela se fait par des calculs, en utilisant les informations sur les autres disques. Si ces informations sont manquantes ou erronées, ils ne peuvent pas faire grand chose. Parce qu'il utilise des codes de Hamming, le RAID 2 peut découvrir quelle partie de l'information est erronée, et ne corriger que cette partie.

Le RAID 2 a besoin d'au moins 10 disques pour fonctionner. En raison de sa complexité et de son besoin de matériel très coûteux et spécial, le RAID 2 n'est plus très utilisé.

RAID 3 "stripping avec parité dédiée".

Le niveau 3 du RAID ressemble beaucoup au niveau 0 du RAID. Un disque supplémentaire est ajouté pour stocker les informations de parité. Cela se fait par l'ajout bit par bit de la valeur d'un bloc sur les autres disques. L'information de parité est stockée sur un disque séparé (dédié). Ce n'est pas une bonne chose, car si le disque de parité tombe en panne, les informations de parité sont perdues.

Le niveau 3 du RAID se fait généralement avec au moins 3 disques. Une configuration à deux disques est identique à un RAID de niveau 0.

RAID 4 "stripping avec parité dédiée".

Ce système est très similaire au RAID 3, sauf que les informations de parité sont calculées sur des blocs plus importants, et non sur des octets individuels. C'est comme le RAID 5. Au moins trois disques sont nécessaires pour une matrice RAID 4.

RAID 6

Le niveau 6 du RAID n'était pas un niveau original du RAID. Il ajoute un bloc de parité supplémentaire à une matrice RAID 5. Il nécessite au moins quatre disques (deux disques pour la capacité, deux disques pour la redondance). Le RAID 5 peut être considéré comme un cas particulier de code Reed-Solomon. Le RAID 5 est un cas particulier, cependant, il ne nécessite qu'un ajout dans le champ de Galois GF(2). C'est facile à faire avec les XORs. Le RAID 6 étend ces calculs. Ce n'est plus un cas particulier, et tous les calculs doivent être effectués. Avec le RAID 6, un total de contrôle supplémentaire (appelé polynôme) est utilisé, généralement de GF (28). Avec cette approche, il est possible de se protéger contre un nombre quelconque de disques défaillants. Le RAID 6 permet d'utiliser deux sommes de contrôle pour se protéger contre la perte de deux disques.

Comme pour le RAID 5, la parité et les données sont sur des disques différents pour chaque bloc. Les deux blocs de parité sont également situés sur des disques différents.

Il y a différentes façons de faire le RAID 6. Elles sont différentes en termes de performances d'écriture et de quantité de calculs nécessaires. Pouvoir écrire plus vite signifie généralement qu'il faut plus de calculs.

Le RAID 6 est plus lent que le RAID 5, mais il permet au RAID de continuer avec deux disques défaillants. Le RAID 6 devient populaire parce qu'il permet de reconstruire une matrice après une panne d'un seul disque, même si l'un des disques restants a un ou plusieurs secteurs défectueux.

Photos

·        

Le RAID 3 ressemble beaucoup au RAID de niveau 0. Un disque supplémentaire est ajouté qui contiendra une somme de contrôle pour chaque bloc de données.

·        

Le RAID 4 est similaire au niveau 3 du RAID, mais il calcule la parité sur des blocs de données plus importants

·        

Le RAID 6 est similaire au RAID 5, mais il calcule deux sommes de contrôle différentes. Cela permet à deux disques de tomber en panne, sans perte de données.

Niveaux RAID non standard

Double parité / Parité diagonale

Le RAID 6 utilise deux blocs de parité. Ceux-ci sont calculés de manière spéciale sur un polynôme. Le RAID à double parité (également appelé RAID à parité diagonale) utilise un polynôme différent pour chacun de ces blocs de parité. Récemment, l'association industrielle qui a défini le RAID a déclaré que le RAID à double parité est une forme différente du RAID 6.

RAID-DP

Le RAID-DP est une autre façon d'avoir une double parité.

RAID 1.5

RAID 1.5 (à ne pas confondre avec RAID 15, qui est différent) est une implémentation RAID propriétaire. Comme le RAID 1, il n'utilise que deux disques, mais il fait à la fois du striping et du mirroring (comme le RAID 10). La plupart des choses se font au niveau du matériel.

RAID 5E, RAID 5EE et RAID 6E

Le RAID 5E, le RAID 5EE et le RAID 6E (avec l'ajout du E pour Enhanced) désignent généralement différents types de RAID 5 ou de RAID 6 avec un spare. Avec ces implémentations, le disque de rechange à chaud n'est pas un disque physique. Il existe plutôt sous la forme d'espace libre sur les disques. Cela augmente les performances, mais cela signifie qu'un disque de secours ne peut pas être partagé entre différentes matrices. Ce système a été introduit par IBM ServeRAID vers 2001.

RAID 7

Il s'agit d'une mise en œuvre propriétaire. Elle ajoute la mise en cache à une matrice RAID 3 ou RAID 4.

Intel Matrix RAID

Certaines cartes mères Intel sont équipées de puces RAID qui ont cette caractéristique. Elle utilise deux ou trois disques, puis les partitionne de manière égale pour former une combinaison de niveaux RAID 0, RAID 1, RAID 5 ou RAID 1+0.

Pilote RAID Linux MD

C'est le nom du pilote qui permet de faire du RAID logiciel avec Linux. En plus des niveaux RAID normaux 0-6, il dispose également d'une implémentation RAID 10. Depuis le noyau 2.6.9, le RAID 10 est un niveau unique. L'implémentation a quelques caractéristiques non standard.

RAID Z

Sun a mis en place un système de fichiers appelé ZFS. Ce système de fichiers est optimisé pour le traitement de grandes quantités de données. Il comprend un gestionnaire de volume logique. Il comprend également une fonction appelée RAID-Z. Il évite le problème appelé trou d'écriture RAID 5 car il a une politique de copie en écriture : Il n'écrase pas les données directement, mais écrit de nouvelles données dans un nouvel emplacement sur le disque. Lorsque l'écriture est réussie, les anciennes données sont supprimées. Il évite les opérations de lecture-modification-écriture pour les petites écritures, car il n'écrit que des bandes complètes. Les petits blocs sont mis en miroir au lieu d'être protégés par parité, ce qui est possible parce que le système de fichiers connaît l'organisation du stockage. Il peut donc allouer de l'espace supplémentaire si nécessaire. Il existe également le RAID-Z2 qui utilise deux formes de parité pour obtenir des résultats similaires à ceux du RAID 6 : la possibilité de survivre à deux pannes de disque sans perte de données.

Photos

·        

Schéma d'une installation RAID DP (Double Parité).

·        

Une configuration RAID matricielle.

Rejoindre les niveaux du RAID

Avec le RAID, différents disques peuvent être assemblés pour obtenir un disque logique, l'utilisateur ne verra que le disque logique. Chacun des niveaux de RAID mentionnés ci-dessus a ses bons et ses mauvais côtés. Mais le RAID peut également fonctionner avec des disques logiques. Ainsi, l'un des niveaux de RAID ci-dessus peut être utilisé avec un ensemble de disques logiques. Beaucoup de gens le remarquent en écrivant les chiffres ensemble. Parfois, ils écrivent un "+" ou un "&" entre les deux. Les combinaisons courantes (utilisant deux niveaux) sont les suivantes :

  • RAID 0+1 : Deux ou plusieurs matrices RAID 0 sont combinées pour former une matrice RAID 1 ; c'est ce qu'on appelle un miroir de bandes
  • RAID 1+0 : Même chose que le RAID 0+1, mais les niveaux du RAID sont inversés ; Bande de miroirs. Cela rend les pannes de disque plus rares que pour le RAID 0+1 ci-dessus.
  • RAID 5+0 : Rayez plusieurs RAID 5 avec un RAID 0. Un disque de chaque RAID 5 peut tomber en panne, mais fait de ce RAID 5 le seul point de défaillance ; si un autre disque de cette matrice tombe en panne, toutes les données de la matrice seront perdues.
  • RAID 5+1 : Miroir d'un ensemble de RAID 5 : dans une situation où le RAID est composé de six disques, trois disques peuvent tomber en panne (sans perte de données).
  • RAID 6+0 : Rayez plusieurs matrices RAID 6 sur un RAID 0 ; deux disques de chaque RAID 6 peuvent tomber en panne sans perte de données.

Avec six disques de 300 GB chacun, d'une capacité totale de 1,8TB, il est possible de faire un RAID 5, avec 1,5 TB d'espace utilisable. Dans ce réseau, un disque peut tomber en panne sans perte de données. Avec le RAID 50, l'espace est réduit à 1,2 To, mais un disque de chaque RAID 5 peut tomber en panne, sans compter que les performances s'en trouvent sensiblement améliorées. Le RAID 51 réduit la taille utilisable à 900 Go, mais permet à trois disques quelconques de tomber en panne.

·        

RAID 0+1 : Plusieurs matrices RAID 0 sont combinées avec un RAID 1

·        

RAID 1+0 : plus robuste que le RAID 0+1 ; prend en charge les pannes de disques multiples, à condition qu'il n'y ait pas deux disques qui fassent échouer un miroir.

·        

RAID 5+1 : Trois de ces disques peuvent tomber en panne, sans perte de données.

Faire un RAID

Il y a différentes façons de faire un RAID. Il peut être réalisé soit avec un logiciel, soit avec du matériel.

Logiciel RAID

Un RAID peut être réalisé avec un logiciel de deux manières différentes. Dans le cas d'un RAID logiciel, les disques sont connectés comme des disques durs normaux. C'est l'ordinateur qui fait fonctionner le RAID. Cela signifie que pour chaque accès, l'unité centrale doit également effectuer les calculs pour le RAID. Les calculs pour le RAID 0 ou le RAID 1 sont simples. Cependant, les calculs pour le RAID 5, le RAID 6 ou l'un des niveaux combinés du RAID peuvent représenter beaucoup de travail. Dans un RAID logiciel, il peut être difficile de démarrer automatiquement à partir d'une matrice qui a échoué. Enfin, la façon dont le RAID est effectué dans un logiciel dépend du système d'exploitation utilisé ; il n'est généralement pas possible de reconstruire une matrice RAID logicielle avec un système d'exploitation différent. Les systèmes d'exploitation utilisent généralement des partitions de disques durs plutôt que des disques durs entiers pour fabriquer des matrices RAID.

RAID matériel

Un RAID peut également être réalisé avec du matériel. Dans ce cas, un contrôleur de disque spécial est utilisé ; cette carte de contrôleur cache le fait qu'il fait du RAID au système d'exploitation et à l'utilisateur. Les calculs des informations de checksum, et autres calculs liés au RAID sont effectués sur une puce spéciale dans ce contrôleur. Cela rend le RAID indépendant du système d'exploitation. Le système d'exploitation ne verra pas le RAID, il verra un seul disque. Les différents fabricants font du RAID de différentes manières. Cela signifie qu'un RAID construit avec un contrôleur RAID matériel ne peut pas être reconstruit par un autre contrôleur RAID d'un fabricant différent. Les contrôleurs RAID matériels sont souvent chers à l'achat.

RAID assisté par matériel

Il s'agit d'un mélange de RAID matériel et de RAID logiciel. Le RAID matériel utilise une puce de contrôle spéciale (comme le RAID matériel), mais cette puce ne peut pas effectuer beaucoup d'opérations. Elle n'est active que lorsque le système est démarré ; dès que le système d'exploitation est entièrement chargé, cette configuration est comme le RAID logiciel. Certaines cartes mères ont des fonctions RAID pour les disques qui y sont connectés ; le plus souvent, ces fonctions RAID sont effectuées sous forme de RAID matériel. Cela signifie qu'un logiciel spécial est nécessaire pour pouvoir utiliser ces fonctions RAID et pour pouvoir récupérer un disque défaillant.

Différents termes relatifs aux défaillances du matériel

Différents termes sont utilisés lorsqu'il est question de défaillances matérielles :

Taux d'échec

Le taux d'échec est la fréquence à laquelle un système tombe en panne. Le temps moyen avant défaillance (MTTF) ou le temps moyen entre deux défaillances (MTBF) d'un système RAID est le même que celui de ses composants. Un système RAID ne peut pas protéger contre les défaillances de ses disques durs individuels, après tout. Les types de RAID les plus complexes (tout ce qui va au-delà du "striping" ou de la "concaténation") peuvent aider à garder les données intactes même si un disque dur individuel est défaillant.

Temps moyen avant la perte de données

Le temps moyen avant la perte de données (MTTDL) donne le temps moyen avant qu'une perte de données ne se produise dans un tableau donné. Le temps moyen avant la perte de données d'un RAID donné peut être supérieur ou inférieur à celui de ses disques durs. Cela dépend du type de RAID utilisé.

Délai moyen de récupération

Les réseaux qui ont des redondances peuvent se remettre de certaines défaillances. Le temps moyen de récupération indique le temps qu'il faut à un réseau défaillant pour revenir à son état normal. Cela ajoute à la fois le temps nécessaire pour remplacer un mécanisme de disque défaillant et le temps nécessaire pour reconstruire le réseau (c'est-à-dire pour répliquer les données à des fins de redondance).

Taux d'erreurs sur les bits non récupérables

Le taux d'erreur sur les bits irrécupérables (UBE) indique la durée pendant laquelle un disque dur sera incapable de récupérer des données après l'utilisation de codes de contrôle de redondance cyclique (CRC) et de multiples tentatives.

Problèmes avec le RAID

Il y a aussi certains problèmes avec les idées ou la technologie qui se cachent derrière le RAID :

Ajout de disques à une date ultérieure

Certains niveaux RAID permettent d'étendre le réseau en ajoutant simplement des disques durs, à un moment ultérieur. Les informations telles que les blocs de parité sont souvent dispersées sur plusieurs disques. L'ajout d'un disque à la matrice signifie qu'une réorganisation devient nécessaire. Une telle réorganisation est comme une reconstruction de la matrice, elle peut prendre beaucoup de temps. Lorsque cela est fait, l'espace supplémentaire peut ne pas être encore disponible, car il faut en informer à la fois le système de fichiers de la matrice et le système d'exploitation. Certains systèmes de fichiers ne supportent pas d'être développés après leur création. Dans ce cas, toutes les données doivent être sauvegardées, le tableau doit être recréé avec la nouvelle présentation et les données doivent y être restaurées.

Une autre option pour ajouter du stockage consiste à créer une nouvelle matrice et à laisser un gestionnaire de volume logique gérer la situation. Cela permet de développer presque tous les systèmes RAID, même le RAID1 (qui est lui-même limité à deux disques).

Les échecs liés

Le mécanisme de correction d'erreur du RAID suppose que les défaillances des disques sont indépendantes. Il est possible de calculer le nombre de fois qu'un équipement peut tomber en panne et d'organiser la matrice de manière à rendre la perte de données très improbable.

Dans la pratique, cependant, les lecteurs ont souvent été achetés ensemble. Ils ont à peu près le même âge, et ont été utilisés de manière similaire (appelée usure). De nombreux lecteurs tombent en panne à cause de problèmes mécaniques. Plus un disque est ancien, plus ses pièces mécaniques sont usées. Les pièces mécaniques qui sont vieilles sont plus susceptibles de tomber en panne que celles qui sont jeunes. Cela signifie que les défaillances des lecteurs ne sont plus statistiquement indépendantes. En pratique, il est possible qu'un deuxième disque tombe également en panne avant que le premier n'ait été récupéré. Cela signifie que la perte de données peut se produire à un rythme important, dans la pratique.

Atomicité

Un autre problème qui se pose également avec les systèmes RAID est que les applications attendent ce que l'on appelle l'Atomicité : Soit toutes les données sont écrites, soit aucune ne l'est. L'écriture des données est connue comme une transaction.

Dans les tableaux RAID, les nouvelles données sont généralement écrites à l'endroit où se trouvaient les anciennes données. C'est ce qu'on appelle la mise à jour sur place. Jim Gray, un chercheur en bases de données, a écrit un article en 1981 dans lequel il décrit ce problème.

Très peu de systèmes de stockage permettent une sémantique d'écriture atomique. Lorsqu'un objet est écrit sur un disque, un dispositif de stockage RAID écrit généralement toutes les copies de l'objet en parallèle. Très souvent, il n'y a qu'un seul processeur responsable de l'écriture des données. Dans ce cas, les écritures de données sur les différents disques se chevauchent. C'est ce qu'on appelle l'écriture chevauchée ou l'écriture décalée. Une erreur qui se produit pendant le processus d'écriture peut donc laisser les copies redondantes dans des états différents. Pire encore, elle peut ne laisser les copies ni dans l'ancien ni dans le nouvel état. L'enregistrement repose sur le fait que les données originales sont soit dans l'ancien, soit dans le nouveau état. Cela permet de revenir sur le changement logique, mais peu de systèmes de stockage fournissent une sémantique d'écriture atomique sur un disque RAID.

L'utilisation d'un cache d'écriture à batterie peut résoudre ce problème, mais seulement dans un scénario de panne de courant.

Le support transactionnel n'est pas présent dans tous les contrôleurs RAID matériels. Par conséquent, de nombreux systèmes d'exploitation l'incluent pour protéger contre la perte de données lors d'une interruption d'écriture. Novell Netware, à partir de la version 3.x, a inclus un système de suivi des transactions. Microsoft a introduit le suivi des transactions via la fonction de journalisation dans NTFS. Le système de fichiers WAFL de NetApp résout ce problème en ne mettant jamais à jour les données en place, comme le fait ZFS.

Données irrécupérables

Certains secteurs d'un disque dur peuvent être devenus illisibles à cause d'une erreur. Certaines implémentations RAID peuvent remédier à cette situation en déplaçant les données ailleurs et en marquant le secteur sur le disque comme étant mauvais. Cela se produit à environ 1 bit sur 1015 dans les lecteurs de disque d'entreprise, et 1 bit sur 1014 dans les lecteurs de disque ordinaires. Les capacités des disques sont en constante augmentation. Cela peut signifier que parfois, un RAID ne peut pas être reconstruit, car une telle erreur est constatée lorsque la matrice est reconstruite après une panne de disque. Certaines technologies telles que le RAID 6 tentent de résoudre ce problème, mais elles souffrent d'une pénalité d'écriture très élevée, en d'autres termes l'écriture des données devient très lente.

Fiabilité du cache d'écriture

Le système de disque peut accuser réception de l'opération d'écriture dès que les données se trouvent dans le cache. Il n'a pas besoin d'attendre que les données aient été physiquement écrites. Toutefois, toute coupure de courant peut alors entraîner une perte importante de données de toute donnée mise en file d'attente dans un tel cache.

Avec le RAID matériel, une batterie peut être utilisée pour protéger ce cache. Cela permet souvent de résoudre le problème. En cas de panne de courant, le contrôleur peut terminer l'écriture du cache lorsque le courant est revenu. Mais cette solution peut toujours échouer : la batterie peut être usée, l'alimentation peut avoir été coupée trop longtemps, les disques peuvent être déplacés vers un autre contrôleur, le contrôleur lui-même peut tomber en panne. Certains systèmes peuvent effectuer des contrôles périodiques de la batterie, mais ceux-ci utilisent la batterie elle-même et la laissent dans un état où elle n'est pas complètement chargée.

Compatibilité des équipements

Les formats de disque sur les différents contrôleurs RAID ne sont pas nécessairement compatibles. Par conséquent, il peut ne pas être possible de lire une matrice RAID sur un matériel différent. Par conséquent, une panne de matériel autre qu'un disque peut nécessiter l'utilisation d'un matériel identique, ou une sauvegarde, pour récupérer les données.

Ce que le RAID peut et ne peut pas faire

Ce guide est tiré d'un fil de discussion d'un forum lié au RAID. Il a été réalisé pour aider à mettre en évidence les avantages et les inconvénients du choix du RAID. Il s'adresse aux personnes qui souhaitent choisir le RAID pour augmenter les performances ou la redondance. Il contient des liens vers d'autres fils de discussion de son forum contenant des commentaires anecdotiques générés par les utilisateurs sur leurs expériences avec le RAID.

Ce que le RAID peut faire

  • Le RAID peut protéger le temps de fonctionnement. Les niveaux RAID 1, 0+1/10, 5 et 6 (et leurs variantes telles que 50 et 51) compensent une défaillance mécanique du disque dur. Même après la défaillance du disque, les données de la matrice peuvent toujours être utilisées. Au lieu d'une longue restauration à partir de bandes, de DVD ou d'autres supports de sauvegarde lents, le RAID permet de restaurer les données sur un disque de remplacement à partir des autres membres de la matrice. Au cours de ce processus de restauration, il est disponible pour les utilisateurs dans un état dégradé. Ceci est très important pour les entreprises, car les temps d'arrêt entraînent rapidement une perte de rentabilité. Pour les particuliers, elle permet de protéger le temps de fonctionnement des grandes matrices de stockage, ce qui nécessiterait une restauration longue à partir de dizaines de DVD ou de quelques bandes dans le cas où un disque défaillant n'est pas protégé par la redondance.
  • Le RAID peut augmenter les performances de certaines applications. Les niveaux RAID 0, 5 et 6 utilisent tous des bandes. Cela permet à plusieurs broches d'augmenter les taux de transfert pour les transferts linéaires. Les applications de type station de travail fonctionnent souvent avec des fichiers volumineux. Elles bénéficient grandement du striping de disque. Les applications utilisant des fichiers vidéo ou audio en sont des exemples. Ce débit est également utile pour les sauvegardes de disque à disque. Le RAID 1 ainsi que d'autres niveaux RAID basés sur le striping peuvent améliorer les performances pour les modèles d'accès avec de nombreux accès aléatoires simultanés, comme ceux utilisés par une base de données multi-utilisateurs.

Ce que le RAID ne peut pas faire

  • Le RAID ne peut pas protéger les données sur la matrice. Une matrice RAID possède un seul système de fichiers. Cela crée un point de défaillance unique. Il y a beaucoup de choses qui peuvent arriver à ce système de fichiers autres qu'une défaillance physique du disque. Le RAID ne peut pas se défendre contre ces sources de perte de données. Le RAID n'empêchera pas un virus de détruire des données. Le RAID n'empêchera pas la corruption. Le RAID n'enregistrera pas les données lorsqu'un utilisateur les modifie ou les supprime par accident. Le RAID ne protège pas les données contre les défaillances matérielles de tout autre composant que les disques physiques. Le RAID ne protège pas les données contre les catastrophes naturelles ou causées par l'homme, telles que les incendies et les inondations. Pour protéger les données, elles doivent être sauvegardées sur un support amovible, comme un DVD, une bande magnétique ou un disque dur externe. La sauvegarde doit être conservée dans un endroit différent. Le RAID seul n'empêchera pas une catastrophe, quand (et non pas si) elle se produit, de se transformer en perte de données. Les catastrophes ne peuvent pas être évitées, mais les sauvegardes permettent d'éviter la perte de données.
  • Le RAID ne peut pas simplifier la reprise après sinistre. Lorsqu'il fonctionne avec un seul disque, celui-ci peut être utilisé par la plupart des systèmes d'exploitation car ils sont livrés avec un pilote de périphérique commun. Cependant, la plupart des contrôleurs RAID ont besoin de pilotes spéciaux. Les outils de récupération qui fonctionnent avec des disques uniques sur des contrôleurs génériques nécessiteront des pilotes spéciaux pour accéder aux données sur les matrices RAID. Si ces outils de récupération sont mal codés et ne permettent pas de fournir des pilotes supplémentaires, alors une matrice RAID sera probablement inaccessible à cet outil de récupération.
  • Le RAID ne peut pas améliorer les performances de toutes les applications. Cette affirmation est particulièrement vraie pour les utilisateurs d'applications de bureau et les joueurs typiques. Pour la plupart des applications de bureau et des jeux, la stratégie de mise en mémoire tampon et les performances de recherche du ou des disques sont plus importantes que le débit brut. L'augmentation du taux de transfert brut soutenu montre peu de gains pour ces utilisateurs, car la plupart des fichiers auxquels ils accèdent sont de toute façon très petits. Le striping de disque en RAID 0 augmente les performances de transfert linéaire, et non les performances de tampon et de recherche. Par conséquent, le striping de disque en RAID 0 n'apporte que peu ou pas de gain de performance dans la plupart des applications de bureau et des jeux, bien qu'il y ait des exceptions. Pour les utilisateurs d'ordinateurs de bureau et les joueurs dont l'objectif est d'obtenir des performances élevées, il est préférable d'acheter un disque unique plus rapide, plus grand et plus cher que d'utiliser deux disques plus lents/plus petits en RAID 0. Même en utilisant les derniers, les meilleurs et les plus gros disques en RAID 0, il est peu probable que les performances augmentent de plus de 10 %, et les performances peuvent baisser dans certains modes d'accès, en particulier les jeux.
  • Il est difficile de faire passer RAID à un nouveau système. Avec un seul disque, il est relativement facile de déplacer le disque vers un nouveau système. Il peut simplement être connecté au nouveau système, s'il dispose de la même interface. Cependant, ce n'est pas si facile avec une matrice RAID. Il existe un certain type de métadonnées qui indiquent comment le RAID est configuré. Un BIOS RAID doit être capable de lire ces métadonnées afin de pouvoir construire avec succès l'ensemble et le rendre accessible à un système d'exploitation. Comme les fabricants de contrôleurs RAID utilisent différents formats pour leurs métadonnées (même les contrôleurs de différentes familles d'un même fabricant peuvent utiliser des formats de métadonnées incompatibles), il est presque impossible de déplacer une matrice RAID vers un contrôleur différent. Lorsque l'on déplace une matrice RAID vers un nouveau système, il faut prévoir de déplacer également le contrôleur. Avec la popularité des contrôleurs RAID intégrés à la carte mère, cela est extrêmement difficile. En général, il est possible de déplacer les membres et les contrôleurs de l'unité RAID ensemble. Le RAID logiciel dans les produits serveurs Linux et Windows peut également contourner cette limitation, mais le RAID logiciel en a d'autres (principalement liés aux performances).

Exemple

Les niveaux de RAID les plus utilisés sont le RAID 0, le RAID 1 et le RAID 5. Supposons qu'il y ait une configuration à 3 disques, avec 3 disques identiques de 1 To chacun, et que la probabilité de défaillance d'un disque pour une durée donnée soit de 1%.

Niveau RAID

Capacité utilisable

Probabilité d'échec

donnée en pourcentage

Probabilité d'échec

1 dans ... les cas échouent

0

3 TB

2,9701%

34

1

1 TB

0,0001%

1 million

5

2 TB

0,0298%

3356

Auteur

AlegsaOnline.com RAID (informatique)

URL: https://fr.alegsaonline.com/art/80859

Partager

Sources