LVM (bloková zařízení)

Z DCEwiki
Skočit na navigaci Skočit na vyhledávání


Schéma LVM

Základní prvky LVM z hledika administrátora systému:

  • PV - Physical volume (fyzický disk) - Libovolné blokové zařízení: oddíl na fyzickém disku (např. /dev/hda1), celý fyzický disk (např. /dev/hda), logický disk jiné LVM skupiny, etc.
  • VG - Volume group - skupina disků, je výchozím prvkem pro práci s LVM. Sdružuje jednotlivá bloková zařízení do jednoho celku, v jehož rámci se pak definují a spravují logické disky.
  • LV - Logical volume (logický disk) - se tvoří v rámci LVM skupiny. Operačnímu systému se tyto logické disky jeví jako fyzická bloková zařízení dm-1 (..a výše).

Základním prvkem LVM z hlediska operačního systému však není skupina PV zařízení ale rozsah, neboli extent.

EXTENT
je blok dat, vymezený rozsahem ( angl. extent), který může být uložen kdekoliv na kterémkoliv PV zařízení v rámci skupiny (VG). Jeho velikost je vždy násobkem tzv. fyzického rozsahu ( Physical Extent - PE) což je nejmenší možná velikost rozsahu (extentu) v rámci skupiny - VG.
  • Maximální počet možných fyzických extentů (PE) je závislý na dostupné kapacitě všech fyzických blokových zařízení (PV) a nastavené maximální velikosti fyzického extentu (PE) v rámci skupiny (VG).
  • Pokud fyzické blokové zařízení (PV) není součástí skupiny (VG), vykazuje nulový počet fyzických extentů (PE).
  • Teprve po přidání fyzického blokového zařízení (PV) do skupiny (VG) se spočítá, kolik by se do jeho diskové kapacity mohlo vejít fyzických extentů, neboť jejich počet je závislý na nastavené velikosti fyzického extentu (PE) v rámci skupiny (VG).
Poznámka Místo na fyzickém blokovém zařízení se ve skutečnosti neobsazuje po jednotlivých fyzických extentech, ale vždy pokud možno jako souvislý rozsah. K rozdělení rozsahu logického disku (LV) na dva či více fyzických rozsahů (PE) může dojít buď při dodatečném roztažením již existujícího logického disku (LV), nebo když přesáhne kapacitu původního fyzického blokového zařízení (PV) v rámci skupiny (VG), nebo při obsazování rozsahů, které původně zabíral jiný, již zrušený logický disk (LV).

Na výše uvedeném schématu jsou fyzické rozsahy (PE) naznačeny jako tečkované čtverečky, ale skutečné extenty (rozsahy) logických disků (LV) jsou orámovány plnou čarou a mají stejný odstín modré, jako logický disk (LV) kterému náleží. Povšimněte si, že druhý logický disk (LV) je rozdělen mezi obě fyzické blokové zařízení (PV) a je tak složen ze dvou extentů.


Příprava blokových zařízení pro začlenění do LVM skupiny

Aby bylo možné blokové zařízení do LVM skupiny začlenit, musí mít nastaven správný identifikátor. To lze zajistit buď příkazem pvcreate, nebo i (v případě diskových oddílů) nastavením přes fdisk - a to tak že se příslušnému diskovému oddílu nastaví identifikátor 8e.

Příklad demonstruje přípravu blokových zařízení pro začlenění do LVM skupiny:

  • fyzického IDE disku /dev/hda
  • prvního primárního diskového oddílu na SATA disku /dev/sda1
  • a RAID pole /dev/md1
Poznámka
stroj:~# pvcreate /dev/hda /dev/sda1 /dev/md1

Monitoring stavu blokových zařízení v rámci skupiny

pvscan

Příkaz pvscan vypisuje rychlé statistiky blokových zařízeních PV, které jsou v systému.

Poznámka
stroj:~# pvscan
  PV /dev/md2   VG storage         lvm2 [1,82 TiB / 0    free]
  PV /dev/md1   VG storage         lvm2 [897,40 GiB / 0    free]
  PV /dev/md3                      lvm2 [1,82 TiB]
  Total: 3 [4,52 TiB] / in use: 2 [2,70 TiB] / in no VG: 1 [1,82 TiB]

