:hello: Bonjour à tous et à toutes et bienvenue sur ce sujet qui traite des pièges que peut receler le RAID.
Je ne vais pas détailler ce qu’est le RAID, je pars du principe que vous connaissez déjà au moins le principe général.
Si besoin, je vous renvoie vers l’article de Wikipedia.
S’il y a vraiment des demandes, j’essaierai de faire une petite présentation de ce que peuvent être les différents type de RAID.
Je traiterai ici des niveau de RAID suivants :
RAID 1, RAID 5, RAID 6.
L’idée de ce sujet m’est venue depuis un moment déjà, notamment devant la popularité de ce système, particulièrement dans les NAS.
Sommaire :
[b]1) Les “promesses” du RAID
-
Ce que le RAID n’est pas (aka : Les dangers classiques du RAID)
-
Les complications potentielles en cas de problèmes physiques
-
Bilan[/b]
1) Les “promesses” du RAID.
Comme je l’ai évoqué en intro, je traiterai des niveau 1, 5 et 6 du RAID.
Pour ces 3 niveaux la promesse est la même, vous garantir que vous ne perdrez pas vos données si un de vos disques durs tombe en panne.
C’est plutôt séduisant, parce que mine de rien, avoir un disque dur qui tombe en carafe et perdre ses données reste quand même une grande peur pour un utilisateur d’informatique, encore plus en entreprise où les conséquences peuvent se montrer dramatiques (pertes de chiffre d’affaire potentiellement très importante, etc …).
Voyons un peu comment cet objectif peut être tenu :
Le RAID 1
Dans le cas du RAID 1, le fonctionnement est relativement simple, puisque les données sont stockées à l’identique sur deux disques, attention, il ne s’agit pas d’une sauvegarde, la modification des données des deux disques se faisant simultanément et en temps réel (j’y reviendrai à la prochaine section).
Du coup, si un disque dur tombe subitement en panne, le second est lui toujours fonctionnel et le système toujours fonctionnel. Bien entendu pour récupérer la redondance, il est nécessaire de remplacer le disque dur défectueux au plus vite.
Le RAID 1 offre une tolérance de panne de 1 disque (notez qu’il est théoriquement possible d’avoir un RAID 1 avec plus de deux disques, en pratique je ne l’ai jamais rencontré, je pars donc du principe que le RAID 1 fonctionne avec deux disques, si vous avez un contre exemple, n’hésitez pas à me le signaler).
Le RAID 5
Dans le cas du RAID 5, le fonctionnement est plus complexe.
Ce niveau de RAID nécessite 3 disques minimum.
Les données sont réparties en bande (comme dans le cas du RAID 0), en clair les données seront réparties sur plusieurs disques, MAIS les données de parités seront elle écrites sur un autre disque.
Ce système permet dans le cas où l’un des disques durs crashe de récupérer les données par calcul en prenant en compte les bandes de données restantes et la parité.
Pour moi, le RAID 5 est plus vulnérable que le RAID 1 (dans le cas où un disque est tombé), nous verront cela dans la section 3.
Le RAID 5 offre lui aussi une tolérance de panne de 1 disque.
Le RAID 6
Dans le cas du RAID 6, les choses se compliquent encore.
Le principe général du RAID 6 est globalement le même que pour le RAID 5 (données réparties en bandes + parité), mais les données de parité sont réparties sur N disques (en réalité, dans la pratique c’est souvent sur deux disques).
En conséquence de quoi le RAID 6 peut résister à la perte de 2 disques (je pars du fait qu’en pratique la parité est stocké sur 2 disques et non sur N).
Le RAID 6 a pour principal défaut d’être beaucoup plus gourmand en puissance de calcul que le RAID 5, sans compter que la reconstruction d’une grappe peut se révéler très longue.
2) Ce que le RAID n’est pas (aka : Les dangers classiques du RAID)
Je l’ai déjà dit pour le niveau 1 du RAID, le RAID n’est pas et ne sera jamais une manière de sauvegarder ses données (bien sûr rien n’empêche de stocker une copie de sauvegarde sur une grappe RAID).
En cas de problème logiciel (virus, crash du système de fichiers), ou d’erreur humaine (formater la mauvaise partition ça a du arriver à pas mal de monde, dont moi, éh oui :ane: ), TOUS les disques de la grappe seront impactés instantanément.
Et si c’est le cas, vous n’avez plus qu’a brûler un cierge, mettre du café en route et lancer un logiciel de récupération de données, voir de passer par une entreprise spécialisées, mais le coût peut se montrer astronomique, sans aucune garantie de succès.
3) Les complications potentielles en cas de problèmes physiques
C’est là que les choses sérieuses commencent, je vais essayer de vous expliquer pourquoi les niveaux de RAID 1, 5 et 6 ne sont pas d’une sécurité absolue.
Mais commençons tout d’abord par voir comment le système réagit en cas de panne d’un disque dur.
Le RAID 1
En cas de soucis matériel avec le RAID 1 (typiquement la défaillance d’un disque), les choses restent simples : La machine continue à fonctionner comme si de rien n’était, tout reste transparent pour l’utilisateur à part peut être l’affichage d’un message prévenant d’une défaillance d’un disque ou la réception d’un mail (cela dépend du logiciel de gestion du contrôleur RAID).
Une fois que l’on est prévenu, il faut donc remplacer le disque dur “malade” (cette phase est complétement automatique si l’on a défini un disque de remplacement), une fois le remplacement effectué, la reconstruction de la grappe RAID démarre.
Dans le cas du RAID 1 il s’agit d’une simple copie des données du disque sain, vers le nouveau disque remplaçant le malade.
Les RAID 5 et 6
En cas de défaillance d’un disque (un ou deux dans le cas du RAID 6, puisque ce niveau supporte une tolérance de panne de 2 unités), l’utilisation de la machine reste possible, l’utilisateur étant averti de la défaillance comme dans le cas du RAID 1.
Seulement la reconstruction diffère, il ne s’agit pas ici d’une simple copie de données, mais le contrôleur (ou le processeur central dans le cas d’un RAID logiciel) doit lire les données “brutes” et les données de parités restantes sur les disques durs sains et calculer les données à reconstituer, une phase critique, parce que si un problème survient à ce moment, la récupération de la grappe (et donc des données) peut échouer purement et simplement.
Mais, je vous vois venir, vous allez me demander pourquoi la récupération pourrait échouer ?
a) Le cas ou une seconde (ou 3e) unité est défectueuse.
Eh bien, tout d’abord parce qu’un second (ou 3e dans le cas du RAID 6) disque dur peut tomber en panne.
Eh oui, si la défaillance simultanée, ou en tout cas très rapprochée dans le temps de plusieurs disques durs est rarissime il est en revanche beaucoup plus probable que deux disque durs identiques et d’une même série (et c’est très souvent le cas dans les grappes RAID) ayant tourné le même nombre d’heures et soumis à la même usure présentent une défaillance similaire à plusieurs heures d’intervalle.
Il ne faut pas oublier que la reconstruction d’une grappe RAID est stressante pour les disques durs et que forcément le risque de défaillance lors d’une activité stressante pour la mécanique d’une unité de disque dur qui pourrait être en bout de course augmente.
Notez bien que ce risque concerne les grappes RAID 1, RAID 5 et RAID 6 dans une moindre mesure pour ce dernier niveau, puisque dans ce cas il faudrait que 3 unités soient défaillantes en même (ça reste tout de même possible, bien que relativement peu probable).
Il existe également 2 cas, dont un théorique, mais que l’on ne peut pas totalement exclure qui peuvent poser de gros problèmes lors d’une reconstruction de grappe RAID 5 (là encore le danger est plus limité pour le RAID 6)
b) Le cas où l’un des disques fonctionnels comporte un secteur défectueux.
On reprend notre cas où l’on a un disque défectueux sur notre grappe RAID 5.
Le disque en panne est remplacé, la reconstruction lancée, seulement (oui, vous avez compris, encore un scénario catastrophe :paf: ) l’un des disques restant, bien que fonctionnel contient un secteur défectueux …
Au moment où le contrôleur va passer sur le secteur défectueux, il va se produire une incohérence entre les données et la parité (puisque que du coup l’une des parties est manquante ou corrompue), ce qui provoquera dans le pire des cas (et c’est généralement ce qui arrive :nexath ) le crash de la reconstruction de la grappe avec la encore l’impossibilité de récupérer les données. [:kurdent]
Notez que ce problème potentiel concerne aussi le RAID 1 puisque le contrôleur peut alors considérer le disque restant contenant un secteur défectueux comme “en panne” (c’est ballot :paf: ) et arrêter la reconstruction.
Cependant, il est nettement plus facile de récupérer des données sur un RAID 1 (il suffit en général de récupérer le disque fonctionnel et d’utiliser un soft de récupération de données si les partitions ne sont pas lisibles directement par le système d’exploitation), que sur du RAID 5 (ou 6) dans ce cas il faut utiliser un soft dédié à la récupération du RAID, c’est très long et le résultat n’est jamais garanti (bon dans le cas du RAID 1 le taux de réussite n’est pas forcément de 100% non plus).
Notez que ce scénario b concerne aussi le niveau 6 du RAID, même si dans ce cas en plus du disque en panne, il faudrait 1 secteur défectueux sur deux disques restants pour crasher la reconstruction.
c) Le cas où les disques fonctionnels comportent des données incohérentes.
Là, c’est probablement LE cas le plus pernicieux et le moins connu et pourtant possible …
Tout d’abord il faut bien comprendre qu’un disque dur est donné avec un certain taux d’erreurs possibles (eh oui, rien n’est parfait dans ce bas-monde).
Je vois d’ici votre sourcil interrogateur se lever “Comment, les disques durs sur lesquels on enregistre nos données comportent un risque d’erreur ?”.
Eh, oui.
Alors, entendons nous bien, le taux de risque d’erreurs est extrêmement faible, MAIS il n’est pas nul.
Ce chiffre est d’ailleurs communiqué par les constructeurs (c’est le cas pour WD, il est vrai que je n’ai pas vérifié si c’était le cas chez tous).
Ce chiffre est nommé (chez WD) “Non-recoverable read errors per bits read” (oui, je prends toujours les docs techniques en anglais ça évite les traductions imprécises :ane: ), ce qui signifie en français dans le texte (in french in the text :ane: ) :
Erreurs de lectures non récupérables par bits lu.
Et ce chiffre pour les WD Black est inférieur à 1 erreur tous les 10^14 bits lus.
Wouaouh ! Ca fait très peu de risque d’erreurs …
Eh bien, oui, dans l’absolu le chiffre est énorme, mais en réalité, pas tant que ça eu égard de la capacité des disques actuels.
10^14 bits, ça fait en réalité environ 11641 Gio (la "vraie unité, celle où pour passer de Mega à Giga on à un rapport de 1024 et non pas de 1000 qui permet de gonfler artificiellement la capacité des disques, soit dit en passant c’est l’unité qu’utilise Windows, même s’il affiche GO).
11 Tio, c’est beaucoup me direz vous …
Et bien, pas tant que ça …
Les disques actuels atteignent couramment les 2 TO (1.8 Tio réels environ)
Donc, oui, 2 (ou 4 pour les plus gros) c’est bel et bien inférieur à 11.36 (en divisant 11641 par 1024 c’est ce qu’on obtient), mais au final ce n’est pas si grand que ça …
Pour ceux qui n’ont pas suivit le raisonnement le taux d’erreur de lecture non récupérable est donc inférieur à 1 erreur tous les 11.36 Tio.
Résultat des courses, eh oui, la probabilité (ce n’est qu’une probabilité, on est bien d’accord) d’avoir une erreur de lecture non récupérable lors d’une reconstruction (phase pendant laquelle la totalité du disque sera lu) devient bien réel, et si une erreur survient on risque fort de se retrouver dans la situation du “scénario catastrophe” B (rappelez vous, si la grappe est dégradé en, RAID 5 aucune erreur de lecture ne sera tolérée et une le sera en RAID 6 )…
C’est d’ailleurs une des raisons pour laquelle le RAID 5 n’est aujourd’hui plus conseillé en entreprise pour les applications critiques.
Pour ceux qui voudraient plus de détails là-dessus, je vous renvoie sur cet article (en anglais) traitant de ce problème
- Bilan
Loin de moi l’idée de vous dire “le RAID c’est de la daube !”, je voulais plutôt revenir sur quelques aspects parfois méconnus des utilisateurs de ces solutions.
Points cruciaux car si certains soucis surviennent au plus mauvais moment, le risque de perte total des données contenues dans la grappe est grand.
Et ne rêvez pas, si ce genre de problème doit se produire, ça arrivera forcément au plus mauvais moment.
C’est très rare, mais ça arrive, certains se rappellent peut être qu’il y a des années, un site français d’infos sur l’informatique a connu une pareille mésaventure, sauf que dans leur cas, le drame était allé jusqu’au bout : la solution de sauvegarde s’était elle aussi montré défaillante …
Bref, RAID ou pas, le meilleur moyen de se prémunir de la perte accidentelle de ses précieuses données reste de faire de multiples copies de sauvegardes (et de les maintenir à jour !) sur des supports physiques différents (et privilégiez les disques durs et les bandes magnétiques, les clés USB, DVD et CD sont a fuir pour un stockage pérenne).
En espérant avoir pu vous apporter un éclairage sur les problèmes que l’on peut rencontrer avec le RAID. :jap:
Si vous avez des questions ou des remarques là-dessus, ou de manière plus générale sur le RAID, n’hésitez pas. :jap:
PS : Merci à SanYohan pour la relecture. :super:
Edité le 13/04/2014 à 19:13