PROJET AUTOBLOG


IT-Connect

Site original : IT-Connect

⇐ retour index

Réparer un RAID logiciel sous Debian 7

mardi 29 avril 2014 à 09:15

I. Présentation

Mettre en place un RAID logiciel sur un serveur pour tolérer la panne d’un disque, c’est intéressant et fortement conseillé. Cependant, il faut également savoir quoi faire, comment faire, lorsqu’un disque dur tombe en panne. Ce tutoriel est là pour vous apprendre à réparer un RAID logiciel.

Pour ma part, je travaille sur une machine virtuelle donc pour simuler la perte d’un disque dans la grappe RAID je vais le supprimer de la machine virtuelle. L’OS invité de la VM est Debian 7.

II. Procédure

Je commence par simuler la perte d’un disque en le supprimant de la machine virtuelle, on peut voir ensuite que le RAID passe en mode dégradé grâce à la commande suivante :

cat /proc/mdstat

debianraid30On remarque l’indication [U_] qui indique la perte d’un disque dans la grappe RAID. En temps normal, c’est indiqué [UU].

Il est aussi possible de vérifier que le RAID fonctionne en mode dégradé en utilisant la commande suivante :

mdadm -D /dev/md0

debianraid31

On remarque clairement la mention “degraded” et dans la partie basse de la commande l’état “removed” pour le second disque.

Pour commencer, on sort le disque hors service de la grappe RAID. Il se peut que cela a été fait automatiquement mais pour être sur vaut mieux le faire. Étant donné qu’il s’agit des partitions “sdb1” et “sdb2” du disque “sdb” respectivement attachée à la grappe RAID “md0” et “md1” on utilisera ces deux commandes :

mdadm --manage /dev/md0 --remove /dev/sdb1
mdadm --manage /dev/md1 --remove /dev/sdb2

debianraid32

Maintenant on a plus qu’à ajouter un nouveau disque, tout beau, tout neuf… A chaud si possible sinon éteignez auparavant votre serveur. Suite à l’ajout du nouveau disque dur à ajouter au RAID 1, on peut voir qu’il est bien reconnu grâce à la commande suivante :

fdisk -l

On remarque la mention suivante : “Le disque /dev/sdb ne contient pas une table de partitions valable“. Le disque est bien détecté mais il est vierge (sans table de partition, ni partition).

On va commencer par copier la table des partitions du disque fonctionnel vers le nouveau disque, pour cela on fait appel à l’utilitaire sfdisk de cette façon :

sfdisk -d /dev/sda | sfdisk /dev/sdb

On indique d’abord le disque source (sda) et le disque de destination (sdb). Vous pouvez réitérer la commande “fdisk -l” vue précédemment pour vérifier la création de la table de partition.

Désormais, il est nécessaire d’ajouter le nouveau disque dur à nos grappes RAID. Nous respecterons la même logique que précédemment : sdb1 pour md0sdb2 pour md1. Ce qui implique l’utilisation de deux commandes :

mdadm --manage /dev/md0 --add /dev/sdb1
mdadm --manage /dev/md1 --add /dev/sdb2

Suite à ces deux ajouts, le RAID doit passer en reconstruction. On peut le vérifier par l’intermédiaire de cette commande :

cat /proc/mdstat

Voici un aperçu général des 3 commandes venant d’être saisies :

debianraid33

Une fois la restauration terminée, on récupère notre RAID en état normal. Rassuré ?

debianraid34

Si ce tutoriel vous a plu, pensez à le partager sur les réseaux sociaux.