GNU/Linux >> Tutoriels Linux >  >> Linux

Remplacement d'un disque RAID 6 défaillant par mdadm

Ce tutoriel décrit comment remplacer un disque défaillant sur un RAID logiciel géré par le mdadm utilitaire. Pour remplacer un disque RAID 6 défaillant dans mdadm :

  1. Identifiez le problème.
  2. Obtenez les détails de la matrice RAID.
  3. Retirez le disque défaillant de la matrice RAID.
    1. Éteignez la machine et remplacez le disque.
    2. Partitionnez le nouveau disque.
    3. Ajoutez le nouveau disque à la matrice RAID.
  4. Vérifiez la récupération.

Examinons ce processus plus en détail en parcourant un exemple.

Identifiez le problème 

Pour identifier le disque défaillant dans la matrice RAID, exécutez : 

[root@server loc]# cat /proc/mdadm 

Ou :

[root@server loc]# mdadm -–query -–detail /dev/md2

Le disque défaillant apparaîtra comme défaillant ou supprimé . Par exemple :

[root@server loc]# mdadm -–query -–detail /dev/md2 
/dev/md2: 
Version : 1.2 
Creation Time : Mon Jun 22 08:47:09 2015 
Raid Level : raid6 
Array Size : 5819252736 (5549.67 GiB 5958.91 GB) 
Used Dev Size : 2909626368 (2774.84 GiB 2979.46 GB) 
Raid Devices : 4 
Total Devices : 4 
Persistence : Superblock is persistent

Intent Bitmap : Internal

Update Time : Mon Oct 15 11:55:06 2018 
State : clean, degraded, recovering 
Active Devices : 3 
Working Devices : 4 
Failed Devices : 0 
Spare Devices : 1

Layout : left-symmetric 
Chunk Size : 512K

Consistency Policy : bitmap

Rebuild Status : 3% complete

Name : localhost.localdomain:2 
UUID : 54404ab5:4450e4f3:aba6c1fb:93a4087e 
Events : 1046292

Number Major Minor Raid  Device  State 
0           0        0        0                   removed 
1           8        36      1      active    sync /dev/sdc4 
2           8        52      2      active    sync /dev/sdd4 
3           8        68      3      active    sync /dev/sde4 

Obtenez les détails de la matrice RAID

Pour examiner l'état de la matrice RAID et identifier l'état d'un disque dans le RAID :

[root@server loc]# cat /proc/mdstat 
Personalities : [raid6] [raid5] [raid4] 
md2 : active raid6 sdb4[4](F) sdd4[2] sdc4[1] sde4[3]
5819252736 blocks super 1.2 level 6, 512k chunk, algorithm 2 [4/3] [_UUU] 
[>………………..] recovery = 3.4% (100650992/2909626368) finish=471.5min speed=99278K/sec 
bitmap: 2/22 pages [8KB], 65536KB chunk

unused devices: <none>

Comme nous pouvons le voir, le périphérique /dev/sdb4 a échoué dans le RAID.

Depuis que nous avons identifié que le disque défaillant est /dev/sdb4 (ce qui était le cas sur ce serveur), nous aurions besoin d'obtenir le numéro de série du disque en utilisant smartctl :

[root@server loc]# smartctl -–all /dev/sdb | grep -i 'Serial'

La commande ci-dessus est importante car vous devez savoir quel disque supprimer du serveur, en fonction de l'étiquette physique du disque.

Retirez le disque défaillant de la matrice RAID

Il est important de supprimer le disque défaillant de la baie afin que la baie conserve un état cohérent et soit au courant de chaque changement, comme ceci :

[root@server loc]# mdadm -–manage /dev/md2 -–remove /dev/sdb4

En cas de suppression réussie, un message semblable à celui-ci s'affichera : 

[root@server loc]# mdadm: hot removed /dev/sdb4 from /dev/md2 

Vérifiez l'état de /proc/mdstat encore une fois :

[root@server loc]# cat /proc/mdstat 

Vous pouvez voir que /dev/sdb4 n'est plus visible.

Éteignez la machine et remplacez le disque 

Il est maintenant temps d'arrêter le système et de remplacer le disque défectueux par un nouveau, mais avant d'arrêter le système, commentez /dev/md2 de votre /etc/fstab dossier. Voir l'exemple ci-dessous :

[root@server loc]# cat /etc/fstab

# 
# /etc/fstab 
# Created by anaconda on Fri May 20 13:12:25 2016 
# 
# Accessible filesystems, by reference, are maintained under ‘/dev/disk’ 
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info 
# 
/dev/mapper/centos-root / xfs defaults 0 0 
UUID=1300b86d-2638-4a9f-b366-c5e67e9ffa4e /boot xfs defaults 0 0 
#/dev/mapper/centos-home /home xfs defaults 0 0 
/dev/mapper/centos-swap swap swap defaults 0 0 
#/dev/md2 /var/loc xfs defaults 0 0

Partitionner le nouveau disque 

