{{tag>sysadmin linux raid}}
====== RAID 1: Test de suppression/reconstruction à chaud ======
Sur le système testé, un volume LVM est construit sur le RAID 1 (miroir). L'objet du test est de vérifier:
* Que le système de fichier sur le volume logique LVM reste disponible malgré le retrait d'un disque;
* Que la reconstruction du volume RAID 1 (miroir) n’empêche pas le fonctionnement du système;
===== État initial =====
Le système de fichier contenu dans le volume logique LVM est monté sur le système de fichier racine:
df -lh
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
udev 988M 0 988M 0% /dev
tmpfs 200M 21M 180M 11% /run
/dev/sda1 19G 1,2G 17G 7% /
tmpfs 999M 0 999M 0% /dev/shm
tmpfs 5,0M 0 5,0M 0% /run/lock
tmpfs 999M 0 999M 0% /sys/fs/cgroup
/dev/sda6 5,9G 25M 5,6G 1% /tmp
/dev/mapper/vgdata-backup--storage 5,4T 2,2T 3,2T 41% /srv/bareos/storage
Ici le dossier /srv/bareos/storage est le point de montage pour le système de fichiers du volume logique LVM backup-storage.
pvdisplay liste les volumes physiques utilisés pour la création des groupes de volumes LVM, Ici on peut voir que le groupe de volume vgdata ne se compose que d'un périphérique /dev/md127
pvdisplay
--- Physical volume ---
PV Name /dev/md127
VG Name vgdata
PV Size 5,46 TiB / not usable 1,00 MiB
Allocatable yes (but full)
PE Size 4,00 MiB
Total PE 1430759
Free PE 0
Allocated PE 1430759
PV UUID RMj81D-xkdW-yRxf-3AdU-2XYY-WrrC-CkOy70
Le périphérique /dev/md127 est bien notre volume RAID de niveau 1 comme le montre le fichier /proc/mdstat
cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md127 : active raid1 sdc1[2] sdb[0]
5860389888 blocks super 1.2 [2/2] [UU]
bitmap: 0/11 pages [0KB], 262144KB chunk
Le fichier rapporte que le RAID 1 est actif, qu'il se compose de deux disques: /dev/sdb et /dev/sdc.
===== Retrait d'un périphérique du volume RAID =====
Ici on va retirer le périphérique /dev/sdb du volume RAID /dev/md127. On le fait en deux étapes. Le disque est d'abord marqué défectueux puis retiré:
mdadm /dev/md127 --fail /dev/sdb
mdadm /dev/md127 --remove /dev/sdb
Le volume RAID /dev/md127 ne se compose plus que d'un disque:
cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md127 : active raid1 sdc1[2]
5860389888 blocks super 1.2 [2/1] [_U]
bitmap: 0/11 pages [0KB], 262144KB chunk
unused devices:
Le volume est actif mais il ne contient plus que le périphérique **/dev/sdc1** l'état **[_U]** résume la situation.
Le système de fichier contenu dans le volume LVM reste disponible. Le système continue à fonctionner normalement, pas d'interruption de service. Ici on se place dans le dossier et on examine un fichier présent:
cd /srv/bareos/storage
file Unlimited-0150
Unlimited-0150: Bacula volume, started Mon Oct 14 07:44:28 2019
===== Effacement du contenu du disque retiré =====
On détruit ici les informations préexistantes sur le disque retiré.
mdadm --zero-superblock /dev/sdb
parted /dev/sdb
(parted) mklabel gpt
(parted) mkpart primary 0% 100%
(parted) align-check
(parted) name 1 raid
(parted) q
Retrait du superbloc contenant les méta-informations du RAID, reconstruction d'une table de partition GPT contenant une unique partition principale.
===== Reconstruction ====
La partition **/dev/sdb1** vide peut être ajoutée au volume RAID:
mdadm /dev/md127 --add /dev/sdb1
Le RAID miroir se reconstruit alors automatiquement comme l'indique le fichier **/proc/mdstat**:
cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md127 : active raid1 sdb1[3] sdc1[2]
5860389888 blocks super 1.2 [2/1] [_U]
[>....................] recovery = 0.0% (5114496/5860389888) finish=572.4min speed=170483K/sec
bitmap: 1/11 pages [4KB], 262144KB chunk
Les informations détaillées du volume RAID /dev/md127 sont affichées via la commande:
mdadm --detail /dev/md127
Elle indique que le volume RAID se compose bien de 2 disques à présent, qu'il est en état dégradé et en cours de reconstruction.
/dev/md127:
Version : 1.2
Creation Time : Mon Oct 14 17:50:30 2019
Raid Level : raid1
Array Size : 5860389888 (5588.90 GiB 6001.04 GB)
Used Dev Size : 5860389888 (5588.90 GiB 6001.04 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Intent Bitmap : Internal
Update Time : Thu Jun 18 19:15:38 2020
State : clean, degraded, recovering
Active Devices : 1
Working Devices : 2
Failed Devices : 0
Spare Devices : 1
Rebuild Status : 0% complete
Name : storage01:0 (local to host storage01)
UUID : 7b9de5fd:bdcb6b7f:ae3c1bda:f4a1f8fd
Events : 13033
Number Major Minor RaidDevice State
3 8 17 0 spare rebuilding /dev/sdb1
2 8 33 1 active sync /dev/sdc1
===== Remarques =====
Les test sur le volume RAID de niveau 1 ont permis de mettre en évidence que:
* Lors des changements d'états du volume RAID, des alertes mails ont bien été émises à l'attention des administrateurs;
* L’absence d'un disque, et le mode dégradé du RAID n'a pas eu d'impacts notables sur le fonctionnement du système qui est resté totalement disponible.