Debian – Configurer et maintenir un RAID avec MDADM

Debian – Configurer et maintenir un RAID avec MDADM

La gestion des disques en RAID (Redundant Array of Independent Disks) est une solution incontournable pour améliorer la fiabilité, la performance ou la redondance des systèmes de stockage. Sous Debian, MDADM (Multiple Device Administration) est l’outil de référence pour configurer et maintenir un RAID logiciel. Que vous soyez administrateur système ou utilisateur avancé, comprendre comment déployer et gérer un RAID avec MDADM vous permettra de maximiser la résilience de vos données. Dans cet article, nous explorerons les étapes essentielles pour configurer un RAID, surveiller son fonctionnement et effectuer les opérations de maintenance nécessaires. De la création d’un array RAID à sa surveillance en passant par la reconstruction en cas de panne, découvrez tout ce qu’il faut savoir pour garantir la stabilité de vos systèmes de stockage.

Prérequis :

  • 4 disques dur de 50 Go

Étape 1 : Lister les disques

fdisk -l

Étape 2 : Mettre à jour les paquets et installer le paquet MDADM

sudo apt update
sudo apt install mdadm

systemctl enable mdadm

mdadm --version

Étape 3 : Configurer les RAID

  • RAID 0

Le RAID 0 est une configuration de disque dur qui répartit les données de manière égale entre deux disques ou plus, sans redondance. Cela permet d’augmenter la vitesse de lecture et d’écriture des données, mais si un disque tombe en panne, toutes les données sont perdues. Ce type de RAID est souvent utilisé pour des applications où la performance est plus importante que la sécurité des données.

mdadm --create /dev/md0 --level=0 --raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde

Pour suivre l’avancement de la construction du RAID, taper cette commande :

cat /proc/mdstat

Le raid est prêt à être utilisé !


  • RAID 1

Le RAID 1 est une configuration où les données sont dupliquées sur deux disques durs. Cela offre une protection contre la perte de données, car si un disque tombe en panne, les données sont toujours disponibles sur l’autre disque. Ce type de RAID est principalement utilisé pour garantir la sécurité des données au détriment de la capacité de stockage.

mdadm --create /dev/md0 --level=1 --raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde
  • RAID 5

Le RAID 5 combine à la fois performance et sécurité des données en utilisant au moins trois disques. Les données sont réparties entre les disques avec une parité (informations de redondance), ce qui permet de reconstruire les données en cas de défaillance d’un disque. Ce type de RAID offre une bonne protection tout en utilisant l’espace de manière efficace.

mdadm --create /dev/md0 --level=5 --raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde

Une fois le RAID créé, vérifier l’avancement de la construction du RAID :

Étape 4 : Une fois le RAID configuré, vous pouvez afficher le détail de la configuration.

mdadm --detail /dev/md0

Étape 6 : Une fois le RAID 100% construit, il faut le formater et le mapper comme une partition classique

mkfs.ext4 /dev/md0

mkdir /mnt/raid
mount /dev/md0 /mnt/raid

Et voilà ! Vous savez construire un RAID et l’utiliser !


Allons plus loin 😉

  • Ajouter un disque
mdadm --manage /dev/md0 --add /dev/sdb

Le nouveau disque aura un sigle (S) = SPARE

  • Supprimer un disque
mdadm --manage /dev/md0 --fail /dev/sdb --remove /dev/sdb

Dans le cas d’un RAID 5, le raid peut être en défaut. Dans ce cas il faut démonter le raid actuel, le stopper et réassembler le raid.

umount /dev/md0
mdadm --stop /dev/md0
mdadm --assemble /dev/md0 /dev/sdc /dev/sdd /dev/sde 
  • Stopper un RAID
umount /dev/md0
mdadm --stop /dev/md0
  • Étendre un RAID

Dans le cas d’un RAID 5 nous avons 4 disques dur, commencer par vérifier la taille :

df -h /dev/md0

On ajoute le disque :

mdadm --manage /dev/md0 --add /dev/sdf

Le nouveau disque s’affiche en SPARE :

Maintenant, on étend le raid au nouveau disque :

mdadm --grow /dev/md0 --raid-devices=5

Le raid se reconstruit, vous pouvez suivre l’avancement :

cat /proc/mdstat

Une fois fait, il faut redimensionner le système de fichier :

resize2fs /dev/md0

Et voila ! Nous avons augmenté la taille de notre RAID

df -h /dev/md0
  • Synchronisation RAID

la synchronisation des volumes RAID peut être lente, mais il est possible d’ajuster la vitesse de cette synchronisation en modifiant les paramètres système.

  • Pour augmenter la vitesse maximale de synchronisation : La commande suivante définit la vitesse maximale à 100 MB/s pendant la synchronisation des volumes RAID :
echo 1000000 > /proc/sys/dev/raid/speed_limit_max

Cette commande écrit la valeur 1000000 (correspondant à 100 MB/s) dans le fichier système /proc/sys/dev/raid/speed_limit_max, ce qui permet d’augmenter la limite de vitesse.

  • Pour définir une vitesse minimale de synchronisation : De la même manière, vous pouvez définir une vitesse minimale de synchronisation avec la commande suivante (par exemple, 10 MB/s) :
echo 100000 > /proc/sys/dev/raid/speed_limit_min

Cette commande définit la vitesse minimale à 100000, ce qui correspond à 10 MB/s.

Remarques importantes :

  • Ces ajustements sont temporaires et ne persisteront pas après un redémarrage. Si vous voulez que ces réglages soient permanents, vous devez les ajouter dans le fichier de configuration des sysctl (par exemple, /etc/sysctl.conf).
  • Il est recommandé de surveiller les performances du système pendant la synchronisation, surtout si vous augmentez significativement la vitesse, pour éviter de solliciter trop fortement le matériel ou de dégrader les performances du système.

Pour rendre ces paramètres permanents, vous pouvez ajouter les lignes suivantes dans /etc/sysctl.conf :

dev.raid.speed_limit_max = 1000000
dev.raid.speed_limit_min = 100000

Ensuite, appliquez les changements avec :

sudo sysctl -p

Et voilà ! Le RAID n’a plus de secret pour vous 🙂

Comments

No comments yet. Why don’t you start the discussion?

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *