28 votes

Comment réactiver mon tableau MDADM RAID5?

Je viens de déménager, ce qui a impliqué de démonter mon serveur et de le reconnecter. Depuis, l'un de mes arrays RAID5 MDADM apparaît comme inactif:

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 blocs niveau 5, 64k chunk, algorithme 2 [3/3] [UUU]

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

appareils inutilisés : 

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

Donc que signifient les étiquettes (S) et comment puis-je dire à MDADM de recommencer à utiliser l'array?

[Modifier] Je viens d'essayer d'arrêter et d'assembler l'array avec -v:

root@mserver:~# mdadm --stop /dev/md0
mdadm: arrêté /dev/md0

root@mserver:~# mdadm --assemble --scan -v
mdadm: /dev/sde1 est identifié comme un membre de /dev/md0, emplacement 2.
mdadm: /dev/sdf1 est identifié comme un membre de /dev/md0, emplacement 3.
mdadm: /dev/sdd1 est identifié comme un membre de /dev/md0, emplacement 0.
mdadm: /dev/sdb1 est identifié comme un membre de /dev/md0, emplacement 1.
mdadm: ajouté /dev/sdd1 à /dev/md0 en tant que 0 (peut-être obsolète)
mdadm: ajouté /dev/sdb1 à /dev/md0 en tant que 1 (peut-être obsolète)
mdadm: ajouté /dev/sdf1 à /dev/md0 en tant que 3 (peut-être obsolète)
mdadm: ajouté /dev/sde1 à /dev/md0 en tant que 2
mdadm: /dev/md0 assemblé à partir d'un seul lecteur - pas assez pour démarrer l'array.

..et entrer cat /proc/mdstat ne montre aucune différence.

[Modifier2] Pas sûr si cela aide, mais voici 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 Go)
     Array Size : 2930279808 (2794.53 GiB 3000.61 Go)
   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-symétrique
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     1       8       17        1      actif synchronisé   /dev/sdb1

   0     0       8      113        0      actif synchronisé   /dev/sdh1
   1     1       8       17        1      actif synchronisé   /dev/sdb1
   2     2       8       97        2      actif synchronisé   /dev/sdg1
   3     3       8       33        3      actif synchronisé   /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 Go)
     Array Size : 2930279808 (2794.53 Go 3000.61 Go)
   Raid Devices : 4
  Total Devices : 2
Preferred Minor : 0

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

         Layout : left-symétrique
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     0       8      113        0      actif synchronisé   /dev/sdh1

   0     0       8      113        0      actif synchronisé   /dev/sdh1
   1     1       0        0        1      défectueux supprimé
   2     2       8       97        2      actif synchronisé   /dev/sdg1
   3     3       0        0        3      défectueux supprimé

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 Go)
     Array Size : 2930279808 (2794.53 GiB 3000.61 Go)
   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-symétrique
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     2       8       97        2      actif synchronisé   /dev/sdg1

   0     0       0        0        0      supprimé
   1     1       0        0        1      défectueux supprimé
   2     2       8       97        2      actif synchronisé   /dev/sdg1
   3     3       0        0        3      défectueux supprimé

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 Go)
     Array Size : 2930279808 (2794.53 GiB 3000.61 Go)
   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-symétrique
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     3       8       33        3      actif synchronisé   /dev/sdc1

   0     0       8      113        0      actif synchronisé   /dev/sdh1
   1     1       8       17        1      actif synchronisé   /dev/sdb1
   2     2       8       97        2      actif synchronisé   /dev/sdg1
   3     3       8       33        3      actif synchronisé   /dev/sdc1

J'ai des notes qui suggèrent que les disques étaient à l'origine assemblés comme suit:

md0 : actif raid5 sdb1[1] sdc1[3] sdh1[0] sdg1[2]
      2930279808 blocs niveau 5, 64k chunk, algorithme 2 [4/4] [UUUU]

[Modifier3]

En parcourant le journal, il semble que ce qui suit s'est produit (basé sur l'heure de la Update Time dans les résultats de --examine):

  1. sdb et sdf ont été déconnectés quelque temps après 13h22 le 20
  2. sdd a été déconnecté quelque temps après 18h37 le 20
  3. le serveur a été éteint quelque temps après 14h00 le 1er

Étant donné que deux disques sont tombés en panne (apparemment) simultanément, je pense qu'il devrait être assez sûr de supposer que l'array n'aurait pas été écrit après ce point(?) et donc il devrait être relativement sûr de le rétablir dans le bon ordre? Quelle est la commande la plus sûre pour le faire et y a-t-il un moyen de le faire sans écrire de modifications?

36voto

JJ Wille Points 21

Les étiquettes S signifient que le disque est considéré comme "de rechange". Vous devriez 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 savoir comment faire cela.

16voto

Milen Points 505

Cette question est un peu ancienne, mais la réponse pourrait aider quelqu'un confronté à une situation similaire. En regardant les comptes d'événements de la sortie mdadm --examine 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 marche à suivre recommandée est d'assembler votre tableau manuellement, forçant mdadm à accepter les disques malgré la différence de compte d'événements:

Arrêtez le tableau:

mdadm --stop /dev/md0

Ensuite, essayez de réassembler le tableau manuellement:

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

Vérifiez l'état du tableau pour examiner si la liste/structure des disques est correcte (le bas de la sortie de la commande montrera quel disque est à quel état et à quelle position dans le tableau):

mdadm --detail /dev/md0

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

cat /proc/mdstat

0voto

kiran Points 101

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

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X