Annexe D. RAID (réseau de disques redondants)

Qu'est-ce que RAID ?

Le principe du RAID consiste à combiner plusieurs lecteurs de disque de petite taille et bon marché en un réseau permettant des performances supérieures à celles d'un lecteur de grande taille et coûteux. L'ordinateur "voit" ce réseau de lecteurs comme une unité de stockage logique ou un lecteur unique.

RAID est une méthode en vertu de laquelle les informations sont réparties sur plusieurs disques, à l'aide de techniques telles que l'agrégat par bandes (RAID 0) et la mise en miroir (RAID 1) afin d'obtenir une redondance, une moindre latence et/ou une bande passante plus importante pour la lecture et l'écriture sur les disques, et de maximiser la faculté de récupération après des pannes de disque dur.

Le concept sous-jacent de la technologie RAID est que des données peuvent être réparties sur les différents lecteurs du réseau de façon cohérente. A cette fin, les données doivent préalablement être fractionnées en "morceaux" de taille constante (souvent de 32 ou 64 Ko, même si des tailles différentes peuvent être utilisées). Chaque "morceau" est ensuite écrit, successivement, sur chaque disque. Lorsque les données doivent être lues, le processus est inversé, ce qui donne l'illusion que les multiples petits lecteurs n'en constituent en réalité qu'un seul de grande taille

Pourquoi utiliser un RAID ?

La technologie RAID permet d'avoir sous la main de grandes quantités de données (ce dont peuvent avoir besoin les administrateurs). Parmi les principales raisons justifiant l'utilisation du RAID figurent :

  • vitesse accrue

  • capacité de stockage accrue en utilisant un unique disque virtuel

  • efficacité accrue pour la récupération après une défaillance de disque dur

RAID : matériel et logiciel

On distingue deux approches du RAID : le RAID matériel et le RAID logiciel.

RAID matériel

Le système matériel gère le sous-système RAID en toute indépendance par rapport à l'hôte et ne présente à l'hôte qu'un seul disque par réseau RAID.

Un périphérique RAID matériel peut être, par exemple celui qui, connecté à une carte SCSI, présente le réseau RAID comme une seule unité SCSI. Un système RAID externe déplace toute l'"intelligence" de traitement du réseau RAID vers un contrôleur situé dans le sous-système de disques externes. Le sous-système tout entier est connecté à l'hôte via une carte SCSI normale, de sorte qu'il apparaît à l'hôte comme un disque unique.

Les contrôleurs RAID sont souvent fournis sous la forme de cartes qui se comportent comme une carte SCSI pour le système d'exploitation, mais traitent en réalité toutes les communications de l'unité. Dans ce cas, vous connectez les lecteurs au contrôleur RAID, tout comme vous le feriez avec une carte SCSI. Mais ensuite, vous les ajoutez à la configuration du contrôleur RAID et le système d'exploitation ne détecte pas la différence.

RAID logiciel

Le RAID logiciel implémente les divers niveaux du RAID dans le code du noyau, au niveau di pilote de disque. Il constitue également la solution la plus économique qui soit : des cartes contrôleur de disque onéreuses ou un châssis remplaçable à chaud [1] ne sont plus nécessaires, et le RAID logiciel fonctionne avec des disques IDE moins chers, de même qu'avec des disques SCSI. Avec les processeurs rapides disponibles aujourd'hui, les performances d'un RAID logiciel peuvent s'avérer excellentes par rapport à celles d'un RAID matériel.

Le pilote MD dans le noyau Linux est un exemple de solution RAID totalement indépendante du matériel. Les performances d'un RAID logiciel dépendent des performances et de la charge du processeur du serveur.

Pour plus d'informations sur la configuration du RAID logiciel pendant l'installation de Red Hat Linux, reportez-vous au Guide de personnalisation officiel Red Hat Linux.

Pour en savoir plus sur ce qu'offre le RAID logiciel, voici une courte liste de quelques-unes de ses fonctions :

  • Processus de reconstruction chaîné

  • Configuration complète à partir du noyau

  • Portabilité des réseaux entre ordinateurs sous Linux sans reconstruction

  • Reconstruction de réseau en arrière-plan à l'aide de ressources systèmes inactives

  • Support de lecteur remplaçable à chaud

  • Détection de processeur automatique pour tirer parti de certaines optimisations de processeur

Niveau et support linéaire

