{{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.