Comment réactiver ma baie MDADM RAID5?

22

Je viens de déménager, ce qui a impliqué le démontage de mon serveur et sa reconnexion. Depuis, une de mes baies MDADM RAID5 apparaît comme inactive:

root@mserver:/tmp# cat /proc/mdstat 
Personalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10] 
md1 : active raid5 sdc1[1] sdh1[2] sdg1[0]
      3907023872 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]

md0 : inactive sdd1[0](S) sdf1[3](S) sde1[2](S) sdb1[1](S)
      3907039744 blocks

unused devices: <none>

Il me semble qu'il a trouvé tous les disques, mais pour une raison quelconque, il ne veut pas les utiliser.

Que signifient les étiquettes (S) et comment puis-je dire à MDADM de recommencer à utiliser le tableau?

[Modifier] J'ai juste essayé d'arrêter et d'assembler le tableau avec -v:

root@mserver:~# mdadm --stop /dev/md0
mdadm: stopped /dev/md0

root@mserver:~# mdadm --assemble --scan -v
mdadm: /dev/sde1 is identified as a member of /dev/md0, slot 2.
mdadm: /dev/sdf1 is identified as a member of /dev/md0, slot 3.
mdadm: /dev/sdd1 is identified as a member of /dev/md0, slot 0.
mdadm: /dev/sdb1 is identified as a member of /dev/md0, slot 1.
mdadm: added /dev/sdd1 to /dev/md0 as 0 (possibly out of date)
mdadm: added /dev/sdb1 to /dev/md0 as 1 (possibly out of date)
mdadm: added /dev/sdf1 to /dev/md0 as 3 (possibly out of date)
mdadm: added /dev/sde1 to /dev/md0 as 2
mdadm: /dev/md0 assembled from 1 drive - not enough to start the array.

..et entrer dans le chat /proc/mdstatne semble pas différent.

[Edit2] Je ne sais pas si cela aide, mais c'est le résultat de l'examen de chaque disque:

root @ mserver: ~ # mdadm --examine / dev / sdb1

/dev/sdb1:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 2f331560:fc85feff:5457a8c1:6e047c67 (local to host mserver)
  Creation Time : Sun Feb  1 20:53:39 2009
     Raid Level : raid5
  Used Dev Size : 976759936 (931.51 GiB 1000.20 GB)
     Array Size : 2930279808 (2794.53 GiB 3000.61 GB)
   Raid Devices : 4
  Total Devices : 4
Preferred Minor : 0

    Update Time : Sat Apr 20 13:22:27 2013
          State : clean
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0
       Checksum : 6c8f71a3 - correct
         Events : 955190

         Layout : left-symmetric
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     1       8       17        1      active sync   /dev/sdb1

   0     0       8      113        0      active sync   /dev/sdh1
   1     1       8       17        1      active sync   /dev/sdb1
   2     2       8       97        2      active sync   /dev/sdg1
   3     3       8       33        3      active sync   /dev/sdc1

root @ mserver: ~ # mdadm --examine / dev / sdd1

/dev/sdd1:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 2f331560:fc85feff:5457a8c1:6e047c67 (local to host mserver)
  Creation Time : Sun Feb  1 20:53:39 2009
     Raid Level : raid5
  Used Dev Size : 976759936 (931.51 GiB 1000.20 GB)
     Array Size : 2930279808 (2794.53 GiB 3000.61 GB)
   Raid Devices : 4
  Total Devices : 2
Preferred Minor : 0

    Update Time : Sat Apr 20 18:37:23 2013
          State : active
 Active Devices : 2
Working Devices : 2
 Failed Devices : 2
  Spare Devices : 0
       Checksum : 6c812869 - correct
         Events : 955205

         Layout : left-symmetric
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     0       8      113        0      active sync   /dev/sdh1

   0     0       8      113        0      active sync   /dev/sdh1
   1     1       0        0        1      faulty removed
   2     2       8       97        2      active sync   /dev/sdg1
   3     3       0        0        3      faulty removed

root @ mserver: ~ # mdadm --examine / dev / sde1

/dev/sde1:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 2f331560:fc85feff:5457a8c1:6e047c67 (local to host mserver)
  Creation Time : Sun Feb  1 20:53:39 2009
     Raid Level : raid5
  Used Dev Size : 976759936 (931.51 GiB 1000.20 GB)
     Array Size : 2930279808 (2794.53 GiB 3000.61 GB)
   Raid Devices : 4
  Total Devices : 2
Preferred Minor : 0

    Update Time : Sun Apr 21 14:00:43 2013
          State : clean
 Active Devices : 1
Working Devices : 1
 Failed Devices : 2
  Spare Devices : 0
       Checksum : 6c90cc70 - correct
         Events : 955219

         Layout : left-symmetric
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     2       8       97        2      active sync   /dev/sdg1

   0     0       0        0        0      removed
   1     1       0        0        1      faulty removed
   2     2       8       97        2      active sync   /dev/sdg1
   3     3       0        0        3      faulty removed

