GNU/Linux >> Znalost Linux >  >> Linux

Použití LVM ke správě fyzických svazků, skupin svazků a logických svazků – příprava cíle RHCSA

V rámci přípravy na zkoušku RHCSA jsme se již naučili spravovat oddíly na disku. Oddíly jsou užitečné pro oddělení místa na disku (například oddělení souborů souvisejících s databází od souborů souvisejících s webovým serverem), ale máme mnohem flexibilnější řešení, které dokáže oddělit nebo agregovat úložný prostor.

Toto řešení se nazývá LVM, správce logických svazků. LVM nám umožňuje vidět více disků jako jeden souborový systém, čímž překonáváme omezení webu fyzického disku. Můžeme také vytvořit softwarové zrcadlení na discích pro ochranu nebo data zapsaná do souborového systému. V tomto tutoriálu probereme základy:budeme spravovat tři vrstvy LVM, fyzické svazky, skupiny svazků a logické svazky.

V tomto tutoriálu se naučíte:

  • Jak vytvořit a odebrat fyzické svazky
  • Jak přiřadit fyzické svazky skupinám svazků
  • Jak vytvářet a odstraňovat logické svazky

Vytvoření nového fyzického svazku pomocí LVM.

Požadavky na software a použité konvence

Softwarové požadavky a konvence příkazového řádku systému Linux
Kategorie Požadavky, konvence nebo použitá verze softwaru
Systém Red Hat Enterprise Linux 8.1
Software LVM 2.03
Jiné Privilegovaný přístup k vašemu systému Linux jako root nebo prostřednictvím sudo příkaz.
Konvence # – vyžaduje, aby dané linuxové příkazy byly spouštěny s právy root buď přímo jako uživatel root, nebo pomocí sudo příkaz
$ – vyžaduje, aby dané linuxové příkazy byly spouštěny jako běžný neprivilegovaný uživatel

S LVM máme tři vrstvy, které staví na sobě:physical volumes (pv), což jsou podobné oddíly, pouze označené pro použití LVM. Můžeme vytvořit fyzický svazek z diskového oddílu nebo celého surového disku. Pokud máme v úmyslu použít disk pouze jako fyzický svazek LVM, nemusíme na něm nejprve vytvářet oddíl. Další vrstvou je volume group (vg). Jak název napovídá, jde jednoduše o seskupení fyzických svazků. Na této vrstvě můžeme agregovat veškerý základní prostor fyzického svazku do větší úložné jednotky. Nad skupinami svazků můžeme vytvořit poslední vrstvu, logical volumes (lv). Ty mohou obsahovat souborové systémy, ve kterých můžeme ukládat naše data.

Jednou z hlavních funkcí LVM je, že můžeme za běhu přidat další fyzický svazek do skupiny svazků a také můžeme upravit velikost logického svazku za běhu systému. Takže pokud nám dojde místo, můžeme škálovat bez vypínání systému.

Zkratky vrstev jsou dobrou připomínkou, když se zabýváme LVM. Všechny příkazy, které pracují na různých vrstvách, začínají těmito zkratkami, například pokud pracujeme s fyzickými svazky, příkaz k vytvoření jednoho bude pvcreate , příkaz pro výpis existujících fyzických nosičů bude pvdisplay , a tak dále. I když to potřebujeme dělat zřídka, je snadné uhodnout nebo najít správný příkaz, protože tato konvence pojmenování je konzistentní ve všech vrstvách.

Pro tento výukový program jsme přidali na disky, každý má velikost 2 GB pro náš laboratorní stroj. Jsou rozpoznány jako /dev/sdb a /dev/sdc v našem systému, zatímco /dev/sda drží operační systém, kterého se během následujících kroků nedotkneme.

Jak vytvořit a odebrat fyzické svazky

Jak vytvořit fyzický svazek

K vytvoření fyzického svazku použijeme pvcreate . Na obou sdb vytvoříme fyzický svazek 2 GB a sdc .

# pvcreate /dev/sdb
Physical volume "/dev/sdb" successfully created.
# pvcreate /dev/sdc
Physical volume "/dev/sdc" successfully created.

Můžeme zkontrolovat, zda jsme to udělali správně, uvedením našich fyzických objemů. Použijeme pvdisplay .

