Fórum Root.cz
Hlavní témata => Software => Téma založeno: Elep331 01. 11. 2018, 13:05:51
-
Ahoj, nevím jestli přesně rozumím principu fungování LVM. Příklad:
1) Pro virtuální stroj si vytvořím 100 GB virtuální HDD
2) Vytvořím /sda1 pro /boot a /sda2 pro LVM s jednou Volume Group a třemi Logical Volume
3) 10 GB swap, 30 GB / a 60 GB /home
4) Tím kompletně zaplním tento virtuální HDD
Teď zjistím, že mám ku příkladu málo místa na / a potřebuji zvětšit z 30 GB na 60 GB. Zvětším si virtuální HDD a co teď? Jde nějak zvětšit ta "prostřední" LV? Mohou ty LV "plavat" pro VG sem a tam? Nebo to celé nějak blbě chápu?
Díky
-
Chapes to blbe ;-) nevytvarej LV v cele VG, udelej LV jen pdle aktualni potrebya pak pridavej z volneho VG mista tem LV kde bude treba, to se provwde za chodu.pripojenejch_LV
kdyz mas VG ted vycerpane, muzes z jednoho LV take predat misto jinemu LV, ale to ktere zmensujes musi byt pritom odpojene
-
Já osobně vždy nechám volné místo na disku(neformátované/bez FS) v rámci té VG... právě pro případy zvetšování jednotlivých LV.
Jednotlivé LV nejsou nějak pevně svázané a jak píšeš "plavat" si mohou. Prostě si je můžeš elasticky zvětšovat, samozřejmě jen tak, kolik máš volného místa a nebo smrštěním jiného LV.
To volné místo bez FS(uvnitř VG) je hlavně dobré když snapshotujes, aby to mělo zkama brat.
Představ si koláč ..pojmenujeme ho VG
Ten má 4 oblasti LV
-jedna je pokryta borůvkami (/home)
-jedna makem (/)
-jedna tvarohem (/var)
-jedna ničím (bez FS bez mountpointu) ..a právě tuto oblast použiješ na zvětšování a ukrajování pro snapshoty(nutné!)
Doporučuji si nainstalovat 'Logical Volume Management' , kde to uvidíš i vizualizovaně a lépe to z toho pochopíš.
-
Ahoj, LVM je dar IBM linuxu, nevím jak je implementováno na linuxu, zkusím tedy vysvětli ze znalosti AIXu/IBM:
LVM je mapování z fyzické storage na logickou. Základem je VG, do té se přiřadí PV (disky) a ty se rozkrájí na PP=LP ( physical partiton = logical partition, když pominu mirroring)
V rámci VG se z několika LP udělá LV ( logical volume) a nad tou se vyrobí Filesystém, swap, dump, raw ...
Bohužel nevím, jak je to v Linuxu, ale v AIXu, pokud se zvětší třeba disk na SAN, musí se to AIXu dát vědět tím, že se refreshne VG a dál už je to triviální, máš v ní z čeho rozdávat.
Pokud nerozšiřuješ disk/ VG, jestli to linux umí, zmenšíš FS a LV a získáš místo na rozdávání
Ahoj, nevím jestli přesně rozumím principu fungování LVM. Příklad:
1) Pro virtuální stroj si vytvořím 100 GB virtuální HDD
2) Vytvořím /sda1 pro /boot a /sda2 pro LVM s jednou Volume Group a třemi Logical Volume
3) 10 GB swap, 30 GB / a 60 GB /home
4) Tím kompletně zaplním tento virtuální HDD
Teď zjistím, že mám ku příkladu málo místa na / a potřebuji zvětšit z 30 GB na 60 GB. Zvětším si virtuální HDD a co teď? Jde nějak zvětšit ta "prostřední" LV? Mohou ty LV "plavat" pro VG sem a tam? Nebo to celé nějak blbě chápu?
Díky
-
Pokud to v linuxu takhle nejde, určitě jde místo zvětšování vytvořit nový virtuální disk, přiřadit ho do VG a hrajme
-
Velice dulezite je ze zmenu velikosti hlavne taky musi podporovat filesystem kterym je zformatovano logical volume, pokud to filesystem nepodporuje tak zmenseni bude mit fatalni nasledky. To same plati u zvetseni, pokud se filesystemu nerekne ze ma k dispozici vice mista tak ho nepouzije. Nastesti vetsina souborovych systemu to umi, napriklad u EXT4 se da menit velikost pres prikaz resizefs...
-
nechavat prazdne nevyuzite misto je nesmysl...
LV nemusi mit souvisly prostor (do LV se mapuji mensi casti - extenty), takze pokud potrebujes v tvem prikladu roztahnout prostor, mas min. 2 moznosti:
1) zvetsis disk (/dev/sda) a nasledne roztahnes oddil (/dev/sda2) - staci predefinovat partition table tak, aby /dev/sda2 zacinala na stejne pozici jako puvodni a konec roztahnes do konce zvetseneho disku (/dev/sda)
2) jak pise R2d2 - do VG pridas dalsi PV (treba novy /dev/sdb)
po roztazeni VG, zvetsis LV a nasledne FS (extend FS vetsionu neni problem, horsi je shrink)
-
Jasne, ze to jde uplne v pohode - muzes budto:
a) nove misto deklarovat jako /dev/sda3 typu 8e a potom je treba:
pvcreate /dev/sda3
vgextend TvojeVG /dev/sda3
lvextend /dev/MyVG/MyRootLV /dev/sda3
nebo:
b) zvetsit /dev/sda2 manipulaci tabulky oddilu a potom je treba:
partprobe -s
pvresize /dev/sda2
lvresize -l +100%FREE /dev/MyVG/MyRootLV
plus aby to melo prakticky smysl, musi resize podporovat i filesystem, takze treba:
xfs_growfs /dev/MyVG/MyRootLV
-
TvojeVG = MyVG
-
Ahoj, moc díky za odpovědi.
Ony dvě možnosti s novým /sdb a rozšířením stávajícího /sda jsem tušil. Co jsem nevěděl a teď už vím, že můžu do existující LV přidat další prostor který přímo "fyzicky" nesousedí s tím původním. Tzn. např roztáhnout stávající /sda, na konci vytvořit nový PV, zapojit ho do VG a LV která je uprostřed původního disku rozšířit o toto místo na konci. Filesystem pak netuší, že má první část na někde uprostřed disku a druhou na konci.
-
Super, rad jsem prispel. O tom prave LVM je... umoznit abstrahovat od fyzickych lokací storage.
Jen bacha abys po zvetseni LV nezapomnel zvetsit FS. Nic by se nestalo, ale misto bys nevyuzil.