Intel Matrix Storage Manager vs RAID logiciel Linux


28

Le chipset que j'utilise prend en charge la technologie Intel RSTe. Cela signifie que j'ai deux options pour la configuration RAID:

  • RAID logiciel Linux ordinaire, à l'aide de la mdadmcommande.
  • RSTe (soit par le BIOS ou, encore une fois, en utilisant la mdadmcommande avec -e imsmcommutateur).

Étant donné que cela mdadmpeut être utilisé pour les deux, je ne peux pas comprendre la différence entre les deux.

  • Que me donne RSTe par rapport au RAID logiciel Linux classique?
  • En mode RSTe, le chemin d'E / S RAID réel (c'est-à-dire la mise en miroir et l'agrégation) est-il géré par Linux mdou par le BIOS.
  • En particulier, lorsque j'utilise un «RAID matriciel» (c'est-à-dire que le RAID couvre des partitions spécifiques plutôt que les disques entiers), dois-je installer manuellement grub sur les deux MBR?

Réponses:


46

Présentation

Il existe trois types courants de RAID disponibles:

  • Software RAID: Cela signifie que votre BIOS et d'autres systèmes d'exploitation pensent que vous avez vraiment deux disques distincts, mais purement au niveau logiciel, votre système d'exploitation utilise un format sur disque spécifique au système d'exploitation pour le RAID (mise en miroir, entrelacement, bits de parité, peu importe) . Tout le traitement est effectué par le CPU sans support matériel.

  • BIOS RAID: Aussi appelé «Fake RAID» ou «Host RAID», cela signifie que le micrologiciel de votre carte mère (plus précisément, votre contrôleur SATA / SAS) prend explicitement en charge la reconnaissance des périphériques RAID. Au niveau du périphérique logique ( lun), vos multiples disques durs apparaîtront comme un seul lecteur au système d'exploitation. Il s'agit essentiellement du contrôleur SATA / SAS qui dit "Je n'ai vraiment qu'un seul disque dur. Eh bien, c'est en fait deux, mais chut, c'est juste un, croyez-moi". En d'autres termes, le système d'exploitation peut direqu'il s'agit d'une configuration RAID, mais le système d'exploitation * n'est pas responsable du format sur disque de la parité RAID / striping / etc. Cependant, même dans ce mode, le CPU effectue tous les calculs pour les bits de parité et la répartition. La carte mère, le BIOS et le contrôleur SATA ont juste assez de logique pour «combiner» physiquement les périphériques et définir un format sur disque pour le RAID. Mais ils n'ont pas de processeur dédié pour faire les calculs et dépendent du logiciel du système d'exploitation pour dire au CPU de les faire, c'est pourquoi vous devez toujours parler à Linux de votre RAID BIOS. (Intel Matrix / RST est un type de RAID BIOS).

  • Hardware RAID: C'est là que vous avez une puce dédiée dont le seul but est de traiter les données nécessaires au RAID. La puce peut être assez puissante; certains contrôleurs RAID matériels ont en fait une puce à double cœur, semblable à un processeur, bien qu'elle soit spécifiquement optimisée pour exécuter un système d'exploitation intégré qui est TRÈS rapide pour effectuer des calculs RAID, tels que des bits de parité pour RAID-5 ou une répartition pour RAID -0. Les disques durs sont physiquement câblés dans la carte RAID, qui fournit un contrôleur SATA / SAS, généralement un cache de lecture et d'écriture en DRAM ou Flash, une file d'attente de commandes native et un processeur central intégré qui effectue les calculs les plus mathématiques. Ces puces matérielles coûtent entre 150 $ au niveau d'entrée jusqu'à plusieurs milliers pour les backplanes RAID de centres de données industriels.

Compatibilité

