L’ajout d’un système RAID à vos configurations de stockage est l’un des moyens les plus économiques pour assurer à la fois la protection et l’accessibilité de vos données.
Le terme RAID n’est pas l’acronyme de l’organisme de police français bien connu, mais l’acronyme anglais d’un système de stockage formé de plusieurs supports physiques.
Un RAID, pour « Redundant Array of Independent Disks », consiste en la virtualisation de stockage. Dans cet article, je détaillerai les divers systèmes RAID que l’on retrouve communément. Afin de simplifier et par commodité, je parlerai toujours de systèmes RAID basés sur des disques durs (SATA, SCSI ou SAS). Néanmoins, il est tout à fait possible de « monter » des RAID avec des SSD, ou des clés USB par exemple.
La virtualisation de stockage est un concept informatique apparu dans les années 1987, qui consiste à utiliser plusieurs supports informatiques physiques, pour en former, virtuellement, un seul grand et unique système de stockage (grâce à l’utilisation de tous les disques durs). Le coût des supports informatiques des années 1990 était bien plus élevé qu’aujourd’hui, l’objectif initial du RAID était donc de pouvoir obtenir plus de volume de stockage pour un coût moindre.
À l’origine, le système de virtualisation utilisait 2 disques durs qui répartissaient en petits « morceaux » les données sur ces derniers. À cause de cette répartition, la fiabilité était très mauvaise. En effet, il suffit que l’un des deux supports soit en panne pour que l’ensemble des données soit perdu. Le risque était donc très élevé de perdre ses données.
Une équipe travaillera donc très rapidement sur des techniques permettant d’augmenter la fiabilité du stockage RAID. L’objectif premier était donc de diminuer la probabilité de perdre des données. C’est à partir de ce moment que l’on peut réellement parler de systèmes RAID, qui veut dire en français « Regroupement redondant de disques indépendants ». Pour faire simple, un vrai système RAID tolère la panne d’un ou de plusieurs supports.
La création et la gestion d’un système RAID peuvent se faire soit par le biais d’une carte matérielle spécifique (RAID matériel), soit par la carte mère (RAID pseudo—matériel) soit encore par un système d’exploitation (RAID logiciel).
En RAID logiciel, la gestion du RAID est effectuée par une couche logicielle du système d’exploitation, par exemple Windows. Si vous réinstallez Windows, vous perdez donc la configuration du RAID.
En RAID pseudo- matériel, la gestion du RAID est effectuée par la carte mère de l’ordinateur. Dans la grande majorité des cas, le contrôleur SATA de la carte mère (le contrôleur des disques durs) possède quelques fonctionnalités supplémentaires pour créer des RAID. Ce n’est donc pas un contrôleur spécifiquement dédié à la tâche de gestion du RAID.
En RAID matériel, la gestion du RAID est effectuée par une carte spécifique avec souvent son propre processeur. C’est comme une carte graphique, mais dédiée au système RAID. C’est la meilleure configuration, mais aussi la plus chère.
Il existe plusieurs types de RAID que je vais détailler (RAID 0, RAID 1, RAID 10, RAID 5, RAID 6 et JBOD). Comme vous allez le constater, certains de ces types de RAID ne sont en réalité pas redondants. Il est donc étrange de les nommer RAID. Ces RAID sont à utiliser avec précaution et uniquement pour certaines situations bien précises.
Cette notion de taille, exprimée en kilo-octet, est fondamentale pour bien comprendre les RAID. C’est la taille de « découpe » de vos données. Cette découpe est appelée « bloc ». Prenons un exemple simple d’un système RAID formé de deux supports et d’une taille de bloc de 64 Ko. Le premier bloc de 64 Ko du volume RAID se trouve sur le premier support. Les 64 Ko suivants se trouvent sur le second support, les 64 Ko suivants à nouveau sur le premier et ainsi de suite. Si vous désirez enregistrer un fichier qui fait 192 Ko, il sera « découpé » en 3 blocs de 64 Ko, qui seront inscrits alternativement sur les deux disques durs. Si l’un des supports venait à être en panne, vous perdez donc votre fichier puisqu’il vous en manquera la moitié des blocs.
Le JBOD, acronyme de « Just a Branch Of Disks », ne fait pas partie des systèmes RAID redondants. Néanmoins, vous pouvez le trouver dans certains systèmes de stockage, donc j’ai décidé de vous en parler. Le JBOD est en réalité un empilement virtuel de supports, peu importe leur taille. Quand le premier support est rempli, le second commence à être rempli et ainsi de suite.
En cas de panne de l’un des supports, vous perdez uniquement, les données présentes sur ce dernier. Le JBOD est simple, mais n’apporte aucune sécurité, ni plus de vitesse, contrairement au RAID que nous allons voir.
Le système RAID 0 n’est pas un système redondant et ne mérite pas qu’on le nomme RAID. Un volume de stockage en RAID 0 est constitué de plusieurs supports. Au minimum et classiquement, de deux supports. Les données sont réparties sur les supports grâce à la notion de bloc que nous avons vu précédemment.
Ce type de RAID est rapide. En effet, le système écrit sur tous les disques à la fois. Pour faire simple, avec 2 supports formant le RAID 0, vous mettez 2 fois moins de temps pour écrire ou lire un fichier que si vous aviez un seul support.
Lorsque vous utilisez des supports de même capacité, la capacité du RAID 0 est celle de l’ensemble des supports, vous ne perdez donc pas de volume de stockage.
L’inconvénient majeur de ce système comme nous l’avons déjà vu, c’est que la perte de l’un des supports entraine la perte de toutes les données (puisque les données sont inscrites en blocs sur tous les supports).
Le RAID 1 est en fait un miroir. C’est-à-dire que les données sont inscrites sur tous les supports, classiquement de deux supports, formant le RAID 1. En cas de perte de l’un des supports, vous avez toujours l’autre support qui est en fait une copie parfaite.
Du fait que vous devez écrire les données entièrement sur chaque support, vous n’avez aucun gain de vitesse par rapport à un simple disque dur. Il va de soi que si vous avez deux supports formant le RAID 1, vous perdez 50 % de la capacité de stockage à cause du miroir.
C’est le système le plus sécuritaire, mais aussi celui qui a le moins bon rapport capacité/prix/vitesse.
Comme nous l’avons vu, le JBOD et le RAID 0 n’offrent aucune sécurité. Quant au RAID 1, il a l’inconvénient de « perdre » 50 % de la capacité totale avec deux supports. Afin de résoudre ces deux problèmes, il est possible d’utiliser des systèmes RAID constitués d’au minimum 3 supports, et utilisant une parité.
La parité est le résultat d’un calcul simple (XOR) basé sur les blocs des autres supports. C’est en quelque sorte, le résultat d’une équation (5 + 8 = 13, 13 étant la parité). Cette parité est inscrite sur l’un des supports et se « déplace », selon les algorithmes, sur tous les supports à tour de rôle.
Grâce à cette parité, si l’un des supports venait à être en panne, les blocs manquants peuvent être calculés en utilisant les blocs des autres supports ainsi que la parité. Cela revient en quelque sorte à faire une équation à 1 inconnu (5 + X = 13, X égal donc 8).
Le RAID 5 est un panaché de RAID 0 et d’utilisation de parité. Il faut au minimum 3 supports, idéalement de même capacité.
Le stockage total est égal au (« nombre de supports » – 1) x « la capacité la plus petite ». Dans le cas d’un système à 3 supports de 1000 Go, la capacité totale est de 2000 Go. S’il y a 16 supports, la capacité est donc de 15 000 Go.
On constate donc que ce type de RAID résout deux inconvénients majeurs du système RAID 1 (miroir). La capacité de stockage et la vitesse sont en effet plus importantes. Vos données sont découpées en blocs qui peuvent être inscrits sur l’ensemble des supports en même temps.
Comme vous le constatez, le RAID 5 à tout pour plaire, ce n’est pas pour rien qu’il est le type de RAID le plus utilisé dans les serveurs et les NAS. Néanmoins, le RAID 5 tolère la panne d’un seul et unique support. Au-delà, les données sont perdues.
Le RAID 5 tolère la panne d’un seul support, ce qui n’est pas toujours suffisant. De plus, lorsque vous avez de nombreux supports formant le RAID 5, la capacité totale est très peu impactée par le stockage de la parité. Reprenons l’exemple de 16 supports de 1000 Go. En RAID 5, vous obtenez 15 000 Go utilisables. Vous perdez donc 1000 Go, ce qui est négligeable.
Afin d’accroitre la sécurité du RAID 5, le RAID 6 reprend les bases du RAID 5, mais utilise une seconde parité supplémentaire.
Cette parité est généralement calculée par le code Reed-Solomon. Les deux parités, XOR et Reed-Solomon, sont inscrites sur les supports selon un algorithme bien précis.
La capacité totale est donc (« nombre de supports » – 2) x « la capacité la plus petite ». Soit pour notre exemple constitué de 16 supports de 1000 Go, 14 000 Go de capacité utilisable. Ainsi, le RAID 6 tolère la panne de deux supports.
Nous voici au terme de cet article d’introduction aux systèmes RAID. Comme vous l’avez constaté, je ne peux pas vous conseiller d’utiliser le RAID 0, système que vous trouvez dans certains disques durs externes de grosse capacité. Le risque de perdre vos données avec ce type de matériel est très important. Préférez un système tel que le RAID 5, pour sa capacité de stockage élevé et pour sa vitesse plus rapide qu’un RAID 1 miroir.