Qu’importe votre expérience antérieure avec les matrices RAID, et que vous ayez suivi tous les tutoriels de cette série RAID ou non, la gestion des RAID logiciels sous Linux n’est pas une tâche très compliquée une fois que vous vous êtes familiarisé avec la commande mdadm --manage.

Gérer les périphériques Raid avec Mdadm sous Linux – Partie 9

Dans ce tutoriel, nous allons passer en revue les fonctionnalités fournies par cet outil afin que vous puissiez l’avoir à portée de main lorsque vous en avez besoin.

Scénario de test RAID

Comme dans le dernier article de cette série, nous utiliserons pour la simplicité une matrice RAID 1 (miroir) qui se compose de deux disques de 8 Go (/dev/sdb et /dev/sdc) et d’un périphérique de rechange initial (/dev/sdd) pour illustrer, mais les commandes et les concepts énumérés ici s’appliquent également à d’autres types de configurations. Cela dit, n’hésitez pas à aller de l’avant et à ajouter cette page aux signets de votre navigateur, et commençons.

Comprendre les options et l’utilisation de mdadm

Heureusement, mdadm fournit un drapeau built-in --help qui fournit des explications et une documentation pour chacune des principales options.

Donc, commençons par taper :

# mdadm --manage --help

pour voir quelles sont les tâches que mdadm --manage nous permettra d’effectuer et comment :

Gérer un RAID avec l’outil mdadm

Comme nous pouvons le voir dans l’image ci-dessus, la gestion d’une matrice RAID implique l’exécution des tâches suivantes à un moment ou à un autre :

  1. (Re)Ajout d’un périphérique à la matrice.
  2. Marquer un périphérique comme défectueux.
  3. Supprimer un périphérique défectueux du tableau.
  4. Remplacer le périphérique défectueux par un périphérique de rechange.
  5. Démarrer un tableau partiellement construit.
  6. Arrêter un tableau.
  7. Marquer un tableau comme ro (lecture seule) ou rw (lecture-écriture).

Gestion des périphériques RAID avec l’outil mdadm

Notez que si vous omettez l’option --manage, mdadm prend de toute façon le mode gestion. Gardez ce fait à l’esprit pour éviter de rencontrer des problèmes plus tard.

Le texte surligné dans l’image précédente montre la syntaxe de base pour gérer les RAIDs :

# mdadm --manage RAID options devices

Illustrons avec quelques exemples.

Exemple 1 : Ajouter un périphérique au tableau RAID

Vous ajouterez généralement un nouveau périphérique lors du remplacement d’un périphérique défectueux, ou lorsque vous avez une pièce de rechange que vous voulez avoir à portée de main en cas de panne:

# mdadm --manage /dev/md0 --add /dev/sdd1

Ajouter un périphérique au tableau Raid
Exemple 2 : Marquer un périphérique RAID comme défectueux et le retirer de la matrice

C’est une étape obligatoire avant de retirer logiquement le périphérique de la matrice, et plus tard de le retirer physiquement de la machine – dans cet ordre (si vous manquez une de ces étapes, vous pouvez finir par causer des dommages réels au périphérique):

# mdadm --manage /dev/md0 --fail /dev/sdb1

Notez comment le périphérique de rechange ajouté dans l’exemple précédent est utilisé pour remplacer automatiquement le disque défaillant. Non seulement cela, mais la récupération et la reconstruction des données raid commencent également immédiatement:

Récupération et reconstruction des données raid

Une fois que le périphérique a été indiqué comme défaillant manuellement, il peut être retiré en toute sécurité de la matrice:

# mdadm --manage /dev/md0 --remove /dev/sdb1
Exemple 3 : Réaddition d’un périphérique faisant partie du tableau qui avait été retiré précédemment

Jusqu’à ce point, nous avons un tableau RAID 1 fonctionnel qui se compose de 2 périphériques actifs : /dev/sdc1 et /dev/sdd1. Si nous essayons de ré-additionner /dev/sdb1 à /dev/md0 maintenant:

# mdadm --manage /dev/md0 --re-add /dev/sdb1

nous rencontrerons une erreur:

mdadm: --re-add for /dev/sdb1 to /dev/md0 is not possible

parce que le tableau est déjà constitué du nombre maximum possible de disques. Nous avons donc 2 choix : a) ajouter /dev/sdb1 comme spare, comme indiqué dans l’exemple #1, ou b) supprimer /dev/sdd1 du tableau et ensuite ré-additionner /dev/sdb1.

Nous choisissons l’option b), et nous commencerons par arrêter le tableau pour le réassembler plus tard :

# mdadm --stop /dev/md0# mdadm --assemble /dev/md0 /dev/sdb1 /dev/sdc1

Si la commande ci-dessus ne réussit pas à ajouter à nouveau /dev/sdb1 au tableau, utilisez la commande de l’exemple #1 pour le faire.

Bien que mdadm détecte initialement le périphérique nouvellement ajouté comme étant de rechange, il commencera à reconstruire les données et lorsqu’il aura terminé, il devrait reconnaître le périphérique comme étant une partie active du RAID:

Statut de reconstruction du Raid
Exemple 4 : Remplacer un périphérique Raid par un disque spécifique

Remplacer un disque dans la matrice par un disque de rechange est aussi simple que :

# mdadm --manage /dev/md0 --replace /dev/sdb1 --with /dev/sdd1
Remplacer le périphérique Raid

Il en résulte que le périphérique suivant le commutateur --with est ajouté au RAID tandis que le disque indiqué par --replace est marqué comme défectueux :

Vérifier l’état de reconstruction du Raid
Exemple 5 : Marquer un tableau Raid comme ro ou rw

Après avoir créé le tableau, vous avez dû créer un système de fichiers au-dessus et le monter sur un répertoire afin de l’utiliser. Ce que vous ne saviez probablement pas alors, c’est que vous pouvez marquer le RAID comme ro, autorisant ainsi uniquement les opérations de lecture sur celui-ci, ou rw, afin d’écrire également sur le périphérique.

Pour marquer le périphérique comme ro, il doit d’abord être démonté:

# umount /mnt/raid1# mdadm --manage /dev/md0 --readonly# mount /mnt/raid1# touch /mnt/raid1/test1
Set Permissions on Raid Array

Pour configurer le tableau afin d’autoriser également les opérations d’écriture, utilisez l’option --readwrite. Notez que vous devrez démonter le périphérique et l’arrêter avant de définir le drapeau rw :

# umount /mnt/raid1# mdadm --manage /dev/md0 --stop# mdadm --assemble /dev/md0 /dev/sdc1 /dev/sdd1# mdadm --manage /dev/md0 --readwrite# touch /mnt/raid1/test2
Allouer la permission d’écriture en lecture sur le Raid

Sommaire

Tout au long de cette série, nous avons expliqué comment configurer une variété de tableaux RAID logiciels qui sont utilisés dans les environnements d’entreprise. Si vous avez suivi les articles et les exemples fournis dans ces articles, vous êtes prêt à tirer parti de la puissance des RAID logiciels dans Linux.

S’il vous arrive d’avoir des questions ou des suggestions, n’hésitez pas à nous contacter en utilisant le formulaire ci-dessous.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.