En général, chaque type de RAID est «lié» à un aspect particulier qui, lorsque cet aspect change, vous rencontrez des problèmes de compatibilité.

  • Le RAID logiciel est lié au système d'exploitation qui a défini le format RAID. Parfois, entre deux versions différentes du même système d'exploitation, le format RAID est rompu, ce qui entraîne une incompatibilité. Bien qu'il soit conceptuellement possible que n'importe quel format RAID logiciel soit pris en charge par n'importe quel autre système d'exploitation, puisqu'il ne s'agit que de logiciels , dans la pratique, la plupart des systèmes d'exploitation présentent des formats RAID incompatibles que seul ce système d'exploitation peut reconnaître. Cependant, la compatibilité la plus connue est les formats RAID utilisés nativement par le noyau Linux ( mdcomme vous en discutez dans l'OP), qui peuvent également reconnaître le logiciel RAID de Windows, appelé Dynamic Disks.

  • Le RAID BIOS est lié à la carte mère que vous possédez. Il peut être possible de déplacer des disques formatés avec un format RAID BIOS particulier vers une autre carte mère avec une solution RAID BIOS similaire; par exemple, Intel RST vers un autre système avec RST. Mais vous devrez rechercher soigneusement cela avant de vous déplacer, pour vous assurer qu'il sera compatible si vous vous souciez qu'il soit compatible.

  • Le RAID matériel est lié à ce contrôleur matériel spécifique ou à une série de contrôleurs matériels explicitement déclarés compatibles par le fabricant. Certains fournisseurs maintiennent un format de disque RAID matériel très cohérent qui est pris en charge par de nombreuses générations de contrôleurs; d'autres modifient le format plus fréquemment. Encore une fois, vous devrez faire des recherches au cas par cas.

Performance

Les performances dépendent en grande partie de la façon dont vous configurez les paramètres de base de la matrice RAID et moins de la solution spécifique. En général, les contrôleurs RAID matériels ont le «plafond» le plus élevé pour des performances maximales; ils ne taxent pas non plus votre CPU presque autant que les autres solutions. Mais si vous choisissez le mauvais type de RAID pour votre charge de travail, ou la mauvaise taille de bande, ou la mauvaise approche de mise en cache, un contrôleur RAID matériel peut également être extrêmement lent, plus lent que l'un des disques fonctionnant en mode non RAID. Il en va de même pour les autres solutions, qui peuvent également être extrêmement lentes.

  • Le RAID logiciel est le plus approprié pour la configuration RAID-1, car la mise en miroir est une simple copie des mêmes données sur deux disques, et il n'y a pas de bits de parité à calculer. RAID-5 sur logiciel RAID est horrible.

  • Les performances du BIOS RAID sont généralement comparables à celles du RAID logiciel, mais certains contrôleurs RAID BIOS et formats de disque sont connus pour être bogués ou peu performants. En général, si vous devez choisir entre RAID logiciel et RAID BIOS, le premier est un peu plus prometteur pour les performances, surtout si vous utilisez une distribution Linux récente.

  • Les performances RAID matérielles peuvent être incroyablement rapides en raison de la puissance de traitement optimisée du processeur du contrôleur RAID, qui, comme je l'ai dit, est conçu pour un débit élevé et peut en fait être une puce multicœur - c'est donc un sérieux problème. Le principal inconvénient est que vous perdez de la flexibilité - vous ne pouvez pas simplement insérer les disques dans un autre ordinateur sans contrôleur RAID matériel - et des dépenses. Le RAID matériel est le meilleur niveau sur lequel utiliser RAID-5 ou RAID-6, surtout si vous avez beaucoup de disques (4 ou plus).

Global

Bien que le BIOS RAID soit pris en charge par Linux, je ne peux pas vous recommander de l'utiliser.

Maintenant, pour répondre directement à vos questions, après que je vous ai donné la réponse longue:

Que me donne RSTe par rapport au RAID logiciel Linux classique?

Voir les comparaisons ci-dessus entre RAID logiciel et RAID BIOS. "RSTe" est une instance de BIOS RAID; Le mdRAID Linux sans le -e imsmest une instance de RAID logiciel.

En mode RSTe, le chemin d'E / S RAID réel (c'est-à-dire la mise en miroir et l'entrelacement) est-il géré par Linux md ou par le BIOS.

Si vous voulez dire le chemin de données, il est toujours géré par le CPU (et donc le système d'exploitation), sauf si vous avez une carte RAID matérielle dédiée. Je ne pense pas que ceux-ci viennent sur les cartes mères, bien qu'un chipset de serveur haut de gamme puisse me surprendre ...

En particulier, lorsque j'utilise un «RAID matriciel» (c'est-à-dire que le RAID couvre des partitions spécifiques plutôt que les disques entiers), dois-je installer manuellement grub sur les deux MBR?

Non. En fait, vous n'avez jamais besoin d'installer GRUB sur les deux MBR. Prenons-le au cas par cas:

  • RAID logiciel: il suffit de choisir un disque arbitrairement pour installer GRUB et de le définir dans l'ordre du BIOS pour qu'il démarre en premier. N'oubliez pas que vous pouvez mettre en miroir des partitions individuelles si vous le souhaitez, afin que les disques n'aient pas à être identiques pour le RAID logiciel. On peut avoir un MBR avec un chargeur de démarrage et on ne peut rien avoir dans le MBR.

  • BIOS RAID: Le BIOS vous dira qu'il s'agit d'un "disque" (il l'appellera en fait ce qu'il est, une matrice RAID), vous n'aurez donc pas à choisir où installer GRUB. Lorsque vous installez Linux sur ceci, le MBR (y compris le chargeur de démarrage) et tous les autres secteurs des deux disques seront copiés entre les deux disques. Donc, contrairement au RAID logiciel, le BIOS RAID impose que les deux disques doivent être bloc pour bloc identique, car vous ne pouvez pas les séparer en deux périphériques logiques; le contrôleur de disque indique qu'ils sont UN périphérique logique, pas deux. Vous ne pouvez donc pas simplement dire "Je veux écrire des données sur le lecteur 0 mais pas sur le lecteur 1". Pas possible. Mais c'est tout à fait possible avec Software RAID.

  • RAID matériel: le BIOS vous dira qu'il s'agit d'un "disque", et en ce qui concerne le BIOS, il n'est même pas particulièrement conscient que vous avez affaire à plusieurs disques. Le contrôleur RAID résume complètement tous les détails du RAID du système d'exploitation et du BIOS, sauf dans la mesure où vous pouvez configurer certains contrôleurs RAID matériels à l'aide d'une sorte de protocole personnalisé dans le système d'exploitation. Mais les périphériques sont complètement inséparables de la couche logicielle, comme le BIOS RAID.

Modifier: mise à jour pour plus de réponses aux questions

Je n'arrive toujours pas à comprendre deux ou trois choses. Tout d'abord, à propos d'un RAID BIOS: je peux le construire en utilisant mdadm, donc Linux ne me cache pas réellement les disques sous-jacents.

C'est bizarre et difficile à expliquer. Fondamentalement, les disques apparaissent comme un à certaines couches et comme deux à d'autres couches. Mais je parie qu'avec le BIOS RAID, chaque disque n'aura pas son propre nœud de périphérique séparé, par exemple /dev/sdaet /dev/sdb. Si c'est le cas, eh bien, votre RAID BIOS est différent de ce que j'ai vu.

à propos de grub et des MBR: si un RAID couvre des partitions plutôt que des disques, alors je peux toujours voir les disques sous-jacents. Le MBR n'est pas sous RAID et vous devez donc installer le chargeur de démarrage deux fois pour pouvoir démarrer en cas de défaillance du disque. Est-ce correct?

Cela ne fait pas de mal d'installer une autre copie, mais en cas de panne de disque, le démarrage sera le moindre de vos soucis. Bref, allez-y et faites-le si vous le souhaitez, mais ce n'est pas la chose la plus importante. L'installation de grub à partir d'un CD live sur un disque dur est facile.

Les disques en RAID (surtout s'ils sont de la même marque et du même modèle, produits dans la même usine et en fonctionnement les uns à côté des autres à la même température) sont susceptibles de tomber en panne rapidement, l'un après l'autre. Donc, si un disque est tombé en panne, il n'est probablement pas correct de simplement hausser les épaules et d'insérer un nouveau disque et de démarrer la reconstruction: il y a de fortes chances que, pendant la reconstruction, le dernier disque contenant une copie cohérente des données échoue lui-même. C'est à ce stade, lorsque vous arrivez au dernier disque restant, que je recommanderais à un expert (ou faites-le vous-même si vous êtes bon en matériel) de retirer les plateaux du disque d'origine, d'acheter un nouveau disque de marque / modèle identique , placez-y les plateaux et lisez les données à l'aide du nouveau disque. Cela coûte cher et prend du temps,

Voilà donc cinq questions auxquelles j'ai répondu pour vous; si vous avez trouvé de la valeur dans ces informations, veuillez cocher la réponse de manière appropriée. Merci.


1
merci pour votre réponse détaillée et perspicace. Je n'arrive toujours pas à comprendre deux ou trois choses. Tout d'abord, à propos d'un RAID BIOS: je peux le construire en utilisant mdadm, donc Linux ne me cache pas réellement les disques sous-jacents. Deuxièmement, à propos de grub et des MBR: si un RAID couvre des partitions plutôt que des disques, je peux toujours voir les disques sous-jacents. Le MBR n'est pas sous RAID et vous devez donc installer le chargeur de démarrage deux fois pour pouvoir démarrer en cas de défaillance du disque. Est-ce correct?
Leonid99

1
J'ai un PCH série 6 et mdadm --detail-platformindique que Intel Matrix Storage Manager est la version 11.0.0.1339. En fait, je peux voir mes lecteurs individuels comme /dev/sdcet /dev/sdd. Ma fausse matrice RAID1 est alors /dev/md126.
Jonathon Reinhart

1
Lorsque le noyau Linux est opérationnel, le code du micrologiciel / BIOS ne s'exécute plus. Alors, qu'est-ce que le noyau est responsable de faire? Tout? Si tel est le cas, alors qu'est-ce IMSM fait faire? Il semble que ce ne soit pas beaucoup plus que Linux avec le RAID logiciel en lui-même? Je suppose que je demande, que fait exactement le BIOS / chipset?
Jonathon Reinhart

Eh bien, il semble être un hybride: lorsque l'ordinateur démarre pour la première fois (lorsque le BIOS est toujours actif), le BIOS fournit la logique RAID douce. Lorsque le système d'exploitation démarre, ses pilotes sont ensuite responsables de la maintenance de la matrice RAID. 1 , 2
Jonathon Reinhart

2

La réponse d'Allquixotic est trop longue:

  1. Que me donne RSTe par rapport au RAID logiciel Linux classique?

Prise en charge du démarrage et un ensemble de fonctionnalités légèrement différent. En son cœur, c'est un format de données. - Vous pouvez même l'utiliser sans la ROM optionnelle Intel RST (alors vous n'avez pas de support de démarrage spécial). Ce que le format implique est écrit dans la mdadmpage de manuel.

  1. En mode RSTe, le chemin d'E / S RAID réel (c'est-à-dire la mise en miroir et l'entrelacement) est-il géré par Linux md ou par le BIOS.

Par Linux md (c'est-à-dire le noyau entièrement).

Cela laisse une question ouverte: pourquoi le RST d'Intel est-il limité à certains chipsets uniquement? Ils ne participent pas du tout au RAID. Au mieux, ils stockent un peu, ce qui indique à la ROM Option de refuser de s'exécuter sur des chipsets non pris en charge.


1
C'est beaucoup mieux que la réponse acceptée, qui est longue, décousue, largement incorrecte et ne répond pas à la question. (Le point clé est que RSTe utilise un format compris par le BIOS, vous permettant de démarrer à partir d'un RAID dégradé.)
Nemo

1

Hmmm une réponse trop longue et l'autre trop courte.

Le «raid» RST est principalement destiné à être utilisé si vous démarrez une station de travail à double démarrage, car Intel produit des pilotes Windows et Linux et vous pouvez configurer le raid dans le BIOS. Vous configurez le RAID, partitionnez le disque virtuel et pouvez effectuer un double démarrage avec les deux systèmes d'exploitation comprenant les multiples partitions.

mdam est pour si le serveur est dédié à Linux. C'est "mieux" car si vous reconstruisez un tableau, vous le faites à partir du système d'exploitation et non du BIOS, donc la vitesse de reconstruction est beaucoup plus rapide. Avec de grands disques, une reconstruction RAID du BIOS peut prendre plusieurs JOURS.

Mais la réalité est que vous choisissez entre un morceau vert de C ou un morceau bleu de C. La réalité est que le RAID logiciel est essentiellement un raid "dernier fossé CYA".

Si vous perdez un disque dans une matrice RAID logicielle, cela vous permet essentiellement d'arrêter immédiatement le serveur, d'effectuer une sauvegarde complète, de remplacer le disque défaillant et peut-être le reste des disques, puis de recréer la matrice ou de tenter de reconstruire. Très souvent, il est plus rapide de remplacer le disque, puis de tout effacer et de recréer la baie, puis de démarrer à partir d'un disque de restauration de sauvegarde, puis de restaurer à partir d'une sauvegarde.

Avec une puce de matrice matérielle, tous les disques peuvent être placés dans des plateaux remplaçables à chaud et en cas de défaillance, un voyant rouge s'allume, sur le disque défaillant, vous l'éjectez, le remplacez par un nouveau disque, puis la carte RAID matérielle reconstruit automatiquement le baie pendant que le serveur est toujours en cours d'exécution.

Alors qu'en théorie, il est possible de le faire si vous avez des plateaux remplaçables à chaud et une matrice de logiciels Linux mdam dans la pratique, vous risquez de paniquer et le serveur peut facilement ne pas démarrer sur le disque restant.

L'autre problème concerne le TYPE de disques utilisés. Les disques de poste de travail ordinaires, à mesure qu'ils vieillissent, commencent à développer des secteurs défectueux qui sont remappés en interne par le disque en secteurs de rechange. Le problème est que ce remappage ne se produit que sur une écriture - le disque retardera le remappage si une lecture se produit sur un secteur défectueux et sur certains modèles de disque relira à plusieurs reprises le secteur défectueux ou défaillant, en comparant le résultat à chaque fois jusqu'à ce qu'il le décide a les meilleures données qu'il peut obtenir de ce secteur avant de les recalculer. Ce processus peut prendre une minute environ et pendant ce temps, vous avez maintenant 1 disque dans la baie en ignorant les codes de commande, de sorte que le logiciel Software raid va planter et marquer la baie comme dégradée. Au redémarrage, vous avez maintenant 2 disques avec le même secteur qui peuvent avoir des données différentes entre les disques, donc maintenant le gestionnaire RAID logiciel ne sait pas ce qui est "bon", le disque qui n'a pas eu d'erreur ou le disque qui a remappé un secteur avec la meilleure approximation des données qu'il avait. Western Digital fabrique des disques "rouges" qui sont censés être utilisés dans des matrices RAID logicielles qui ne le font pas, ils échouent simplement à une lecture de secteur immédiatement lorsqu'ils détectent un secteur défectueux et le remappent afin que le gestionnaire de baies puisse prendre les données du secteur sur le bon lecteur et l'écrire sur le lecteur avec le secteur défaillant. Inutile de dire qu'ils facturent un supplément pour ces disques. ils échouent simplement à la lecture immédiate d'un secteur lorsqu'ils détectent un secteur défectueux et le remappent afin que le gestionnaire de baies puisse prendre les données du secteur sur le bon lecteur et les écrire sur le lecteur avec le secteur défaillant. Inutile de dire qu'ils facturent un supplément pour ces disques. ils échouent simplement à la lecture immédiate d'un secteur lorsqu'ils détectent un secteur défectueux et le remappent afin que le gestionnaire de baies puisse prendre les données du secteur sur le bon lecteur et les écrire sur le lecteur avec le secteur défaillant. Inutile de dire qu'ils facturent un supplément pour ces disques.

En résumé, n'utilisez pas de raid logiciel pour un serveur qui ne peut tolérer un certain temps d'arrêt en cas de défaillance d'un disque. Il est principalement destiné aux postes de travail où les gens ne sauvegardent pas régulièrement, et aux petits serveurs SOHO qui sont sauvegardés et peuvent tolérer un jour ou deux d'indisponibilité en cas de panne d'un disque.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.