GNU/Linux >> Znalost Linux >  >> Linux

Logical Volume Manager (LVM) versus standardní dělení v Linuxu

Kapacita úložiště serveru byla po desetiletí spravována pomocí velikostí diskových jednotek a konfigurací oddílů. Je zřejmé, že tyto strategie fungují dobře a jsou spolehlivé. Přehodnocení správy úložiště na místních serverech však přináší mnoho výhod. Tento článek porovnává standardní správu úložiště a dělení se správou logických svazků (LVM). Také ukazuje některé základní příkazy pro každý přístup.

Tradiční správa úložiště

Používám frázi tradiční správa úložiště popsat proces rozdělování, formátování a připojování úložné kapacity ze základního pevného disku. Toto standardní dělení porovnávám s alternativní metodou zvanou Logical Volume Manager neboli LVM.

Úložný prostor je obvykle spravován na základě maximální kapacity jednotlivých pevných disků. Výsledkem je, že když správce systému přemýšlí o úložišti, činí tak na základě každé jednotky. Pokud má například server tři pevné disky po 1 TB, správce systému považuje úložiště doslova:Mám tři 1TB disky, se kterými mohu pracovat .

Pojďme si velmi rychle zopakovat tradiční správu úložiště. Zde je ukázkový scénář:

1. Nainstalujte nový pevný disk

Kupte si 1 terabajtový (1 TB) pevný disk a poté jej fyzicky nainstalujte na server.

2. Rozdělte disk

Použijte fdisk nebo gparted vytvořit jeden nebo více oddílů. Je důležité si uvědomit, že oddíly nemohou spotřebovat více než celkový 1 TB diskové kapacity.

Příklad fdisk příkaz:

# fdisk /dev/sdb

Nebudu se zabývat syntaxí fdisk v tomto článku, ale předpokládejme, že jsem vytvořil jeden oddíl, který spotřebovává celý 1 TB disk. Oddíl je /dev/sdb1 .

Zobrazte kapacitu pomocí /proc/partitions a lsblk obsah:

# cat /proc/partitions
# lsblk

3. Vytvořte souborový systém

Vytvořte souborový systém na novém oddílu pomocí mkfs příkaz. Můžete použít ext4 nebo výchozí XFS RHEL souborový systém.

# mkfs.ext4 /dev/sdb1

Zatímco XFS je výchozím nastavením Red Hat, nemusí být v kombinaci s LVM tak flexibilní jako ext4 . XFS souborové systémy lze snadno rozšířit, ale ne redukovat. Ke konci článku tuto myšlenku dále rozvedu.

4. Vytvořte přípojný bod

Zbytek tohoto procesu je relativně standardní. Nejprve vytvořte adresář, který bude sloužit jako přípojný bod. Dále ručně připojte oddíl k bodu připojení.

# mkdir /newstorage
# mount /dev/sdb1 /newstorage

5. Potvrďte kapacitu úložiště

Použijte du příkaz k potvrzení, že úložný prostor je dostupný a má očekávanou velikost.

# du -h /newstorage

Poznámka :-h volba zobrazí výstup du v kapacitních termínech, které jsou pro lidi snadno srozumitelné, jako je GB nebo TB.

6. Nakonfigurujte prostor pro připojení při spouštění

Upravte /etc/fstab soubor pro připojení souborového systému při bootování. Pokud potřebujete připomenutí na /etc/fstab , podívejte se na článek Tylera Carrigana Úvod do souboru Linux /etc/fstab zde na Enable Sysadmin.

Správce logických svazků (LVM)

Tradiční kapacita úložiště je založena na kapacitě jednotlivých disků. LVM používá jiný koncept. Úložný prostor je spravován kombinací nebo sdružováním kapacity dostupných jednotek. S tradičním úložištěm se se třemi 1TB disky manipuluje samostatně. U LVM jsou tytéž tři disky považovány za 3 TB agregované úložné kapacity. Toho je dosaženo označením úložných disků jako Fyzické svazky (PV), neboli skladovací kapacita využitelná LVM. Hodnoty PV jsou poté přidány do jedné nebo více skupin svazků (VG). VG jsou vyřezány do jednoho nebo více logických svazků (LV), se kterými se pak zachází jako s tradičními oddíly.

