Comment devrais-je cultiver un tableau RAID10 à l'aide de MDADM?
De toute évidence, j'aurais besoin d'ajouter 2 lecteurs à la fois ou devriez-vous être 4 disques?
J'ai l'impression que c'est juste une mauvaise idée.
Ou serait juste plus sage de simplement opter pour RAID5?
La dernière fois que j'ai vérifié, Mdadm ne vous laissera pas ...Grow RAID10. J'ai jeté un coup d'œil sur Madadm's Manpage maintenant et il est toujours dit: des options de croissance soutenues actuellement, notamment de modifier la taille active des périphériques de composants et de modifier le nombre de dispositifs actifs dans les niveaux RAID 1/4/5/6, modifiant le niveau RAID entre 1, 5, et 6, modifiant la taille du morceau et la mise en page pour RAID5 et RAID5, ainsi que l'ajout ou la suppression d'une bitmap d'intention d'écriture.
Pour cultiver RAID 10, vous avez besoin de MDADM en version min. 3.3 et version du noyau min 3.5. Vous avez également besoin d'un nombre pair de disques - les non appariés ne peuvent fonctionner que de rechange ou, éventuellement, de croître en mode dégradé (non testé).
Voici l'exemple de la croissance de RAID 10 à partir de 4 lecteurs à 6 utilisant MDADM 3.3-2UBUNTU2 @ Linux 4.2.0-10-générique. Testé avec des données EXT4 dessus, le système de fichiers a été démontré, EXT4 a été prolongé après la croissance du raid sans aucun problème.
~$ cat /proc/mdstat
md126 : active raid10 sdd1[1] sdc1[0] sdf1[3] sde1[2]
976428032 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
bitmap: 0/8 pages [0KB], 65536KB chunk
~$ Sudo mdadm /dev/md126 --add /dev/sdi1 /dev/sdj1
mdadm: added /dev/sdi1
mdadm: added /dev/sdj1
~$ Sudo mdadm --grow /dev/md126 --raid-devices=6
~$ cat /proc/mdstat
md126 : active raid10 sdj1[5] sdi1[4] sdd1[1] sdc1[0] sdf1[3] sde1[2]
1464642048 blocks super 1.2 512K chunks 2 near-copies [6/6] [UUUUUU]
bitmap: 0/6 pages [0KB], 131072KB chunk
Je me rends compte que cela a plus d'un an, mais quelqu'un pourrait trouver cela utile ...
Vous pouvez développer une matrice RAID 10, mais pas la façon dont vous espérez. Vous devriez nier plusieurs niveaux de raid. Cela peut être fait avec MDADM sur 2 lecteurs de RAID 10, quelle performance assez agréable en fonction de la mise en page, mais vous devriez créer plusieurs tableaux de 2 disques RAID 10, puis les attacher au nœud logique. Ensuite, développer Ajoutez quelques-uns de plus, et la bande à travers cela. Si tel est votre cas d'utilisation (vous devez développer beaucoup), vous seriez sage d'utiliser un tableau de parité, qui peut être cultivé.
Ce sont les limitations que vous obtenez avec RAID 10, tout en conservant une meilleure performance de lecture/écriture globale. Et une clarification, RAID 5/6 ne fait absolument pas "en général, offre une meilleure performance d'écriture ...". RAID 5/6 a ses propres avantages/contre respectifs tout comme RAID 10, mais la performance de l'écriture n'est pas un PRO pour RAID 5/6.
De plus, vous n'avez pas spécifié la taille de vos lecteurs, mais faites attention à RAID 5 sur de nouveaux grands disques. Bien que si vous faites attention, vous pouvez récupérer d'une erreur de lecture irrécupérable, vous risquez de risquer des temps d'arrêt et la possibilité de ne pas pouvoir récupérer du tout.
--Edit à ajouter des informations-- Utilisez des outils tels que HDPARM (HDPARM -I) et LSHW pour obtenir les numéros de série avec le nom du périphérique (/ dev/sda) lorsque vous avez une défaillance. Cela vous permettra de supprimer le bon appareil lors du remplacement. Up-arrow sur le commentaire de Travis car il est très correct et une belle mise en page, mais comme d'habitude, pondérez les avantages et les inconvénients de chaque solution.
Quelques nouvelles nouvelles de l'annonce de publication pour Mdadm 3.3:
C'est une nouvelle version majeure, alors ne soyez pas trop surpris s'il y a quelques problèmes ...
Certains points forts sont:
...
- RAID10 RAASSES Peut être remodelé pour modifier le nombre d'appareils, modifier la taille du morceau ou modifier la mise en page entre "proche" et "offset" . Cela modifiera toujours data_offset et échouera s'il n'y a pas de place pour Data_Offset à déplacer.
...
Selon cette réponse sur U & L, vous aurez besoin d'au moins Linux 3.5 aussi.
Je sais que c'est plus de travail et pouvait être déroutant, mais vous pouvez toujours rayer plusieurs miroirs.
Par exemple, je viens de configurer un tableau RAID à 4 lecteurs 10 et ce dernier veulent ajouter un autre réseau RAID 10 DRIVE 10. Utilisez simplement Mdadm pour créer un nouveau tableau RAID 10 sur les nouveaux lecteurs. Vous pouvez alors créer un autre tableau RAID 0 en utilisant les deux périphériques RAID existants. Cependant, j'utiliserais les fonctionnalités de LVM pour créer la bande, ce qui maintient ainsi les périphériques MDAdM Configs et/Dev/MD dans un état facile à comprendre. L'une ou l'autre méthode fonctionnerait, et il y a probablement plus, mais c'est ce que je pouvais faire au sommet de ma tête.
Vous ne pouvez pas développer un tableau RAID10, c'est vrai. Mais vous peut Commencez avec deux lecteurs (au prix de non redondance à ce stade), puis plus tard, ajoutez deux autres. J'ai utilisé cette méthode pour passer d'une matrice RAID5 avec quatre disques de disque à RAID10 avec quatre disques de disque.
J'ai dégradé RAID5 et supprimé un disque de la matrice. Cela m'a donné deux disques qui étaient libres d'utiliser. Ensuite, j'ai créé un tableau RAID10 avec quelque chose dans le sens de 'Mdadm -Create --Level 10/dev/md0/dev/SDA1 manquant/dev/sdc1 manquant ". C'était suffisant pour démarrer la matrice.
Lorsque j'avais déplacé les données de la matrice RAID5 dégradée à la matrice RAID10, j'ai ajouté deux des disques RAID5 au tableau RAID10 et ajouté le supplément comme étant de rechange.
C'est probablement une bonne idée si quelqu'un qui est plus compétent que je ne peux parler de tout impact de la performance que cela a peut-être eu. Mais la principale raison de mon poste est de montrer qu'il est possible de commencer avec RAID10 et deux lecteurs.
Remarque: Lisez le poste de forum suivant qui demande et réponses si l'ordre de disque dans MDADM compte .