# pvdisplay 
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               rhel
  PV Size               <14.00 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              3583
  Free PE               0
  Allocated PE          3583
  PV UUID               rfezEa-GlgW-jWUX-Zixs-Ydw0-EsZS-nk3JDH
   
  "/dev/sdb" is a new physical volume of "2.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb
  VG Name               
  PV Size               2.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               V2PUv4-O9eQ-jFvQ-UmQf-dmq3-caF9-xmxYGj
   
  "/dev/sdc" is a new physical volume of "2.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdc
  VG Name               
  PV Size               2.00 GiB                                                                                                                                                                            
  Allocatable           NO                                                                                                                                                                                  
  PE Size               0                                                                                                                                                                                   
  Total PE              0                                                                                                                                                                                   
  Free PE               0                                                                                                                                                                                   
  Allocated PE          0                                                                                                                                                                                   
  PV UUID               PWTs7Q-x3wD-RyXj-ertn-Sh2N-CiXb-ayDc1q

Laboratorní stroj již používá LVM ve výchozím nastavení (stejně jako většina dnešních distribucí), proto /dev/sda2 je ukázáno. Máme zájem o naše dva nové fyzické svazky, které nyní můžeme ověřit.

Jak odebrat fyzický svazek

Chcete-li odstranit fyzický svazek, máme k dispozici pvremove příkaz. Neodstraňujte fyzický svazek, na kterém jsou zapsána data, která jsou potřeba.

# pvremove /dev/sdc 
  Labels on physical volume "/dev/sdc" successfully wiped.

Jak přiřadit fyzické svazky skupinám svazků

Vytvoření skupiny svazků z fyzických svazků.

Po opětovném vytvoření zahozeného sdc fyzického svazku, máme vše, co potřebujeme k vytvoření skupiny svazků, která pojme logický svazek. Mohli bychom vytvořit „skupinu“ svazků, která má pouze jeden fyzický svazek – což je přesný případ výchozího sda2 – ale abychom demonstrovali agregaci úložiště, použijeme oba naše nové fyzické svazky k vytvoření skupiny svazků nazvané „data“, která má k dispozici 4 GB místa na disku.

Skupinu svazků můžeme vytvořit pomocí vgcreate . Vše, co potřebujeme, je zadat název VG a fyzické svazky, které budou členy skupiny svazků.

# vgcreate data /dev/sdb /dev/sdc
  Volume group "data" successfully created

Vlastnosti naší nové skupiny svazků můžeme zobrazit pomocí vgdisplay .

# vgdisplay data
  --- Volume group ---
  VG Name               data
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               3.99 GiB
  PE Size               4.00 MiB
  Total PE              1022
  Alloc PE / Size       0 / 0   
  Free  PE / Size       1022 / 3.99 GiB
  VG UUID               CmM07M-16Ys-PZx2-XGvo-N1j3-nINX-fnIFIA

Všimněte si velikosti VG téměř 4 GB, což je součet dvou fyzických svazků. Nebude to přesně součet objemů, protože určitý prostor je vyhrazen pro metadata.

Jak vytvořit a odstranit logické svazky

Na vrcholu skupiny svazků můžeme vytvořit logické svazky, které zase mohou obsahovat souborové systémy. Výchozí instalace na mnoha distribucích je takto oddělené úložiště, například data uživatele jsou uložena na /home logický svazek a systémové protokoly jsou uloženy na /var hlasitost. V případě, že uživatel zaplní domovský svazek, bude celý systém stále moci zapisovat protokoly, a jeho služby tedy budou nadále běžet, zatímco správce systému může zvládnout uživatele, který se zbláznil.

Jak vytvořit logický svazek

Vytvoříme dva logické svazky, první s názvem „databáze“ o velikosti 2 GB, druhý s názvem „webový server“ s 500 MB místa na disku. Jak jste mohli odhadnout z výše uvedených příkladů, použijeme příkaz lvcreate .

# lvcreate -L 2G -n database data
  Logical volume "database" created.
# lvcreate -L 500M -n webserver data
  Logical volume "webserver" created.

