Le RAID dans la pratique

17 juillet 2007 à 16h02
0

Le RAID dans la pratique

0096000000490796-photo-dd-en-raid.jpg
Si l'acronyme RAID désigne pour certains de gentils policiers au regard doux et à la voix tendre ou pour d'autres une escapade mouvementée dans des contrées éloignées et peu civilisées, nous préférons aujourd'hui nous occuper des Redundant Array of Independent Disks, que nous pourrions traduire par « matrice redondante de disques indépendants ». Cette technologie permet de stocker des données en utilisant plusieurs Disques durs et en optimisant leur complémentarité afin d'obtenir, selon les cas, plus de sécurité et de fiabilité, ou plus de performances.

Il existe de très nombreuses variantes du système RAID, et vous avez peut être déjà entendu parler de RAID 0, 1, 5 ou 10. Ces chiffres désignent des modes de fonctionnement spécifiques de la technologie RAID : nous avons décidé de ne présenter que les plus utilisées.

Une autre interrogation quand on parle du RAID est la possibilité d'utiliser cette technologie de façon logicielle, alors que les puristes utiliseront probablement une solution matérielle. Nous verrons les avantages et les inconvénients de chacune de ces possibilités.

Enfin, pour illustrer notre propos sur le RAID logiciel, nous vous montrerons comment réaliser un RAID 0 très simplement avec Windows XP.

Le RAID et ses déclinaisons

A la fin des années 70, le RAID a été pensé comme un système de récupération de données stockées sur un support défectueux. Une dizaine d'années plus tard, bien des variantes de cette première idée étaient nées, dont certaines n'avaient pas pour but de sécuriser les données, mais bien d'utiliser l'agrégation de disques durs pour améliorer les performances de transfert. C'est l'idée du RAID 0.

Le RAID 0