Zdroj :Red Hat LVM Architecture Overview

1. Nainstalujte nový pevný disk

Je zřejmé, že musí být k dispozici úložný disk. Jak jsme viděli výše, musíte fyzicky nainstalovat jednotku na server.

2. Označte fyzické svazky

Fyzické svazky (PV) jsou disky nebo oddíly, které má LVM k dispozici jako potenciální úložnou kapacitu. Mají identifikátory a metadata, která popisují každý PV. Je zajímavé poznamenat, že na rozdíl od RAID nemusí mít PV stejnou velikost nebo disky se stejnou rychlostí. Můžete kombinovat typy pohonů a vytvářet PV. Chcete-li implementovat LVM, nejprve označte disk jako fyzický svazek.

Příkaz pro vytvoření PV:

# pvcreate /dev/sdb1
# pvcreate /dev/sdc

Tyto dva příklady příkazů se mírně liší. První příkaz označuje oddíl 1 na úložném disku b jako PV. Druhý příkaz nastavuje celkovou kapacitu úložného disku c jako PV.

Zobrazit kapacitu FV a další informace:

# pvdisplay

Tento příkaz zobrazí všechny fyzické nosiče nakonfigurované na serveru.

3. Správa skupin svazků

Jakmile je jeden nebo více disků k dispozici pro LVM jako fyzické svazky, kapacita úložiště se sloučí do skupin svazků (VG). Na serveru může být více než jeden VG a disky mohou být členy více než jednoho VG (ale samotné PV mohou být členy pouze jednoho VG).

Použijte vgcreate k vytvoření nové skupiny svazků. VG musí mít alespoň jednoho člena. Syntaxe příkazu je:

vgcreate name-of-new-VG PV-members

Pomocí následujícího příkazu vytvořte skupinu svazků s názvem vg00 pomocí /dev/sdb1 a /dev/sdc jako členové:

# vgcreate vg00 /dev/sdb1 /dev/sdc

Zobrazit informace pro VG s názvem vg00 :

# vgdisplay vg00

4. Správa logických svazků

VG lze dále rozdělit na jeden nebo více logických svazků (LV). Tyto logické svazky se pak používají, jako by to byly tradiční oddíly. VG má celkovou kapacitu a část této kapacity je pak přidělena logickému svazku.

lvcreate příkaz vyřezává úložnou kapacitu z VG. Je třeba si uvědomit několik možností.

lvcreate options
Možnost Popis
-n Název LV - ex. sales-lv
-L Velikost v G nebo T - např. 10G
-q Tichý, potlačí výstup příkazu
-v Podrobný režim poskytující další podrobnosti

Syntaxe pro lvcreate příkaz je následující:

lvcreate -L size -n lvname vgname

Zde je příkaz k vytvoření 10 GB Logický svazek s názvem sales-lv vyřezaný z vg00 Skupina svazků:

# lvcreate -L 10G -n sales-lv vg00

Jak si vzpomínáte, vytvořili jsme vg00 Skupina svazků ze dvou fyzických svazků, /dev/sdb1 a /dev/sdc . V souhrnu jsme tedy zkombinovali kapacitu /dev/sdb1 a /dev/sdc do vg00 a poté vyřezal logický svazek s názvem sales-lv z tohoto agregovaného úložného prostoru.

Můžete použít lvdisplay zobrazíte konfiguraci logického svazku.

# lvdisplay /dev/vg00/sales-lv

5. Použijte souborový systém a nastavte bod připojení

Jakmile je LV vytvořen, je spravován jako jakýkoli jiný oddíl. Potřebuje souborový systém a přípojný bod, stejně jako jsme to nakonfigurovali v sekci standardní správy oddílů výše.

  1. Spusťte soubor mkfs.ex4 příkaz na LV.
  2. Vytvořte přípojný bod pomocí mkdir.
  3. Připojte svazek ručně pomocí mount nebo upravte /etc/fstab soubor k automatickému připojení svazku při spuštění systému.
  4. Použijte df -h příkaz k ověření dostupnosti úložné kapacity.

[ Také by se vám mohlo líbit: Úvod do Správce logických svazků ]

Škálovací kapacita