Étant donné que nous avons d'autres disques de travail dans la matrice RAID, il est facile et pratique de copier le schéma de partition d'un disque de travail sur le nouveau disque. Cette tâche est accomplie avec le sgdisk utilitaire, qui est fourni par le gdisk emballer.

Installez gdisk comme ceci (ajustez cette commande pour votre distribution):

[root@server loc]# yum install gdisk

Utilisation de gdisk , nous allons d'abord passer le -R option (signifie Répliquer). Assurez-vous de répliquer le schéma de partition d'un disque de travail. Il est important que vous utilisiez le bon ordre de disques pour répliquer le schéma de partition d'un disque de travail vers un nouveau. Dans notre situation, sur le nouveau disque se trouve /dev/sdb et les disques de travail sont /dev/sdc , /dev/sdd , /dev/sde .

Maintenant, pour répliquer le schéma de partition d'un disque de travail (disons /dev/sdc ) sur le nouveau disque /dev/sdb , la commande suivante est nécessaire : 

[root@server loc]# sgdisk -R /dev/sdb /dev/sdc

Pour éviter les conflits de GUID avec d'autres lecteurs, nous devrons randomiser le GUID du nouveau lecteur en utilisant : 

[root@server loc]# sgdisk -G /dev/sdb 
The operation has completed successfully. 

Ensuite, vérifiez la sortie de /dev/sdb à l'aide de parted utilitaire : 

[root@server loc]# parted /dev/sdb print

Ajouter le nouveau disque à la matrice RAID 


Après avoir terminé la réplication du schéma de partition sur le nouveau disque, nous pouvons maintenant ajouter le disque à la matrice RAID : 

[root@server loc]# mdadm -–manage /dev/md2 -–add /dev/sdb4
mdadm: added /dev/sdb4 

Vérifier la récupération 

Pour vérifier la récupération RAID, utilisez ce qui suit : 

[root@server loc]# cat /proc/mdstat 
Personalities : [raid6] [raid5] [raid4] 
md2 : active raid6 sdb4[4] sdd4[2] sdc4[1] sde4[3] 
5819252736 blocks super 1.2 level 6, 512k chunk, algorithm 2 [4/3] [_UUU] 
[==>………………] recovery = 12.2% (357590568/2909626368) finish=424.1min speed=100283K/sec 
bitmap: 0/22 pages [0KB], 65536KB chunk

unused devices: <none>

Ou :

[root@server loc]# mdadm -–query -–detail /dev/md2 
/dev/md2: 
Version : 1.2 
Creation Time : Mon Jun 22 08:47:09 2015 
Raid Level : raid6 
Array Size : 5819252736 (5549.67 GiB 5958.91 GB) 
Used Dev Size : 2909626368 (2774.84 GiB 2979.46 GB) 
Raid Devices : 4 
Total Devices : 4 
Persistence : Superblock is persistent

Intent Bitmap : Internal

Update Time : Mon Oct 15 12:37:37 2018 
State : clean, degraded, recovering 
Active Devices : 3 
Working Devices : 4 
Failed Devices : 0 
Spare Devices : 1

Layout : left-symmetric 
Chunk Size : 512K

Consistency Policy : bitmap

Rebuild Status : 12% complete

Name : localhost.localdomain:2 
UUID : 54404ab5:4450e4f3:aba6c1fb:93a4087e 
Events : 1046749

Number Major  Minor  Raid  Device  State 
          4        8       20      0   spare   rebuilding /dev/sdb4 
          1        8       36      1   active   sync /dev/sdc4 
          2        8       52      2   active   sync /dev/sdd4 
          3        8       68      3   active   sync /dev/sde4

À partir de la sortie ci-dessus, nous voyons maintenant que /dev/sdb4 est en cours de reconstruction et quatre appareils fonctionnels et actifs sont disponibles. Le processus de reconstruction peut prendre un certain temps, en fonction de la taille totale de votre disque et du type de disque (par exemple, traditionnel ou à semi-conducteurs).

Célébrer

Vous avez maintenant remplacé avec succès un disque RAID 6 défaillant par mdadm . J'espère que vous n'aurez jamais besoin de le faire, mais le matériel tombe en panne. Il y a de fortes chances que si vous utilisez RAID 6, cela finira par arriver. Si vous le pouvez, configurez un laboratoire, forcez un RAID 6 à échouer, puis récupérez-le. Savoir comment résoudre le problème rendra l'expérience lorsque l'impensable se produit beaucoup moins stressante.


Linux
  1. Vérifiez l'espace disque utilisé sur Linux avec du

  2. Comment Tonstall Ubuntu 14.04 avec Raid 1 à l'aide de Desktop Installer?

  3. Gérer les disques avec DiskPart

  4. mdadm :commande introuvable

  5. Le redimensionnement de disque en ligne est-il possible avec KVM ?

RAID Linux

Informations sur le disque dur derrière le contrôleur RAID matériel ?

Implémentation de Mdadm Raid avec partitionnement Gpt ?

Erreurs lors du clonage de disque avec Cat ?

Impossible de formater une clé USB avec des disques (udisks-error-quark, 0) ?

Remplir le disque avec dd supprime-t-il les fichiers en toute sécurité ?