Vlastnosti našich svazků můžeme zobrazit pomocí lvdisplay <volume path> , nebo můžeme uvést všechny naše logické svazky, pokud neuvedeme argument pro lvdisplay . I když to může na některých systémech poskytovat dlouhý výstup, je to užitečné v neznámém prostředí, protože cesty svazků se mohou lišit v závislosti na distribuci a verzi.

# lvdisplay /dev/data/database 
  --- Logical volume ---
  LV Path                /dev/data/database
  LV Name                database
  VG Name                data
  LV UUID                D7f9An-G0dd-kEGw-OGrP-HZlA-dQlX-yBbQbi
  LV Write Access        read/write
  LV Creation host, time rhel8rhcsa, 2019-12-28 16:53:24 +0100
  LV Status              available
  # open                 0
  LV Size                2.00 GiB
  Current LE             512
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2
   
# lvdisplay /dev/data/webserver 
  --- Logical volume ---
  LV Path                /dev/data/webserver
  LV Name                webserver
  VG Name                data
  LV UUID                7Ldt79-aw0i-Oydm-4d0I-JaVe-Zd8m-xKpvrD
  LV Write Access        read/write
  LV Creation host, time rhel8rhcsa, 2019-12-28 16:53:38 +0100
  LV Status              available
  # open                 0
  LV Size                500.00 MiB
  Current LE             125
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:3

Pokud v tomto okamžiku zkontrolujeme naši skupinu svazků, můžeme si všimnout prostoru, který logické svazky využívají ze skupiny svazků.

# vgdisplay data
  --- Volume group ---
  VG Name               data
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               3.99 GiB
  PE Size               4.00 MiB
  Total PE              1022
  Alloc PE / Size       637 / <2.49 GiB
  Free  PE / Size       385 / 1.50 GiB
  VG UUID               CmM07M-16Ys-PZx2-XGvo-N1j3-nINX-fnIFIA

Jak vytvořit logický svazek v systému RHEL Linux

Jak odstranit logický svazek

Chcete-li uvolnit místo nebo reorganizovat svazky, můžeme logické svazky zrušit pomocí lvremove .

UPOZORNĚNÍ
Neodstraňujte logické svazky, které obsahují cenná data. Pokud tak učiníte, zničíte data na svazku.

Jsou tam zabudované bezpečnostní pásy, pryč jsou doby, kdy utírání našeho systému nemuselo čekat na výzvu. Alespoň při použití příkazů LVM.

# lvremove /dev/data/webserver 
Do you really want to remove active logical volume data/webserver? [y/n]: y
  Logical volume "webserver" successfully removed

Jiný výpis skupiny svazků ukazuje, že 500 MB webserver svazek je nyní přidán zpět do volné velikosti skupiny svazků:

# vgdisplay data
  --- Volume group ---
  VG Name               data
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  6
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               3.99 GiB
  PE Size               4.00 MiB
  Total PE              1022
  Alloc PE / Size       512 / 2.00 GiB
  Free  PE / Size       510 / 1.99 GiB
  VG UUID               CmM07M-16Ys-PZx2-XGvo-N1j3-nINX-fnIFIA

Cvičení

  1. Vytvořte dvě skupiny svazků a na obou vytvořte logické svazky se stejným názvem.
  2. Přidejte do své skupiny svazků další fyzický svazek a poté vytvořte logický svazek, který zabírá celou skupinu svazků. Nyní zkuste odebrat jeden z fyzických svazků.
  3. Zkuste vytvořit logický svazek, který má přesnou velikost skupiny svazků.
  4. Vytvořte na disku další fyzický svazek, přidejte jej do skupiny svazků, vypněte počítač a vyjměte disk. Co znamená vgdisplay řekněme na chybějícím disku?
  5. Znovu přidejte dříve odebraný disk. Je rozpoznán při příštím spuštění?

Linux
  1. Spravujte skupiny zabezpečení a pravidla

  2. Jak sloučit 2 skupiny svazků (VG) do jedné pomocí vgmerge v LVM

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

  1. Konfigurace LVM:Operace/nástroje fyzického svazku (PV).

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

  3. Jak najít fyzické svazky, které obsahují logický svazek v LVM

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

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

  3. Lum – Jak rozšířit oddíl o Lvm a obsažený fyzický svazek a logický svazek?