La technologie RAID offre également les niveaux 0, 1, 4, 5 et un support linéaire. Ces types de RAID agissent comme suit :

  • Niveau 0 — Le RAID de niveau 0, souvent appelé "agrégat par bandes", est une technique de répartition de données axée sur les performances. Cela signifie que les données écrites sur le réseau sont fractionnées en bandes et écrites sur les disques composant le réseau. Ceci permet d'obtenir des performances d'E/S élevées à faible coût mais n'offre aucune redondance. La capacité de stockage du niveau 0 est égale à la capacité totale des disques contenus dans un RAID matériel ou à la capacité totale des partitions membres d'un RAID logiciel.

  • Niveau 1 — Le RAID de niveau 1, ou "mise en miroir de disque" a été utilisé plus longtemps que n'importe quelle forme de RAID. Le niveau 1 offre la redondance en écrivant des données sur chaque disque membre du RAID, en laissant une copie "en miroir" sur chaque disque. L'exploitation en miroir reste très utilisée en raison de sa simplicité et du haut niveau de disponibilité des données. Le niveau 1 opère avec deux disques ou plus, pouvant utiliser un accès parallèle pour atteindre des vitesses de transfert de données élevées en lecture, mais fonctionne, le plus souvent, de façon indépendante afin de permettre des vitesses d'E/S élevées. Le niveau 1 offre une excellente fiabilité pour les données et améliore les performances des applications impliquant une activité de lecture intense, mais à un coût relativement élevé. [2] La capacité du niveau 1 est égale à la capacité d'un disque miroir dans un RAID matériel ou d'une partition miroir dans un RAID logiciel.

  • Niveau 4 — Le niveau 4 utilise la parité [3] sur un seul lecteur de disque pour protéger des données. Il est plus adapté aux E/S transactionnelles qu'aux transferts de fichiers volumineux. Du fait que le disque de parité dédié entraîne, par définition, un étranglement, le niveau 4 est rarement utilisé sans technologies complémentaires telles que l'antémémoire de réécriture. Bien que le RAID de niveau 4 soit une option dans certains systèmes de partitionnement RAID, elle n'est pas autorisée dans les installations RAID de Red Hat Linux.[4] La capacité de stockage du RAID matériel niveau 4 est égale à la capacité des disques membres moins un. La capacité de stockage du RAID logiciel niveau 4 est égale à la capacité des partitions membres, moins la taille d'une partition si elles sont de même taille.

  • Niveau 5 — Type de RAID le plus répandu. En répartissant la parité sur certains lecteurs de disque membres d'un tableau, le RAID de niveau 5 élimine les étranglements en écriture propres au niveau 4. Le seul étranglement provient du processus de calcul de la parité. Grâce aux processeurs modernes et au RAID logiciel, cet étranglement n'est pas très conséquent. Comme pour le niveau 4, les résultats obtenus étant asymétriques, les performances en lecture sont sensiblement supérieures aux performances en écriture. Le niveau 5 est souvent utilisé en association avec l'antémémoire de réécriture afin de réduire l'asymétrie. La capacité de stockage du RAID matériel de niveau 5 est égale à la capacité des disques membres moins un. La capacité de stockage du RAID logiciel de niveau 5 est égale à la capacité des partitions membres, moins la taille d'une partition si elles sont de même taille.

  • RAID linéaire — Le RAID linéaire est un simple regroupement de lecteurs visant à créer un lecteur virtuel de plus grande taille. Dans le RAID linéaire, les morceaux sont attribués de façon séquentielle, à partir de l'un des lecteurs, ne passant au lecteur suivant que lorsque le premier est totalement saturé. Ce regroupement n'offre aucun avantage en matière de performances, étant donné qu'il est improbable que des opérations d'E/S soient fractionnées entre les lecteurs. Le RAID linéaire n'offre pas non plus de redondance et, en réalité, réduit la fiabilité —— en cas de défaillance de l'un des lecteurs, tout le réseau devient inutilisable. La capacité équivaut à la capacité totale de tous les disques.

Notes

[1]

Un châssis remplaçable à chaud permet de retirer un disque dur sans devoir arrêter le système.

[2]

Le RAID de niveau 1 implique un coût élevé car vous écrivez les mêmes informations sur tous les disques du réseau RAID, ce qui implique un gaspillage de l'espace disque. Par exemple, un RAID de niveau 1 peut être configuré de telle sorte que votre partition root (/) s'étende sur deux lecteurs de 40 Go. Vous disposez donc, au total, de 80 Go, mais ne pouvez accéder qu'à 40 de ces 80 Go. Les 40 Go restants sont utilisés comme un miroir des 40 premiers.

[3]

Les informations de parité sont calculées sur la base du contenu des autres disques du réseau. Ces informations peuvent être utilisées pour reconstituer les données en cas de défaillance d'un disque du réseau. Les données reconstituées peuvent ensuite être utilisées pour satisfaire aux demandes d'E/S adressées aux disques défaillants et pour reconstituer leur contenu après qu'ils aient été réparés ou remplacés.

[4]

RAID 4 occupe autant d'espace que RAID 5, mais les avantages offerts par ce dernier sont tels que RAID 4 n'est plus pris en charge.