V této fázi jsme viděli konfiguraci LVM, ale ve skutečnosti jsme ještě nebyli schopni vidět mnoho výhod. Jednou z výhod konfigurací LVM je možnost snadno a rychle škálovat kapacitu úložiště. Obvykle je samozřejmě potřeba, aby správci systému škálovali (zvýšili kapacitu). Stojí za zmínku, že můžete také snížit kapacitu úložiště pomocí LVM. To znamená, že pokud je kapacita úložiště nadměrně alokována (nakonfigurovali jste mnohem více úložiště, než jste potřebovali), můžete ji zmenšit. V této části se budu zabývat oběma scénáři.

Začněme zvýšením kapacity.

Zvýšení kapacity

K logickému svazku můžete přidat úložnou kapacitu. To je užitečné, pokud uživatelé spotřebují více místa, než jste očekávali. Proces je docela logický:

  1. Přidejte disk a nakonfigurujte jej jako PV.
  2. Přidejte jej do VG.
  3. Přidejte kapacitu do LV a poté rozšiřte souborový systém.

1. Nainstalujte úložný disk a poté jej nakonfigurujte jako PV

Chcete-li zvýšit kapacitu, nainstalujte nový disk a nakonfigurujte jej jako PV podle výše uvedených kroků. Pokud je již k dispozici disk s volným místem, jistě jej můžete také použít.

Zde je připomínka příkazu k vytvoření PV:

# pvcreate /dev/sdb2

V tomto případě označuji oddíl 2 na disku /dev/sdb jako nový PV.

2. Přidejte prostor do VG

Jakmile je nová kapacita určena pro LVM, můžete ji přidat do VG a zvětšit tak velikost fondu.

Spuštěním tohoto příkazu přidáte nový PV k existujícímu VG:

# vgextend vg00 /dev/sdb2

Nyní je zásobárna větší. Dalším krokem je přidání zvýšené kapacity ke konkrétnímu logickému svazku. Ke stávajícímu LV můžete přidělit kterýkoli nebo celý skladovací prostor FV, který jste právě přidali do bazénu.

3. Přidejte prostor do LV

Dále přidejte část nebo celý nový úložný prostor VG do LV, který je třeba rozšířit.

Spusťte lvextend příkaz k rozšíření LV na danou velikost:

# lvextend -L3T /dev/vg00/sales-lv

Spusťte lvextend příkaz k přidání 1 GB místa ke stávající velikosti:

# lvextend -L+1G /dev/vg00/sales-lv

4. Rozšiřte systém souborů, abyste zpřístupnili úložnou kapacitu

Nakonec rozšiřte souborový systém. Oba ext4 a XFS podporují tuto schopnost, takže oba souborové systémy jsou v pořádku.

Odpojte souborový systém pomocí umount příkaz:

# umount /newstorage

Zde je základní příkaz pro ext4 :

# resize2fs /dev/vg00/sales-lv 3T

Snížit kapacitu

Zmenšení úložného prostoru je méně častým úkolem, ale stojí za zmínku. Proces probíhá v opačném pořadí než při rozšiřování úložiště.

Poznámka :XFS souborové systémy nejsou ve skutečnosti zmenšeny. Místo toho zálohujte obsah a poté jej obnovte do LV s novou velikostí. Můžete použít xfsdump nástroj k dosažení tohoto cíle. ext4 souborový systém lze snížit. To je souborový systém, na který se v této sekci zaměřuji. Jak jsme viděli výše u rozšíření souborového systému, svazek musí být odpojen. Přesný příkaz se bude lišit v závislosti na vašem LV názvu.

# umount /dev/vg00/sales-lv

1. Zmenšete souborový systém

Dále použijte resize2fs příkaz ke zmenšení velikosti souborového systému. Doporučuje se spustit fsck na ext4 souborové systémy před jejich zmenšením. Také se doporučuje zálohovat data na LV pro případ, že by se stalo něco neočekávaného.

Zde je příklad zmenšení ext4 souborový systém:

# resize2fs /dev/vg00/sales-lv 3T

Poznámka :Souborový systém nemůžete zmenšit na velikost menší, než je množství dat na něm uložených.

2. Snižte LV

Použijte lvreduce příkaz ke zmenšení úložného prostoru přiděleného LV. To vrátí potenciální úložnou kapacitu VG.

# lvreduce -L 2T vg00/sales-lv