Z výše uvedeného výpisu lze vyčíst, že..

  • v systému jsou přítomna tři bloková zařízení typu RAID, která mají identifikátor 8e
  • z těchto tří zařízení jsou pouze dvě ( /dev/md1 a /dev/md2 ) součástí LVM skupiny s názvem storage
  • blokové zařízení /dev/md3 není prozatím součástí žádné skupiny a je prázdné (neobsahuje žádné extenty).
  • na ostatních blokových zařízeních které jsou ve skupině storage jsou obsazeny všechny extenty
Upozornění To že jsou obsazeny všechny extenty apriori neznamená že je obsazená veškerá disková kapacita. Logické disky, které tyto extenty zabírají ve skutečnosti nemusí obsahovat žádná data.

pvdisplay

Příkaz pvdisplay je určen ke zjišťování detailnějších informací o stavu jednotlivých blokových zařízeních v rámci LVM systému.

Z následujícího výpisu se můžete oproti stručnějšímu výpisu příkazu pvscan navíc dozvědět:

  • jaká je velikost extentu a kolik jich lze na každé zařízení umístit
  • že blokové zařízení /dev/md1 má volných 92622 extentů tj. že další extenty budou v případě vytvoření dalšího logického disku, nebo zvětšení některého z již existujících umístěny právě sem.
Poznámka
stroj:~# pvdisplay
  --- Physical volume ---
  PV Name               /dev/md2
  VG Name               storage
  PV Size               1,82 TiB / not usable 3,95 MiB
  Allocatable           yes (but full)
  PE Size               4,00 MiB
  Total PE              476931
  Free PE               0
  Allocated PE          476931
  PV UUID               Yjsx5u-59et-62Ki-MGkX-gfcv-JJdA-cD14Qr
   
  --- Physical volume ---
  PV Name               /dev/md1
  VG Name               storage
  PV Size               897,41 GiB / not usable 3,54 MiB
  Allocatable           yes 
  PE Size               4,00 MiB
  Total PE              229735
  Free PE               92622
  Allocated PE          137113
  PV UUID               MLA3Vx-0SFS-3N1Q-t8M6-iRcY-LNOa-W8TeNp
   
  "/dev/md3" is a new physical volume of "1,82 TiB"
  --- NEW Physical volume ---
  PV Name               /dev/md3
  VG Name               
  PV Size               1,82 TiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               8eGmWs-T7rC-jE86-lYiD-3qRF-drdW-CZ9b6f

Příprava blokového zařízení na vyřazení ze skupiny - přesun dat

Pokud chceme, nebo potřebujeme vyhodit blokové zařízení PV ze skupiny VG, je třeba z něj přesunout extenty pryč. K tomu slouží příkaz pvmove.

Poznámka
pvmove /dev/sda

Fragmentace v rámci LVM

Při větším počtu PV zařízení s menší kapacitou a žonglování s logickými disky v rámci skupiny, může časem dojít ke zpřeházení extentů jednotlivých logických disků. Jak to pak vypadá můžete názorně vidět na níže uvedeném schématu. U takto fragmentovaných logických disků se drasticky snižuje jejich výkon. Jediným způsob, jak extenty přerovnat, je jejich přesun na jiné PV zařízení. Stejným způsobem, jako když se připravuje PV zařízení pro vyřazení ze skupiny VG.

Schéma fragmentovaného LVM
Upozornění Do jaké míry jsou jednotlivé extenty zpřeházeny se z žádného výpisu nedozvíte, proto je vhodné - obzvlášť po nějakých pokusech s logickými disky - čas od času extenty srovnat.
Poznámka Abyste mohli provést přerovnání extentů, musíte mít k dispozici alespoň jedno PV zařízení s minimálně stejnou kapacitou, jako má největší aktivní PV zařízení ve skupině.

Jak se vyhnout zbytečné fragmentaci LVM skupiny?

  • Nepoužívané logické disky rušte až když už v rámci skupiny nejsou žádné volné extenty. Pak zrušte všechny nepoužívané disky najednou.
  • Logické disky recyklujte - tj. snažte se využívat pokud možno již existující logické disky.
  • Po odstranění logických disků proveďte přerovnání, dokud máte volné místo.