Esempio Gestione Raid 1 con mdadm
Questa breve guida illustra la gestione di un Raid di tipo 1su un server linux con Suse 9.3.
Lo scenario fa riferimento ad un sistema Suse linux 9.3, con due dischi SATA impostati come sda e sdb e una configurazione delle partizioni in / e swap, dove md0 è lo swap e md1 è /. Dall’analisi dei log è risultato il disco sdb guasto e con il comando:
analizziamo il raidtab:
cat /etc/raidtab
output video del file raidtab:
# autogenerated /etc/raidtab by YaST2
raiddev /dev/md0
   raid-level       1
   nr-raid-disks    2
   nr-spare-disks   0
   persistent-superblock 1
   chunk-size        4
   device   /dev/sda1
   raid-disk 0
   device   /dev/sdb1
   raid-disk 1
raiddev /dev/md1
   raid-level       1
   nr-raid-disks    2
   nr-spare-disks   0
   persistent-superblock 1
   chunk-size        4
   device   /dev/sda2
   raid-disk 0
   device   /dev/sdb2
   raid-disk 1
controlliamo I punti di montaggio del file system:
 cat /etc/fstab
output video dil file fstab
/dev/md1 /              reiserfs   acl,user_xattr         1 1
/dev/md0 swap       swap       pri=42                     0 0
devpts     /dev/pts  devpts     mode=0620,gid=5  0 0
proc        /proc       proc        defaults                  0 0
usbfs       /proc/bus/usb         usbfs       noauto     0 0
sysfs       /sys                        sysfs       noauto     0 0
controlliamo lo stato del raid:
cat /proc/mdstat
output video dello stato:
Personalities : [raid1]
md1 : active raid1 sda2[0]
      77087808 blocks [2/2] [U_]
md0 : active raid1 sda1[0]
      1060160 blocks [2/2] [U_]
unused devices: <none>
You have new mail in /var/mail/root
Sostituzione disco guasto
Il comando "mdadm" permette la completa amministrazione degli array. Ecco cosa fare:
mdadm /dev/md0 --fail /dev/sdb1 --remove /dev/sdb1
mdadm: set /dev/sdb1 faulty in /dev/md0
mdadm: hot removed /dev/sdb1
mdadm /dev/md1 --fail /dev/sdb2 --remove /dev/sdb2
mdadm: hot removed /dev/sdb2
verifichiamo il file di stato:
cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sda2[0]
      77087808 blocks [2/1] [U_]
md0 : active raid1 sda1[0]
      1060160 blocks [2/1] [U_]
unused devices: <none>
ora spegniamo il pc, sostituiamo il disco guasto, con un disco identico al disco funzionante o leggermente più grande riavviamo.
Riavviato il sistema, ripartizioniamo l'hard disk:
sfdisk -d /dev/sda | sfdisk /dev/sdb
ricreiamo il RAID:
mdadm /dev/md0 --add /dev/sdb1
mdadm /dev/md1 --add /dev/sdb2
controlliamo la ricostruzione del RAID con un "cat /proc/mdstat" :
Personalities : [raid1]
md1 : active raid1 sdb2[2] sda2[0]
      77087808 blocks [2/1] [U_]
      [>....................]  recovery =  3.4% (2656192/77087808) finish=26.6min speed=46626K/sec
md0 : active raid1 sdb1[1] sda1[0]
      1060160 blocks [2/2] [UU]
unused devices: <none>
ricordiamoci inoltre di istallare grub nel MBR del nuovo sdd:
grub> root (hd1,0)
grub> setup (hd1)
Abbiamo completato, controlliamo che la ricostruzione sia completa:
cat /proc/mdstat
output video dello stato:
Personalities : [raid1]
md1 : active raid1 sdb2[1]  sda2[0]
      77087808 blocks [2/2] [UU]
md0 : active raid1 sdb1[1]  sda1[0]
      1060160 blocks [2/2] [UU]
unused devices: <none>
il comando mdadm si può configurare /etc/mdadm.conf in modo da rendere più "coerente" la gestione.
Aiuto man mdadm
Il test è stato eseguito su di un server proxy funzionante Giuseppe Lanza
 
Sito Personale di Lanza Giuseppe - il contenuto del sito è solo di tipo informativo- 
  Site Map