root @ mserver: ~ # mdadm --examine / dev / sdf1

/dev/sdf1:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 2f331560:fc85feff:5457a8c1:6e047c67 (local to host mserver)
  Creation Time : Sun Feb  1 20:53:39 2009
     Raid Level : raid5
  Used Dev Size : 976759936 (931.51 GiB 1000.20 GB)
     Array Size : 2930279808 (2794.53 GiB 3000.61 GB)
   Raid Devices : 4
  Total Devices : 4
Preferred Minor : 0

    Update Time : Sat Apr 20 13:22:27 2013
          State : clean
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0
       Checksum : 6c8f71b7 - correct
         Events : 955190

         Layout : left-symmetric
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     3       8       33        3      active sync   /dev/sdc1

   0     0       8      113        0      active sync   /dev/sdh1
   1     1       8       17        1      active sync   /dev/sdb1
   2     2       8       97        2      active sync   /dev/sdg1
   3     3       8       33        3      active sync   /dev/sdc1

J'ai quelques notes qui suggèrent que les disques ont été initialement assemblés comme suit:

md0 : active raid5 sdb1[1] sdc1[3] sdh1[0] sdg1[2]
      2930279808 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU]

[Edit3]

En regardant dans le journal, il semble que les événements suivants se soient produits (en fonction Update Timedes --examinerésultats):

  1. sdb et sdf ont été éliminés quelque temps après 13h22 le 20
  2. sdd a été mis KO quelque temps après 18:37 le 20
  3. le serveur a été arrêté quelque temps après 14h00 le 1er

Étant donné que deux disques sont tombés (apparemment) simultanément, je pense qu'il devrait être raisonnablement sûr de supposer que le tableau n'aurait pas été écrit après ce point (?) Et qu'il devrait donc être relativement sûr de le forcer à se réinstaller dans le bon ordre? Quelle est la commande la plus sûre pour le faire et existe-t-il un moyen de le faire sans écrire de modifications?

Jon Cage
la source

Réponses:

28

Les Sétiquettes signifient que le disque est considéré comme "de rechange". Vous devez essayer d'arrêter et de redémarrer le tableau:

  mdadm --stop /dev/md0
  mdadm --assemble --scan

pour réassembler le tableau et si cela ne fonctionne pas, vous devrez peut-être mettre à jour votre mdadm.conf, voir par exemple cette question pour plus de détails sur la façon de le faire.

Stefan Seidel
la source
Essayé que (et a ajouté -vpour voir ce qui se passait) , mais tous les disques qui devraient être ajoutés obtenir les réponses le long des lignes suivantes: mdadm: /dev/sdb1 is busy - skipping.
Jon Cage
il suffit d'arrêter md0 et de réassembler la baie
krizna
essayé ça - toujours pas de chance (voir mon montage)
Jon Cage
2
Ok, on dirait qu'il pense que le RAID n'a pas été arrêté correctement, si vous êtes sûr que ce n'est pas le cas, essayez -Rou -f. Si cela échoue également, recréez le tableau à l'aide de mdadm create /dev/md0 --assume-clean <original create options> /dev/sd[dbfe]1. Soyez averti: toutes ces options peuvent détruire vos données.
Stefan Seidel
3
Eh bien, je suis allé et j'ai mdadm --assemble --scan --forcetravaillé. La baie est de nouveau opérationnelle et j'ai accès à mes données :)
Jon Cage
9

Cette question est un peu ancienne, mais la réponse pourrait aider une personne confrontée à une situation similaire. En regardant les nombres d'événements de la sortie mdadm --examen que vous avez fournie, ils semblent assez proches (955190 - pour sdb1 et sdf1, 955219 pour sde1 et pour sdd1, vous avez 955205). S'ils sont inférieurs à 40-50, c'est OK, et dans ce cas, la procédure recommandée consiste à assembler votre baie manuellement, forçant mdadm à accepter les disques malgré la différence de nombre d'événements:

Arrêtez le tableau:

mdadm --stop /dev/md0

Essayez ensuite de réassembler le tableau manuellement:

mdadm --assemble --force /dev/md0 /dev/sdb1 /dev/sdd1 /dev/sde1 /dev/sdf1

Vérifiez l'état de la matrice pour vérifier si la liste / structure des disques est correcte (le bas de la sortie de la commande indique quel disque est à quel état et à quelle position dans la matrice):

mdadm --detail /dev/md0

Si la structure est correcte, vérifiez la progression de la reconstruction:

cat /proc/mdstat
Milen
la source
0

Vous pouvez activer Raid md0 avec la commande ci-dessous

mdadm -A /dev/md0

et cette commande pour mettre à jour le fichier mdadm.conf

mdadm --examine --scan >> /etc/mdadm/mdadm.conf
krizna
la source