RAID5 a LVM v Linuxu

Článek předkládá postup vytvoření radiu o třech discích včetně vytvoření LVM a oddílu a dále častý úkol s raidy – přidání dalšího disku a zvětšení oddílů.

Vytvoření pole

  1. Vytvoříme na disku partition s ID: 0xfd (Linux raid autodetect). Toto je důležité pro automatické sestavení raidu při bootu. Postup je následující:
    fdisk /dev/sda
    

    n – vytvoření partition (primární, číslo 1, zbytek odklepat – začátek na prvním sektoru, konec na posledním)
    t – výběr ID, zadat fd
    w – uložení partition tabulky na disk a aktualizace v kernelu.

    Takto pro všechny disky, které budeme do raid přidávat.

  2. Vytvoříme RAID-5 přes tři disky:
    mdadm --create /dev/md0 --auto yes --level 5 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1
    

    Postup můžeme zkontrolovat v /proc/mdstat:

    cat /proc/mdstat
    Personalities : [raid6] [raid5] [raid4]
    md0 : active raid5 sdc1[3] sdb1[1] sda1[0]
          16771584 blocks level 5, 64k chunk, algorithm 2 [3/2] [UU_]
          [=>...................]  recovery =  9.1% (768900/8385792) finish=1.6min speed=76890K/sec
    
    unused devices: 
    
  3. Na nově vytvořeném blokovém zařízení /dev/md0 vytvoříme Physical Volume:
    pvcreate /dev/md0
      Physical volume "/dev/md0" successfully created
    
  4. A Volume Group. V té už pak oddíly (logical volume) pomocí lvcreate.
    vgcreate storage /dev/md0
      Volume group "storage" successfully created
    
    lvcreate --name part --size 16G storage
      Logical volume "part" created
    
  5. Vytvořením souborového systému máme dílo hotovo:
    mkfs.ext3 /dev/storage/part
    

Přidaní dalšího disku do pole a zvětšení LVM

Teď budeme chtít přidat do raidu další disky a samozřejmně zvětšit oddíl(y) – v tomto příkladu máme jen jeden což není typické nasazení LVM.

  1. Na novým discích vytvoříme Linux Raid Autodetect oddíly způsobem popsaným nahoře. Přidáme nové oddíly do raidu:
    mdadm --add /dev/md0  /dev/sdd1 /dev/sde1
    
  2. A necháme přepočítat raid. Průběh všech operací můžeme sledovat v /proc/mdstat
    mdadm --grow /dev/md0  --raid-devices 5
    
    cat /proc/mdstat
    Personalities : [raid6] [raid5] [raid4]
    md0 : active raid5 sde1[3] sdd1[4] sdc1[2] sdb1[1] sda1[0]
          16771584 blocks super 0.91 level 5, 64k chunk, algorithm 2 [5/5] [UUUUU]
          [>....................]  reshape =  2.0% (168060/8385792) finish=8.9min speed=15278K/sec
    
    unused devices: 
    
  3. Zvětšíme Physical Volume:
    pvresize /dev/md0
      Physical volume "/dev/md0" changed
      1 physical volume(s) resized / 0 physical volume(s) not resized
    
  4. Nynní můžeme buďto přidat další Logical Volume, nebo pomocí lvextend a resize2fs zvětšit stávající oddíly i FS.

Příspěvek byl publikován v rubrice Linux, LVM, RAID. Můžete si uložit jeho odkaz mezi své oblíbené záložky.