Le RAID 10 imbrique deux niveaux de RAID : la mise en miroir pour la redondance et la segmentation pour la vitesse. La plupart des implémentations le construisent en RAID 1+0, ce qui signifie que des paires en miroir sont d'abord créées, puis regroupées en bandes.
Il offre de solides performances en lecture et en écriture, sans surcharge liée au calcul de la parité, et les reconstructions consistent généralement en de simples copies miroir plutôt qu'en de nouveaux calculs de parité. En revanche, la capacité utilisable plafonne à environ 50 % et il nécessite au minimum quatre disques.
La tolérance aux pannes est ici conditionnelle, et non absolue. Le RAID 10 survit à la défaillance d'un disque par paire en miroir. En revanche, si les deux disques d'une même paire tombent en panne, les données correspondantes sont perdues, même si le reste de la baie reste opérationnel. Cette distinction doit guider votre décision d'achat et d'utilisation, et non être reléguée en note de bas de page.
- Définition des principaux termes
- RAID 1+0 contre RAID 0+1 : pourquoi l'ordre de construction compte
- RAID 10 contre RAID 6 contre RAID 1 : tableau comparatif
- Ce qui se passe réellement lorsqu'un disque tombe en panne
- Quand le coût en capacité vaut le coup — et quand ce n'est pas le cas
- Détails d'implémentation qui changent la donne
Définition des principaux termes
RAID 1+0 (miroirs segmentés) : Les baies miroir RAID 1 sont d'abord créées, puis combinées en une bande RAID 0. C'est ce que presque tout le monde entend par « RAID 10 » et ce que la plupart des contrôleurs matériels implémentent.
RAID 0+1 (bandes en miroir) : La construction inverse. Les baies en bandes RAID 0 sont d'abord créées, puis mises en miroir dans leur ensemble. Les mêmes composants, mais un ordre d'assemblage différent, avec un comportement en cas de panne sensiblement différent.
Paire en miroir : Deux disques contenant des données identiques. En RAID 1+0, la baie est constituée de ces paires, regroupées en bandes pour augmenter le débit.
RAID 10 complexe : Un niveau de RAID unique et non imbriqué (Linux mdadm --level=10) qui reproduit le comportement du RAID 10 sans créer littéralement des couches RAID 1 et RAID 0 distinctes sous-jacentes.
RAID 1+0 contre RAID 0+1 : pourquoi l'ordre de construction compte
Le RAID 1+0 crée d'abord les miroirs RAID 1, puis les regroupe en bandes dans une couche RAID 0. Comme chaque miroir est géré indépendamment, plusieurs défaillances de disques peuvent être tolérées tant que les disques défaillants appartiennent à des miroirs différents.
Le RAID 0+1 inverse cet ordre : il crée d'abord les bandes, puis met en miroir l'ensemble de bandes. La documentation de SUSE indique que cette configuration offre une tolérance aux pannes légèrement inférieure, car si des disques tombent simultanément en panne des deux côtés du miroir, les données de toute la baie sont perdues. Elle présente également une limitation structurelle : les disques de secours ne peuvent pas être affectés aux éléments RAID 0 sous-jacents, car une bande RAID 0 ne tolère pas la perte d'un seul périphérique.
Avant de supposer le comportement d'un contrôleur en cas de panne, vérifiez quelle topologie il construit réellement. Une fiche technique indiquant « RAID 10 » ne garantit pas que vous bénéficiez d'un RAID 1+0 sous-jacent.
RAID 10 contre RAID 6 contre RAID 1 : tableau comparatif
| RAID 10 | RAID 6 | RAID 1 | |
|---|---|---|---|
| Capacité utilisable | ~50 % (N ÷ répliques) | N-2 disques | 50 %, sans segmentation |
| Défaillances tolérées | Une par paire en miroir | Deux disques quelconques, dans l'ensemble de la baie | Un des deux disques |
| Mécanisme de reconstruction | Copie miroir | Recalcul de la parité | Copie miroir |
| Charge de travail idéale | OLTP, virtualisation | Capacité de masse et archivage | Redondance simple sur petite capacité |
L'écart de capacité est concret : huit disques de 16 To offrent 64 To utilisables en RAID 10, contre 96 To en RAID 6, et la différence ne fait que s'accentuer à mesure que le nombre de disques augmente.
La différence sur le chemin d'écriture est architecturale, et ne correspond pas à un multiple de vitesse garanti. Le RAID 10 écrit chaque bloc sur les deux moitiés du miroir, sans calcul de parité, tandis que le RAID 6 calcule et écrit deux blocs de parité par bande. Un modèle simplifié de Servnet UK présente cela comme une pénalité d'écriture d'environ ×2 pour le RAID 10, contre ×6 pour le RAID 6, mais les résultats réels varient selon le cache du contrôleur, la taille des bandes et la taille des blocs de la charge de travail. Considérez-le comme un modèle indicatif, et non comme un résultat de benchmark que vous pourriez citer tel quel.
La règle de décision est la suivante : acceptez le surcoût en capacité du RAID 10 pour les écritures aléatoires soutenues sur de petits blocs et les charges transactionnelles sensibles à la latence, lorsque la vitesse de reconstruction et la prévisibilité des E/S priment sur la capacité brute. Préférez plutôt le RAID 6, le codage d'effacement ou les systèmes de stockage répliqué lorsque l'efficacité capacitaire ou un très grand nombre de disques constitue le besoin dominant.
Ce qui se passe réellement lorsqu'un disque tombe en panne
Une reconstruction RAID 10 copie les données du miroir survivant vers le disque de remplacement. Elle ne recalcule pas la parité sur l'ensemble de la baie. C'est pourquoi DiskInternals et Servnet UK décrivent tous deux les reconstructions RAID 10 comme généralement moins éprouvantes pour la baie que les reconstructions de RAID avec parité. La durée réelle dépend néanmoins de la vitesse des disques, du volume de données et de la limitation appliquée par le contrôleur ; ne considérez donc pas l'estimation « de quelques minutes à quelques heures » d'un fournisseur comme une valeur fixe pour votre baie.
La limite incontournable : deux défaillances au sein d'une même paire en miroir ne laissent aucune copie survivante ; les données de cette paire sont donc perdues, même si le reste de la baie demeure sain. C'est le seul scénario que le modèle de redondance du RAID 10 ne peut pas absorber.
Il existe une différence entre une défaillance indépendante et une défaillance corrélée, et les calculs du RAID 10 ne couvrent que la première. Sa tolérance d'« un disque par paire » suppose que les défaillances surviennent indépendamment, mais des disques partageant un fond de panier, une alimentation, un contrôleur ou un lot de micrologiciel peuvent tomber en panne simultanément. DiskInternals recommande de répartir volontairement les paires en miroir sur des fonds de panier ou des boîtiers distincts afin de réduire ce risque. Le RAID 10 ne le fait pas automatiquement : c'est une décision d'architecture qui vous revient.
Quand le coût en capacité vaut le coup — et quand ce n'est pas le cas
La ponction de 50 % sur la capacité du RAID 10 se justifie dans un ensemble précis d'environnements : les bases de données OLTP et transactionnelles (SQL Server, charges de type Oracle) ainsi que les hôtes de virtualisation denses, où les écritures aléatoires sur de petits blocs et les reconstructions rapides comptent davantage que la maximisation du nombre brut de téraoctets. En pratique, cela se traduit par des environnements mixtes qui exécutent le RAID 10 sur flash pour les bases de données et les machines virtuelles, parallèlement au RAID 6 sur disques durs nearline pour la capacité de masse et les sauvegardes, afin de laisser chaque niveau de RAID remplir la fonction pour laquelle il est réellement adapté.
Ce surcoût est un mauvais calcul pour le stockage de masse ou d'archives, les niveaux de grande capacité en accès séquentiel ou les très grands déploiements entièrement flash, où payer deux fois la capacité brute des disques pour obtenir la tolérance aux pannes devient coûteux. Le RAID 6, le stockage objet avec codage d'effacement ou la réplication définie par logiciel offrent généralement une résilience comparable à un coût inférieur par téraoctet utilisable à cette échelle.
Un réglage que les RAID à parité n'offrent pas : un RAID 10 logiciel complexe peut utiliser plus de deux répliques par bloc de données, jusqu'au nombre de périphériques de la baie, en échange d'une capacité encore moindre contre une redondance accrue. C'est une option de niche, utile lorsqu'il est impossible de tolérer la perte d'une paire en miroir entière, mais ce n'est pas un réglage par défaut nécessaire dans la plupart des environnements.
Détails d'implémentation qui changent la donne
Le RAID logiciel Linux offre en réalité trois choix distincts, et non un seul. Vous pouvez créer manuellement des piles de périphériques RAID 1+0 ou RAID 0+1 imbriquées, ou utiliser un niveau RAID 10 « complexe » unique via mdadm --level=10 ou YaST, qui n'est pas imbriqué du tout. La forme complexe accepte un nombre pair ou impair de périphériques (le RAID 1+0 imbriqué en exige un nombre pair), permet de configurer de deux à N répliques et propose une sélection de dispositions de données near, far ou offset, chacune ayant des caractéristiques de performance différentes qui ne s'appliquent pas aux formes imbriquées.
Le RAID 10 LVM est créé avec lvcreate et réparé avec lvconvert --repair, mais cette commande de réparation dépend de la présence préalable d'un volume physique de secours rattaché au groupe de volumes, selon la documentation Linux LVM d'Oracle. Omettez cette étape de préparation et un élément défaillant n'aura aucun emplacement vers lequel être reconstruit lorsque la panne surviendra.
Les contrôleurs matériels ajoutent leurs propres règles, qui ne sont pas des propriétés universelles du RAID 10. La famille MegaRAID de Broadcom, par exemple, prend en charge le RAID 10 réparti sur 4 à 240 disques, avec des étendues correspondantes et en nombre pair, et exige un RAID 1 à étendue unique pour 2 à 32 disques, avant de passer à des configurations à plusieurs étendues à partir de 36 disques. Ces seuils relèvent du comportement de MegaRAID et de son micrologiciel, et ne peuvent pas être supposés applicables au contrôleur d'un autre fabricant. Consultez toujours la documentation du matériel concerné avant de concevoir une architecture autour d'une limite de nombre de disques.
Foire aux questions
Le RAID 10 peut-il remplacer une sauvegarde ?
Non. Le RAID protège uniquement contre les défaillances matérielles des disques. Il ne fait rien contre les rançongiciels, les suppressions accidentelles, la corruption logique ou les sinistres sur site ; une sauvegarde immuable et externalisée reste obligatoire, quel que soit le niveau de RAID.
Puis-je mélanger les tailles ou les types de disques au sein d'une paire en miroir RAID 10 ?
Aucune des documentations des fournisseurs consultées ici ne définit de règle stricte, mais des disques dépareillés gaspillent de la capacité, puisque la paire est limitée à la taille du plus petit disque, et peuvent introduire une latence inégale. Utiliser des disques identiques au sein d'une paire constitue la base pratique la plus sûre.
Le RAID 10 protège-t-il contre la défaillance d'un boîtier entier, d'un contrôleur ou de l'alimentation ?
Pas par défaut. Son calcul d'« une défaillance par paire » suppose des défaillances indépendantes. Les défaillances corrélées dues à un fond de panier partagé, à un contrôleur, à un bogue de micrologiciel ou à un incident d'alimentation peuvent mettre simultanément hors service les deux membres d'une paire. Répartir volontairement les paires en miroir sur des fonds de panier ou des boîtiers distincts est une mesure d'atténuation à concevoir, et non une fonction exécutée automatiquement par le RAID 10.
Combien de disques une baie RAID 10 peut-elle réellement prendre en charge ?
Cela dépend entièrement de l'implémentation. Le RAID 1+0 logiciel Linux imbriqué nécessite un nombre pair de périphériques ; le mdadm RAID 10 complexe accepte un nombre pair ou impair, et chaque famille de contrôleurs matériels impose ses propres limites concernant les étendues et le nombre de disques. Il n'existe pas de maximum universel unique pour toutes les implémentations.
Un RAID 10 à base de SSD vaut-il son coût supplémentaire par rapport à des disques durs ?
Les documents des fournisseurs font état d'une latence moindre, d'un nombre d'IOPS supérieur et de reconstructions plus rapides sur flash, mais il s'agit d'une comparaison rapportée par un fournisseur, et non d'un benchmark indépendant. Validez ces éléments sur votre propre charge de travail et avec votre contrôleur avant d'engager votre budget, car les prix et les performances varient selon la capacité, la configuration et le niveau de support.