Ce procédé, connu sous le nom de striping en anglais, est en fait une configuration du RAID qui fait fonctionner des disques durs (2 au minimum) en parallèle. Le principe est le suivant : deux (ou plus) disques durs montés en RAID 0 apparaissent sous la forme d'un disque unique au niveau de votre Poste de Travail. Mais en réalité, lorsque vous enregistrez un fichier de 2 Mo sur ce disque dur unique, le fichier est séparé en un certain nombre de morceaux dont la taille dépend de celle des « blocs » de votre disque dur, c'est-à-dire la taille minimale d'allocation définie pour votre disques durs. Exemple : si vous possédez 4 disques durs en RAID 0, tous définis avec des blocs de 128 Ko, alors l'écriture d'un fichier de 2 Mo s'effectuera en 16 enregistrements distincts, soit sur 4 « bandes » de 512 Ko (une bande étant composée d'un bloc sur chaque disque) : le premier tronçon de 128 Ko sera écrit sur le disque numéro 1, la seconde partie sur le disque 2, les troisième et quatrième morceaux respectivement sur les unités 3 et 4, et ainsi de suite jusqu'à avoir écrit l'ensemble du fichier.

01F4000000550844-photo-raid-0.jpg
Représentation schématique du fonctionnement du RAID 0 : les différentes parties du fichier sont réparties sur les disques durs présents


L'avantage de cette méthode est la multiplication des sources pour la lecture ou l'écriture d'un fichier : là où un seul disque dur doit lire ou écrire l'ensemble du fichier, les unités montées en RAID 0 n'ont qu'une partie égale à la taille du fichier divisée par le nombre de disques de la pile RAID. Par conséquent, plus vous augmentez le nombre de disques durs, plus votre vitesse de transfert est accrue.

Si l'intérêt d'une telle configuration est certain, l'inconvénient qu'elle comporte est toutefois de taille à rendre frileux les inconditionnels de la vitesse : en effet, si un fichier est réparti sur plusieurs disques, la défaillance d'un de ceux-ci (et un seul suffit) rend le fichier complètement inaccessible, car il manquerait une partie de ce fichier sans laquelle celui ci n'a plus de signification numérique. La perte d'un des disques durs de la pile entraîne la perte de toutes les données. Voilà pourquoi le RAID 0 n'est pas le plus utilisé par les connaisseurs, car son fonctionnement contient un risque trop important de voir ses données se volatiliser. Statistiquement, il est deux fois plus probable de perdre ses fichiers avec deux disques durs, trois fois plus avec trois unités, etc. Toutefois, ce mode est parfait pour travailler sur des données non critiques telles que des jeux ou un montage vidéo, le gain de performance pouvait attendre 300% avec quatre disques durs.

Notez que ce type de procédé nécessite l'utilisation de disques durs de même capacité, sans quoi c'est la capacité la plus faible qui sera retenu au moment du montage de la pile RAID (l'unique disque dur observé dans le Poste de Travail ayant alors pour taille n x t, n étant le nombre de disque, et t la taille du disque le plus petit.

Le RAID 1

00DC000000532991-photo-disque-dur-maxtor-maxline-iii-320go-serial-ata-ii-16mo.jpg
Au contraire du RAID 0, le RAID 1 ne vise pas à améliorer les performances, mais à assurer la pérennité des données d'un disque dur en cas de défaillance matérielle en copiant tout simplement le contenu de ce disque sur un disque de récupération. C'est ce qu'on appelle le « miroitage » (mirroring en anglais) de disques, l'un étant la copie exacte de l'autre. Dans votre Poste de Travail, vous ne voyez ici aussi qu'une seule unité, dont la taille sera celle de votre disque dur de plus faible capacité. Le contrôle de l'exactitude de la copie entre les deux disques n'est pas de votre ressort, et vous n'avez pas à vous occuper de cette maintenance. Chaque modification inscrite sur le disque dur « principal » est reportée sur le disque dur « secondaire ». Evidemment il est tout à fait possible de travailler avec plus de deux disques durs, ce qui diminue d'autant la probabilité de perdre ses données (le système supporte alors n-1 pannes, n étant le nombre de disques durs) mais cela a un coût et cela s'apparente plus à du RAID 0+1 ou 1+0 (ou RAID 10) dont nous parlerons plus tard.

Lors de la défaillance d'un des disques de la pile, le contrôleur vous prévient et désactive l'unité incriminée. Une fois le remplacement effectué, il reconstitue, soit automatiquement, soit sur intervention manuelle, le miroir, c'est à dire la copie de l'ensemble des données.

Enfin au point de vue des performances, s'il est vrai qu'il n'a pas pour but premier de les améliorer, le RAID 1 permet d'accélérer la lecture en lisant les données depuis les 2 disques en parallèle (si le contrôleur le permet).

Le RAID 5

C'est la combinaison des deux configurations précédentes : le RAID 5 permet à la fois d'améliorer les performances tout en assurant une sécurité confortable des données. Son principe : l'utilisation de trois disques durs au minimum, qui sont à tour de rôle mis en RAID 0 deux à deux, tandis que le troisième sert à stocker un bloc de contrôle. Ce système permet donc, quelque soit le disque défaillant, de recréer les données manquantes à partir des deux autres disques, le tout dans un contexte où les données sont reparties comme avec le RAID 0.

Le RAID 10 (ou 1+0)

00C8000000550398-photo-raid-10.jpg
C'est un fonctionnement légèrement différent du RAID 5, qui demande moins de ressources CPU et qui allie également les RAID 0 et 1. Ici, un seul volume sera affiché par votre Poste de Travail, mais il sera en fait composé de deux « grappes » de deux disques en RAID 1 (soit quatre unités au total et au minimum). La sécurité est assurée par le RAID 1 au niveau des grappes, les performances par le RAID 0 qui lie les deux groupes. Cela revient à un RAID 0, mais assuré par des RAID 1 « localement ». Seul inconvénient, le coût de l'ensemble, puisqu'il faut pour réaliser cette configuration au moins 4 disques durs de même taille.

Le RAID 0+1

C'est l'inverse du RAID 10 : en effet, ce ne sont plus deux (ou plus) grappes de disques en RAID 1 qui sont reliées en RAID 0 que l'on trouve dans cette configuration, mais deux (ou plus) grappes d'unités en RAID 0 reliées entre elles par un RAID 1. L'avantage de cette méthode est d'obtenir un miroitage rapide, car effectué entre deux unités dont les performances sont doublées par rapport à des disques seuls. Ceci dit, cette configuration réclame un minimum de 4 disques durs, et vous ne disposez que d'une capacité deux fois inférieure à celle qui existe physiquement, soit donc deux disques durs dont l'espace est inutilisable. Avec des disques de 80 Go, cela fait 160 Go d'espace disque, 160 Go de miroir.

Le JBOD

Le JBOD (pour Just a Bunch of Disks) est une configuration plutôt simple à appréhender : elle permet de lier tous ses disques durs en une seule et même unité, sans gain de performances ni de sécurité. Les données sont enregistrées disque par disque de façon totalement transparente pour l'utilisateur. Donc une fois le premier disque rempli, les données restantes sont enregistrées sur le second disque et ainsi de suite en fonction du nombre de disques. La capacité du volume JBOD obtenu est simplement la somme des capacités de vos disques durs. Quel est l'intérêt me direz vous, par rapport aux RAID 0 par exemple ? Premièrement et contrairement au RAID 0, l'endommagement physique d'un disque dur n'entraîne pas la perte des données contenues sur les autres unités. Deuxièmement, la présence d'un grand nombre de disques dans une tour est à l'origine d'un affichage plutôt déroutant : 8 disques durs dans le Poste de Travail, il faut s'y retrouver ! Transformer deux ou trois unités en une seule n'est à ce moment là pas du luxe...

RAID logiciel ou RAID matériel ?

C'est une question qui est à l'origine de nombreux débats sur le Net en général, sur les forums spécialisés en particulier : quel est la meilleur solution, la plus sûre, la plus performante ? Logicielle ou matérielle ? Nous ne prendrons pas partie ici, tant les performances sont dépendantes du matériel utilisé, de son ancienneté, de l'usage que l'on en fait... Nous allons juste décrire les avantages et inconvénients de chacun sans parti pris.

Le RAID matériel

00C8000000350793-photo-carte-contr-leur-belkin-carte-sata-ii-raid-pcie-f5u251.jpg
Dans cette configuration, une carte ou un composant est dédié à la gestion des opérations. Il s'agit généralement d'une carte d'extension PCI plus ou moins perfectionnée, disposant de connecteurs classiques, parfois au format IDE, Serial ATA ou SCSI. Un contrôleur raid est en général doté d'un processeur spécifique, de mémoire, et est capable de gérer tous les aspects du système de stockage RAID grâce au firmware embarqué.

Du point de vue du système d'exploitation, le contrôleur RAID matériel offre une virtualisation complète du système de stockage. Le système d'exploitation considère chaque volume RAID comme un disque et n'a pas connaissance de ses constituants physiques.

Les avantages de ce type de solution sont les suivants :
  • reconstruction autonome des piles RAID en cas de changement de matériel ;
  • remplacement à chaud d'un disque dur connecté à une carte contrôleur ;
  • les vérifications de cohérence et les opérations de maintenance et diagnostiques sont prises en charge par les puces dédiées, ce qui allège le rôle du processeur et du bus système.
A contrario, il existe certains inconvénients :
  • les piles RAID installées sur un contrôleur matériel sont très dépendantes de sa structure et même de son firmware, ce qui occasionne des problèmes en cas de panne, car il faut retrouver un modèle similaire si l'on veut retrouver le système dans un état semblable à celui qui existait avant la panne;
  • le prix de ce type de matériel, car un contrôleur digne de ce nom (c'est à dire équipé d'un processeur et de modules de mémoire performants) est assez cher, alors que des cartes bas de gamme ne pourront faire mieux qu'un RAID logiciel.

Le RAID semi-matériel

C'est le cas de la grande majorité des contrôleurs RAID utilisés, c'est à dire ceux qui sont intégrés aux Cartes mères. Ils gèrent la plupart du temps les RAID 0 et 1 sur des Disques durs en IDE ou en Serial-ATA. Ces composants sont plutôt bon marché et ne possèdent absolument pas la puissance de calcul et la polyvalence de leurs homologues dédiés, et ce type de matériel est d'ailleurs plus à apparenter à des contrôleurs de disques possédant quelques fonctions avancés plutôt qu'à un véritable contrôleur RAID.

Le RAID logiciel

Nous sommes ici dans un système très éloigné de la solution matérielle, la présence d'un simple contrôleur de disque suffisant à assurer le support physique. Le contrôle du RAID est fourni par une couche logicielle contenue dans le système d'exploitation. C'est donc une solution assez souple, mais qui va demander un certain effort aux niveaux de ressources pour pouvoir fonctionner correctement.

Les avantages d'une solution logicielle sont indéniables :
  • souplesse d'utilisation et d'administration ;
  • grande interopérabilité : vous pouvez passer d'une machine à une autre sans problème, la seule condition étant de conserver la couche logicielle, c'est à dire ... le même système d'exploitation ;
  • c'est une solution gratuite, ce qui n'est pas négligeable.
Cependant, quelques problèmes sont également présents :
  • 0078000000511897-photo-manchot-linux-logiciel-libre-open-source.jpg
    la détection et le diagnostic d'un élément corrompu d'une pile ne sont absolument pas aussi performants qu'avec une contrôleur matériel dédié ;
  • les ressources utilisées par cette méthode sans beaucoup plus élevées que pour une solution en dur, notamment pour du RAID 1 ou 5 (le RAID 0 n'est au contraire pas très gourmand) ;
  • les possibilités sont plus ou moins réduites avec un système d'exploitation, car il ne gère pas toutes les configurations possibles : Windows XP gère officiellement le RAID 0 alors Windows 2003 Server offre la possibilité de faire du RAID 0, 1 ou 5. Mac OS X autorise les RAID 0 et 1, la palme revenant aux distributions Linux utilisant des noyaux 2.6 et plus récents, les modes 0, 1, 5, 6 et 10 étant implémentés.

Quid de la réparation de la pile ?

Que ce passe t'il lorsqu'il se passe ce pour quoi le RAID a été créé, c'est à dire une panne matérielle ? Pour une pile en RAID 0, vous étiez prévenus, toutes vos données sont perdues ! Pour les autres configurations, cela dépend de votre montage. Si vous avez optez pour la création d'une pile RAID via une solution matérielle, le simple remplacement du disque dur défaillant (qu'il faut toutefois savoir trouver...) suffit à restaurer la pile, le contrôleur se chargeant de la reconstruire. Pour une solution logicielle, il sera nécessaire de trouver le disque en cause, le changer et refaire la manipulation pour recréer la pile, ce qui demande un investissement plus poussé.

Le RAID avec le BIOS

Nous voulons vous présenter ici un exemple simple de RAID semi-matériel, semi car ce n'est pas une carte dédiée qui gère le RAID avec un processeur et de la mémoire spécifiques, mais bien la carte mère. Ici, c'est une M2N32 SLI Deluxe, équipée du northbridge nForce 590 SLI de Nvidia, qui nous a servi de cobaye. Notez que la marque au caméléon n'est pas la seule à fournir de bon chipset pour le contrôle du RAID, Intel et AMD (dans une moindre mesure) proposant également des solutions adaptées.

Pour commencer, rendez vous dans le BIOS, là où tout se passe. Ici, c'est dans l'onglet « Advanced »que nous avons pu trouver le panneau de configuration des connecteurs Serial-ATA. Vous devez dans cette page activer la gestion du RAID par votre carte mère, et définir quels sont les disques qui seront accessibles à la configuration RAID. Ici, les disques branchés sur les ports 1 et 2 seront nos victimes.

012C000000550967-photo-article-raid-2.jpg
Le choix des disques durs accessibles à la pile RAID s'effectue ici.

Ceci étant fait, sauvegarder les modifications de votre BIOS et rebootez (F10 la plupart du temps). Le RAID étant activé, vous devriez voir apparaître un message vous spécifiant (en anglais probablement) que vous pouvez appuyer sur une touche (ou une combinaison de touche, F10 pour nous) pour accéder à la configuration du contrôleur RAID. Vous tombez alors sur ce type d'écran, où vous pouvez (pour certaines cartes mères) choisir le type de RAID souhaité : 0,1, et même 5. Notez que vous avez également le choix dans la taille des « bandes » pour les RAID 0 et 5, ce qui est un réglage fin réservé aux initiés.

012C000000550968-photo-article-raid-3.jpg
012C000000550970-photo-article-raid-5.jpg

Pour les cartes mères qui le proposent, vous avez le choix entre les RAID 0 (striping), 1 (mirroring) ou 5.

Nous testons ici le striping, c'est à dire le RAID 0, en choisissant deux disques durs à empiler. Cette manipulation est très simple, et une simple validation vous amène à l'écran suivant, qui vous prévient avant d'effectuer l'opération que les données des deux unités concernées seront perdues.

012C000000550969-photo-article-raid-4.jpg
012C000000550971-photo-article-raid-6.jpg

La sélection des disques à introduire dans la pile RAID 0 est particulièrement simple, et l'avertissement lié à l'effacement de ces disques est explicite.

La pile RAID est maintenant créée, et vous pouvez en connaître le détail sur ces écrans. Reste une manipulation simple à effectuer : la définition de cette nouvelle unité sous Windows. Pour cela rendez vous dans le Panneau de Configuration en affichage classique, puis « Outils d'administration ». Là, choisissez « Gestion de l'ordinateur », puis dans l'onglet « Stockage », cliquez sur « Gestion des disques ». Le disque créé apparaît ici comme un espace non alloué, et il faut donc créer un « Nouveau volume simple » afin d'attribuer à la pile RAID un système de fichier, un nom, etc.

Note : comme pour une unité de stockage classique, vous pouvez créer des partitions avec une telle configuration.

012C000000550972-photo-article-raid-7.jpg
012C000000550973-photo-article-raid-8.jpg

La pile RAID 0 est prête, il ne reste plus qu'à la définir sous Windows.

Le RAID avec Windows

0078000000550802-photo-disques-durs-en-raid.jpg
Depuis Windows 2000, les déclinaisons « Pro » du système d'exploitation de Microsoft (Windows Server 2003, NT4, 2000 et XP Pro) sont capables de gérer le RAID 0,1 ou 5, même si officiellement Microsoft n'a implémenté que le RAID 0 et 1. Il est toutefois possible de faire du RAID 5 avec Windows XP, mais au prix de quelques manipulations qui vous feront transformer des fichiers systèmes via un éditeur hexadécimal et passer par le CD de Windows et sa console de récupération. Nous prendrons donc ici l'exemple du RAID 0 sous Windows Vista.

Si ce mode demeure une configuration très dangereuse pour vos données (une défaillance entraînant inévitablement la perte de l'ensemble de vos fichiers stockés sur les disques d'une pile RAID 0), certains utilisateurs en usent avec parcimonie dans des cas très spécifiques : le montage vidéo, photo ou les jeux sont autant de terrains où le RAID 0 pourra offrir un apport conséquent en terme de performances.

Installation

Un minimum deux disques durs de même taille est requis, même si nos conseils se portent davantage sur un disque dur « système », sur lequel votre OS est installé, et deux disques durs en RAID 0 pour vos jeux et autres travaux numériques. Une fois vos disques durs branchés, rendez vous dans le gestionnaire des disques (dans le Panneau de Configuration en affichage classique, puis « Outils d'administration ». Là, choisissez « Gestion de l'ordinateur », puis dans l'onglet « Stockage », cliquez sur « Gestion des disques »). C'est ici que le travail s'effectue : cliquez avec le bouton de droite sur le rectangle représentant le premier disque dur que vous souhaitez voir figurer dans votre future pile RAID. Vous devez supprimer toutes les partitions de chacun des deux disques, ce qui demande la plus grande précaution, car vous ne devez pas vous tromper de disque, sous peine de perdre de précieuses données. Une fois cette chose faite, renouveler le clic bouton de droite et choisissez « Nouveau volume agrégé par bandes ».

012C000000550975-photo-gestionnaire-de-disque.jpg
Le gestionnaire de disque va vous permettre de créer votre pile RAID 0.

Une fenêtre s'ouvre alors, vous permettant de sélectionner les disques à inclure dans la pile. Ici ne figure que les disques non partitionnés, ce qui évite toute mauvaise manipulation.

012C000000550979-photo-s-lection-disque-raid.jpg
Sélectionnez les disques durs qui feront partie de votre pile RAID 0.

Cliquez sur « Suivant » pour arriver à l'ultime étape de la création de votre pile RAID 0, à savoir le formatage (que nous vous conseillons rapide), l'attribution du système de fichiers (conservez NTFS) et la taille des unités d'allocations (pour le RAID 0, laisser le choix par défaut, pour le RAID 1, cela se discute davantage...). Vous pouvez également attribuer un nom de volume à votre pile qui, une fois créée, possédera logiquement la taille cumulée des deux disques de la pile (si vous avez opté pour deux disques de capacité identique).

012C000000550974-photo-cr-ation-disque.jpg
0142000000550978-photo-poste-de-travail-raid-0.jpg

Ultime étape : la création de l'unité RAID 0 ; une fois la manipulation terminée, la pile RAID apparaît dans le Poste de Travail.


Notez enfin que cette solution logicielle est par essence très souple, c'est pourquoi vous pouvez facilement démonter une pile RAID, ou encore utiliser des disques durs externes, ce qui semble délicat pour du RAID matériel.

012C000000550980-photo-suppression-disque-raid.jpg
Si vous souhaitez démonter votre pile RAID, un simple retour dans le gestionnaire de disque et le tour est joué !

Quid des performances ?

Loin de nous l'idée de vouloir effectuer des tests poussés pour évaluer les performances du RAID 0 par Windows Vista, mais un test rapide en lecture et en écriture montre que deux disques empilés possèdent des performances doublées par rapport à un disque seul. Ce n'est certes pas une surprise, mais il fallait avant tout le vérifier...

012C000000550976-photo-hd-tach-pas-de-raid.jpg
012C000000550977-photo-hd-tach-raid-0.jpg

Les performances d'une unité RAID 0 sont bien la somme des performances de ses constituants...

La création d'une pile RAID 0 sous Windows est donc très facile à mettre en oeuvre, en évitant de passer par le BIOS. Cependant, si cette solution est souple et d'une grande simplicité, elle reste tout de même coûteuse en ressources lorsque vous utilisez le RAID 1 ou 5. Et une nouvelle fois, n'oubliez pas que le RAID 0 n'est pas à utiliser sans un minimum de précautions !

Conclusion

0078000000551037-photo-empilement-de-disques-durs.jpg
Le RAID est une pratique sur laquelle nous avons maintenant assez de recul pour dire que c'est une technologie fiable et performante dans certains cas. Il existe de très nombreuses variantes dont nous n'avons pas fait état ici, et de nouvelles sont inventées encore aujourd'hui. C'est donc une méthode intéressante pour palier à un éventuel problème matériel, ou encore pour accélérer de manière conséquente les performances de transfert.

Cependant, aussi complète et complexe soient les solutions proposées, et qu'elles soient matérielles ou logicielles, elles ne peuvent en aucun cas palier une mauvaise manipulation de l'utilisateur, comme l'effacement d'un fichier par exemple. Le RAID n'est pas une solution de sauvegarde, mais bien un moyen de s'affranchir d'une panne matérielle.

C'est pourquoi vous devez toujours effectuer des sauvegardes de vos données les plus importantes, particulièrement si vous utilisez une pile RAID 0, dont le nombre de Disques durs qui la compose augmente avec le risque de perdre ses données. Une solution à privilégier pour ne pas voir ses données disparaître serait par exemple un RAID 5 ou 10 accompagné de sauvegardes en ligne ou local. Pour ces dernières solutions, nous vous redirigeons tout naturellement vers nos articles.
Haut de page