Je důležité si uvědomit, že výše uvedený příkaz nastavuje sales-lv na 2T . není odebrat dva terabajty ze stávajícího LV. Konfiguruje LV na dva terabajty. Je možné říci lvreduce k odečtení množství místa ze stávající kapacity pomocí velmi podobného příkazu:

# lvreduce -L -2T vg00/sales-lv

V tomto případě jsem přidal - (pomlčka) před 2T velikost, což znamená, že chci toto množství prostoru odečíst od existujícího sales-lv kapacita. Rozdíl mezi těmito dvěma příkazy je malý, ale důležitý.

Nyní máte vrácenou kapacitu VG pro použití v jiném LV. K přerozdělení této kapacity můžete použít příkazy extend popsané výše. VG lze také zmenšit.

Flexibilita

Kapacitu lze také snadno přerozdělit pomocí LVM. Můžete snížit kapacitu v jednom VG a přidat ji do jiného. Toho je dosaženo zmenšením souborového systému a následným odstraněním LV z VG. Řekněme, že máte server s kapacitou 10 TB. Pomocí výše uvedených procesů jste vytvořili dvě LV po 5 TB. Po několika týdnech zjistíte, že jste místo toho měli vytvořit LV 7 TB a 3 TB. Z jedné ze skupin svazků můžete odebrat 2 TB kapacity a poté tuto kapacitu přidat do druhého VG. To je mnohem větší flexibilita, než nabízí tradiční dělení.

LVM také podporuje konfigurace RAID, zrcadlení a další pokročilá nastavení, která z něj dělají ještě atraktivnější řešení. Článek Tylera Carrigana Vytváření logických svazků v Linuxu pomocí LVM obsahuje dobré informace o prokládání a zrcadlení logických svazků.

[ Chcete si vyzkoušet své schopnosti správce systému? Proveďte hodnocení dovedností ještě dnes. ] 

Sbalit

Logical Volume Manager je skvělý způsob, jak přidat flexibilitu vašim potřebám úložiště, a ve skutečnosti to není o moc složitější než tradiční správa disků. Na stránkách Red Hatu je skvělá dokumentace a velmi efektivně ji pokrývají také oficiální školicí kurzy.

Jedna z věcí, které oceňuji na LVM, je struktura logického příkazu. Většina příkazů pro správu spolu souvisí, a proto jsou relativně snadno zapamatovatelné. Smyslem následující tabulky je ne abych shrnul příkazy, ale spíše abyste si všimli, že všechny příkazy jsou velmi podobné, a proto jsou uživatelsky přívětivé:

Podobné příkazy se používají ke správě komponent LVM
Příkaz Popis
pvcreate Vytvořit fyzický svazek
pvdisplay Zobrazení informací o fyzickém objemu
pvs Zobrazení informací o fyzickém objemu
pvremove Odebrat fyzický svazek
vgcreate Vytvořit skupinu svazků
vgdisplay Zobrazit informace o skupině svazků
vgs Zobrazit informace o skupině svazků
vgremove Odebrat skupinu svazků
vgextend/vgreduce Rozšířit nebo zmenšit skupinu svazků
lvcreate Vytvořit logický svazek
lvdisplay Zobrazit informace o logickém svazku
lvs Zobrazit informace o logickém svazku
lvremove Odebrat logický svazek
lvextend/lvextend Rozšířit nebo zmenšit logický svazek

Až budete příště stavět místní souborový server, zvažte použití LVM namísto tradičních technik správy úložiště. Můžete si poděkovat za měsíce nebo roky, protože potřebujete upravit kapacitu úložiště serveru.


Linux
  1. Jak vytvořit souborový systém na linuxovém oddílu nebo logickém svazku

  2. Jak vytvořit fyzický svazek v Linuxu pomocí LVM

  3. Vytváření logických svazků v Linuxu pomocí LVM

  1. Jak nakonfigurovat LVM na Linux / CentOS / Redhat

  2. Použití Ansible k automatizaci konfigurací Správce logických svazků

  3. Jak snížit objem LVM na Ubuntu

  1. Konfigurace blokového úložiště na serverech Linux

  2. Konfigurace LVM:Operace/nástroje logického svazku (LV).

  3. Jak obnovit smazaný logický svazek (LV) v LVM pomocí vgcfgrestore