
Fiches techniquesRAID19 décembre 2007 19:05
Cette technologie, permet de stocker des données sur plusieurs disques durs, afin d’améliorer les performances d’un système. Elle est généralement utilisée sur les machines critiques. Le gain peut s’exprimer, en fonction du type de RAID retenu, en terme de fiabilité (tolérance aux pannes et intégrité des données), ou de rapidité. Un système RAID rend donc un service de disponibilité. Présentation de la technologie RAID
La technologie RAID a été présentée en 1987 par l’université de Berkeley (Californie – USA) en 1987, dans un article intitulé "A Case of Redundant Arrays of Inexpensive Disks (RAID)". Le but de cette technologie était de trouver une alternative aux disques de 6,5 et 9,5 pouces équipant les gros serveurs et particulièrement coûteux. Elle consiste à utiliser plusieurs disques durs courants, moins onéreux, pour simuler une unité de stockage unique. Cet ensemble de disques est appelé grappe. La traduction de l’acronyme RAID en français est "matrice redondante de disques indépendants". Les objectifs de cette technologie sont les suivants :
Une architecture RAID repose sur des disques durs, mais aussi sur un contrôleur RAID responsable de la gestion de cette technologie au sein du système. Lorsqu’un disque dur est défectueux, selon les systèmes, il est possible de le remplacer à chaud (sans arrêter le système) ou à froid (un arrêt complet du système est alors nécessaire). Cette fonctionnalité n’est pas disponible avec toutes les technologies :
Les différents niveaux de RAIDLes grappes de disques RAID peuvent avoir plusieurs utilisations, appelées niveaux RAID. Chacun décrit la manière dont les informations sont réparties entre les disques. Chaque niveau correspond à un mode d’utilisation en fonction de critères tels que le coût, les performances, ou la fiabilité des données et du système. Les niveaux les plus courants sont décrits dans la suite. Le niveau 0 Le niveau 0 est appelé "stripping", ou entrelacement de données. Les données stockées sont réparties sur l’ensemble des disques de la grappe. Chaque donnée est divisée en bandes, chacune d’elle étant stockée sur un disque différent. La taille d’une bande est définie par le facteur d’entrelacement. Avantages : Cette solution offre une augmentation nette de performances, l’accès aux données se faisant simultanément sur plusieurs disques. Inconvénients : L’information est partagée entre les disques mais il n’y a pas de redondance des informations. Elle n’apporte donc pas de tolérance aux pannes. La perte d’un seul disque fait perdre l’ensemble des données (plus de reconstruction possible). En outre, l’information étant partagée à parts égales entre les disques, il est recommandé d’utiliser des disques de même taille. Sinon la capacité de stockage est limitée par le plus petit. Type d’utilisation : Compte tenu du risque de pertes de données, ce niveau n’est pas recommandé pour des applications critiques. Elle est, en revanche, indiquée lorsque le délai de traitement est prépondérant (applications vidéo, graphiques...). Niveau 1 Le but de ce niveau, appelé "mirroring" est d’assurer la redondance de l’information par duplication de celle-ci sur plusieurs disques. Avantages : Ce niveau apporte une plus grande tolérance aux pannes. En effet, la redondance étant totale, la perte d’un disque n’impacte pas le fonctionnement de la machine. Après le remplacement du disque défectueux le système RAID re-synchronise le nouveau disque. Inconvénients : Il n’y a pas de gain de performance. Elle présente également un coût élevé. En effet, seule la moitié de la capacité de stockage installée est réellement utilisable, l’autre moitié étant dédiée à la sauvegarde des informations. Type d’utilisation : Ce type d’installation est recommandé lorsque la fiabilité des données est critique, tandis que les performances globales le sont moins. Niveau 10 ou 1+0 C’est une combinaison des niveaux 1 et 0. Les disques sont rassemblés dans des grappes selon la technologie RAID 1. Ces grappes sont ensuite regroupées selon le niveau 0. Cette technologie nécessite au minimum 4 disques. Il ne faut pas confondre avec le RAID 01 (les grappes de type RAID 0 sont rassemblées selon la technologie RAID 1), qui est moins intéressant en terme de fiabilité car il ne permet pas de gérer les défaillances multiples. Avantages : Ce niveau permet d’allier sûreté de fonctionnement et performances. La fiabilité est particulièrement intéressante car il faut que tous les éléments d’une grappe en RAID 1 soient défectueux pour toucher au fonctionnement du système. La reconstruction des données est performante car elle met en jeu les disques d’une seule grappe. Le RAID 10 permet de faire face à une défaillance multiple de disques durs. Inconvénients : Comme le RAID 1, l’espace de stockage utilisable ne représente que la moitié de la capacité totale des disques installés. Type d’utilisation : Cette solution est la plus coûteuse. Elle est donc réservée à des applications ayant des exigences particulières en terme de performance et de fiabilité. Niveau 5 Cette implémentation repose sur un système en RAID 0, qui utilise des codes correcteurs d’erreur (un bit de parité). Ainsi, lors de la défaillance de l’un des disques, les codes correcteurs permettent de reconstituer les éléments perdus. Ces codes de correction sont répartis sur l’ensemble des disques. Par exemple, si la grappe compte trois disques (A, B et C), le premier bloc de données va être réparti entre A et B et le code correcteur stocké sur C. Pour le second bloc, il sera réparti sur B et C, et le code correcteur sera stocké sur A. Ainsi, la reconstruction de l’information est toujours possible lors de la perte d’un disque. Cette architecture nécessite un minimum de trois disques durs. Avantages : Le RAID 5 permet d’allier fiabilité et performances à un coût réduit. L’espace disponible n’est en effet pénalisé que de un disque. Par rapport au RAID 1 et à ses dérivés, la pénalisation est plus faible. Inconvénients : Le seul inconvénient réside dans la perte de l’équivalent de un disque d’espace de stockage pour enregistrer le code correcteur. Si la perte de place disponible est plus faible que pour les solutions précédentes, elle existe tout de même. Type d’utilisation : Cette technique est adaptée aux applications nécessitant performance et fiabilité des données, dans un contexte de limitation des coûts. Elle vise les serveurs importants ou critiques. Les différents types de RAIDIl existe deux types de RAID : le RAID logiciel lorsque le contrôleur RAID fait partie du système d’exploitation, et le RAID matériel lorsqu’il est intégré à une carte matérielle dédiée. Le choix du type de contrôleur est aussi important que celui du niveau. Le RAID logiciel Le contrôle du RAID est assuré par un sous-système du système d’exploitation. Avantages : C’est la solution la plus intéressante financièrement. Elle autorise également une grande souplesse d’administration (logicielle), ainsi que la compatibilité entre toutes les machines équipées du même contrôleur RAID , donc du même système d’exploitation. Inconvénients : Cette solution entraîne une charge supplémentaire pour le processeur (CPU – Central Processing Unit). Les systèmes d’exploitation limitent généralement le support au niveau 0. Enfin, cette méthode repose sur une couche d’abstraction matérielle liée au système d’exploitation, mais celle ci peut présenter des imperfections et ne pas implémenter toutes les fonctionnalités (c’est-à-dire détection et diagnostic des défauts matériels, prise en charge du remplacement à chaud des disques...). Le RAID matériel Le contrôleur est implémenté sur une carte dédiée. Cette carte possède en général un processeur dédié, de la mémoire, et éventuellement une batterie de secours. Avantages : Les contrôleurs matériels implémentent généralement la détection de défauts et le remplacement à chaud de disque dur. Ils déchargent le système d’exploitation de la gestion du RAID, ainsi que des vérifications périodiques de cohérences des données et de maintenance. Inconvénients : Ces contrôleurs utilisent leur propre système de gestion des disques. Ainsi, les disques transférés vers un autre système ont peu de chances d’être récupérables si le contrôleur RAID n’est pas le même, que ce soit au niveau matériel ou logiciel. Conclusion
Le RAID permet d’apporter un accroissement de performances et/ou de fiabilité pour le système. Il peut permettre, en fonction du niveau choisi, de réduire les risques d’indisponibilité, et/ou de perte de données. En revanche il ne protège jamais totalement des défaillances matérielles en cascade. Il est également impuissant contre l’erreur humaine, ou les facteurs extérieurs (incendie, surcharge électrique...). Il est donc important de garder à l’esprit que le RAID n’exclut en aucun cas les sauvegardes régulières. |