Comment gérer les raids logiciels dans Linux avec l'outil «MDADM» - Partie 9

Comment gérer les raids logiciels dans Linux avec l'outil «MDADM» - Partie 9

Quelle que soit votre expérience antérieure avec les tableaux de raid, et que vous ayez suivi tous les tutoriels de cette série RAID ou non, la gestion des raids logiciels à Linux n'est pas une tâche très compliquée une fois que vous avez fait la connaissance de MDADM - GÉNÉRAGE commande.

Gérer les appareils RAID avec MDADM dans Linux - Partie 9

Dans ce tutoriel, nous examinerons les fonctionnalités fournies par cet outil afin que vous puissiez l'avoir à portée de main lorsque vous en aurez besoin.

Scénario de test des raids

Comme dans le dernier article de cette série, nous utiliserons pour la simplicité Raid 1 (miroir) tableau qui se compose de deux 8 Go disques (/ dev / sdb et / dev / sdc) et un appareil de rechange initial (/ dev / sdd) Pour illustrer, mais les commandes et concepts répertoriés ici s'appliquent également à d'autres types d'installations. 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 MDADM

Heureusement, mdadm fournit un intégré - help drapeau qui fournit des explications et une documentation pour chacune des principales options.

Ainsi, commençons par taper:

# mdadm - manage - help 

pour voir quelles sont les tâches qui MDADM - GÉNÉRAGE nous permettra de jouer et comment:

Gérer le raid avec l'outil MDADM

Comme nous pouvons le voir dans l'image ci-dessus, la gestion d'un tableau de raid implique d'effectuer les tâches suivantes à un moment ou à un autre:

  1. (Re) ajout d'un appareil au tableau.
  2. Marquez un appareil comme défectueux.
  3. Supprimer un appareil défectueux du tableau.
  4. Remplacement de l'appareil défectueux par un.
  5. Démarrer un tableau qui est partiellement construit.
  6. Arrêter un tableau.
  7. Marquez un tableau comme RO (en lecture seule) ou RW (lecture-écriture).

Gestion des appareils RAID avec outil MDADM

Notez que si vous omettez le --gérer Option, MDADM suppose le mode de gestion de toute façon. Gardez ce fait à l'esprit pour éviter de rencontrer des problèmes plus loin sur la route.

Le texte en surbrillance de l'image précédente montre la syntaxe de base pour gérer les raids:

# MDADM - Diagramme des options de raid 

Illustrons avec quelques exemples.

Exemple 1: Ajoutez un appareil au tableau RAID

Vous ajouterez généralement un nouvel appareil lors du remplacement d'un défectueux, ou lorsque vous avez une pièce de rechange que vous souhaitez avoir à portée de main en cas d'échec:

# mdadm --manage / dev / md0 --add / dev / sdd1 
Ajouter un appareil au tableau RAID
Exemple 2: marquer un dispositif RAID comme défectueux et le retirer du tableau

Il s'agit d'une étape obligatoire avant de retirer logiquement l'appareil du tableau, et de le retirer physiquement de la machine - dans cet ordre (si vous manquez l'une de ces étapes, vous pouvez finir par causer des dommages réels à l'appareil):

# 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érer et reconstruire les données RAID

Une fois l'appareil indiqué comme échoué manuellement, il peut être supprimé en toute sécurité du tableau:

# MDADM --MANAGE / DEV / MD0 - REMOVE / DEV / SDB1 
Exemple 3: Re-ajouté un appareil qui faisait partie du tableau qui avait été supprimé précédemment

Jusque-là, nous avons un travail Raid 1 tableau qui se compose de 2 dispositifs actifs: / dev / sdc1 et / dev / sdd1. Si nous essayons de réadapter / dev / sdb1 pour / dev / md0 tout de suite:

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

Nous rencontrerons une erreur:

MDADM: --re-ADD pour / dev / sdb1 à / dev / md0 n'est pas possible 

Parce que le tableau est déjà composé du nombre maximal possible de disques. Nous avons donc 2 choix: a) Ajouter / dev / sdb1 comme une pièce de rechange, comme indiqué dans l'exemple n ° 1, ou b) retirer / dev / sdd1 du tableau puis redire / dev / sdb1.

Nous choisissons l'option b), et commencera 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 n'ajoute pas avec succès / dev / sdb1 Retour au tableau, utilisez la commande depuis Exemple 1 pour le faire.

Bien que mdadm Détectera initialement le dispositif nouvellement ajouté en tant que rechange, il commencera à reconstruire les données et lorsque cela sera fait, il devrait reconnaître que l'appareil fait une partie active du RAID:

Statut de reconstruction des raids
Exemple 4: Remplacez un périphérique RAID par un disque spécifique

Remplacer un disque dans le tableau par un de rechange est aussi simple que:

# MDADM --manage / dev / md0 --replace / dev / sdb1 - avec / dev / sdd1 
Remplacer le périphérique RAID

Il en résulte l'appareil suivant le --avec commutateur étant ajouté au raid tandis que le disque indiquait à travers --remplacer Être marqué comme défectueux:

Vérifier le statut de reconstruction des raids
Exemple 5: Marquer un tableau des raids comme RO ou RW

Après avoir créé le tableau, vous devez avoir créé un système de fichiers dessus et l'avoir monté 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, permettant ainsi uniquement les opérations de lecture, ou RW, Afin d'écrire également à l'appareil.

Pour marquer l'appareil comme ro, Il doit d'abord être non monté:

# umount / mnt / raid1 # mdadm --manage / dev / md0 --readonly # mont / mnt / raid1 # touch / mnt / raid1 / test1 
Définir les autorisations sur le tableau RAID

Pour configurer le tableau pour autoriser également les opérations d'écriture, utilisez le --lire écrire option. Notez que vous devrez décalé l'appareil et l'arrêter avant de définir le rw drapeau:

# umount / mnt / raid1 # mdadm --manage / dev / md0 --stop # mdadm --Assemble / dev / md0 / dev / sdc1 / dev / sdd1 # mdadm --manage / dev / md0 - readwrite # touch / touch / touche / mnt / raid1 / test2 
Autoriser la permission d'écriture de lecture sur Raid

Résumé

Tout au long de cette série, nous avons expliqué comment mettre en place une variété de tableaux de raids logiciels qui sont utilisés dans des 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 raids logiciels dans Linux.

Si vous avez des questions ou des suggestions, n'hésitez pas à nous contacter en utilisant le formulaire ci-dessous.