LVM (Logical Volume Manager) - podsystem systemu operacyjnego Linux, umożliwiając korzystanie z różnych obszarów fizycznego dysku twardego lub różnych dysków twardych jako jednego woluminu logicznego. LVM jest wbudowany w jądro Linuksa i jest implementowany na podstawie mapera urządzeń.
Główne zalety LVM to wysoki poziom abstrakcji z dysków fizycznych, elastyczność i skalowalność. Możesz zmieniać rozmiar woluminu logicznego w locie, dodawać (i usuwać) nowe dyski. Woluminy LVM obsługują trwałe tworzenie migawek i rozkładanie (stratyfikacja danych między wieloma dyskami w celu zwiększenia wydajności).
W tym artykule rozważymy użycie partycji LVM na przykładzie Linux CentOS 8, pokażemy proces łączenia dwóch dysków w jedną grupę LVM, zobaczymy, jak tworzyć grupy, woluminy, montować, rozszerzać i zmniejszać rozmiar partycji LVM.
Treść
- Instalowanie narzędzia lvm2
- Tworzenie partycji LVM
- LVM: tworzenie systemu plików, podłączanie woluminu logicznego
- Zwiększ wolumin logiczny LVM
- Zmniejszenie objętości LVM
- Usuwanie grup i woluminów LVM
- Utwórz dublowane woluminy LVM
Przede wszystkim musisz zrozumieć poziomy abstrakcji dysku LVM.
- Objętość fizyczna (PV) - poziom fizyczny. Dyski fizyczne są inicjowane do użycia w LVM.
- Grupa woluminów (VG) - poziom grupy woluminów. Zainicjowane dyski są łączone w logiczne grupy o nazwie.
- Wolumin logiczny (LV) - tworzy wolumin logiczny w grupie woluminów, która obsługuje system plików i dane.
Instalowanie narzędzia lvm2
Na początek LVM, trzeba zainstalować narzędzie lvm2. Uruchom następujące polecenia:
apt-get install lvm2
- dla Ubuntu, Mint, Debian
mniam zainstaluj lvm2
- dla Centos, Red-Hat, Fedora
W różnych wersjach systemu Linux różni się tylko sposób instalacji narzędzia lvm2 (instalacja przez yum / dnf lub apt-get), dalsze polecenia do pracy z LVM, są takie same.
Tworzenie partycji LVM
Mamy więc maszynę wirtualną KVM, do której podłączone są dwa dodatkowe dyski. Sprawdź, czy są dostępne w systemie za pomocą polecenia:
fdisk -l
Jak widać, mam dwa dyski / dev / vdb
i / dev / vdc
.
Podczas konfiguracji LVM na serwerze wirtualnym lub fizycznym użyj etykietowania dysku.
Aby udostępnić dyski dla LVM, muszą być oznaczone (zainicjowane) przez narzędzie pvcreate:
pvcreate / dev / vdb / dev / vdc
Teraz, aby upewnić się, że można użyć tych dysków LVM, wprowadź polecenie pvdisplay:
Jak widać, oba dyski są wyświetlane. Przeanalizujemy informacje z danych wyjściowych polecenia:
- Nazwa PV - nazwa dysku lub partycji
- Nazwa VG - grupa woluminów, do której należy ten dysk (nie utworzyliśmy jeszcze grupy)
- Rozmiar PV - rozmiar lub rozmiar dysku
- Allocatable - dystrybucja według grup. W naszym przypadku nie było dystrybucji, dlatego NIE
- Rozmiar PE - rozmiar fragmentu fizycznego. Jeśli dysk nie zostanie dodany do żadnej grupy, wartość zawsze będzie wynosić 0
- Total PE - liczba fragmentów fizycznych
- Free PE - liczba wolnych fragmentów fizycznych
- Przydzielone fragmenty rozproszone PE
- PV UUID - identyfikator sekcji
Za pomocą polecenia pvscan możesz skanować płyty w poszukiwaniu PV.
Następnym krokiem jest utworzenie grupy woluminów. Użyj polecenia, aby utworzyć grupy woluminów. vgcreate. Aby scalić wcześniej oznaczone dyski, używamy polecenia:# vgcreate test / dev / vdb / dev / vdc
Pomyślnie utworzono „test” grupy woluminów
Aby sprawdzić wynik, wprowadź vgdisplay:
Jak widać dyski są pogrupowane test i Rozmiar Vg pokazuje całkowity rozmiar dysku.
Przeanalizujemy informacje z wykazu zespołu vgdisplay:
- Nazwa VG - grupa woluminów, do której należy ten dysk.
- Format - wersja podsystemu lvm, która jest używana do utworzenia grupy (w naszym przypadku wersja 2)
- Obszary metadanych - obszar metadanych
- VG Access - poziom dostępu do logicznej grupy woluminów
- Rozmiar VG - całkowity wolumen dysków w grupie
- Rozmiar PE - rozmiar fragmentu fizycznego
- Alloc PE / Size - rozproszone miejsce (liczba i objętość fragmentów)
- VG UUID - identyfikator grupy
Po utworzeniu wspólnej grupy dysków, możemy utworzyć wolumin logiczny w tej grupie. Podczas tworzenia woluminu użyj polecenia lvcreate.
Aby utworzyć wolumin logiczny o określonej wielkości i nazwie w grupie, użyj polecenia:
# lvcreate -L test 5G
Utworzono wolumin logiczny „lvol0”.
Jak widać na liście, w grupie test wolumin logiczny o nazwie lvol0 i rozmiar 5G.
Jeśli chcesz ustawić nazwę samodzielnie, użyj flagi -n:
# lvcreate -L 5G -n test1 test
Utworzono wolumin logiczny „test1”
Kilka przykładów tworzenia woluminów logicznych o różnych rozmiarach:
lvcreate -l 40% test VG
- 40% miejsca na dysku grupy test
lvcreate -l 100% DARMOWY test
- użyj całej wolnej przestrzeni dla grupy test
Aby wyświetlić informacje o woluminie logicznym, użyj lvdisplay:
Przeanalizujemy również listę tego polecenia:
- LV Path - ścieżka do urządzenia woluminu logicznego (na dysk lub partycję)
- Nazwa LV - nazwa woluminu logicznego
- Nazwa VG - nazwa grupy woluminów
- LV UUID - identyfikator woluminu logicznego
- LV Write Access - poziom dostępu do woluminu logicznego
- Host tworzenia LV, czas - informacje o hoście, data utworzenia woluminu logicznego
- Rozmiar LV - rozmiar dysku dostępny do użycia przez wolumin logiczny
- Aktualny LE - liczba logicznych fragmentów
LVM: tworzenie systemu plików, podłączanie woluminu logicznego
Aby utworzyć system plików na woluminie logicznym, użyj narzędzia mkfs:
Utwórz system plików ext4 na woluminie LVM:
mkfs.ext4 / dev / test / test1
System plików został utworzony bez błędów..
Teraz utwórz katalog testowy i podłącz wolumin logiczny do tego katalogu:
# mkdir / var / www / home
# mount / dev / test / test1 / var / www / home /
Jak widać, wszystko poszło bezbłędnie, a teraz katalog / var / www / home istnieje jako osobna sekcja.
Aby wolumin logiczny został zamontowany podczas rozruchu, musisz go dodać fstab i przypisz katalog do zamontowania.
Otwórz plik:nano / etc / fstab
I dodaj do niego następujące informacje:
Domyślnie / dev / test / test1 / var / www / home ext4 1 2
Następnie możesz zamontować wolumin mount -a:
# mount -a
# df -h
Używany system plików Dostępny Wykorzystanie% Zamontowany na devtmpfs 485M 0 485M 0% / dev tmpfs 496M 0 496M 0% / dev / shm tmpfs 496M 6,7M 489M 2% / run tmpfs 496M 0 496M 0% / sys / fs / cgroup / dev / vda2 20G 1.3G 19G 7% / / dev / vda1 488M 100M 353M 23% / boot tmpfs 100M 0 100M 0% / run / user / 0 / dev / mapper / test-test1 4,8G 20M 4,6G 1% / var / www / home
Aby sprawdzić ogólne informacje na temat dysków, partycji i woluminów, wprowadź polecenie lsblk:
Jak widać, nasz utworzony wolumin jest wyświetlany, a katalog, do którego jest podłączony, jest wskazany.
Zespół lvmdiskscan
pozwala skanować dostępne dyski, pokazuje ich rozmiar i przynależność do LVM.
Zwiększ wolumin logiczny LVM
Aby dodać dodatkowy dysk do grupy woluminów, musisz użyć znanego schematu:
pvcreate / dev / nashdisk
- inicjalizacja dysku dla lvm
vgextend test / dev / nashdisk
- dodawanie dysku do grupy woluminów
Aby rozwinąć wolumin logiczny, użyj następującego diagramu:
lvextend -L10G / dev / test / test1
W ten sposób powiększysz partycję do 10 GB.
Kilka innych przykładów rozszerzenia sekcji LVM:
lvextend -L + 10G / dev / test / test1
- dodaj 10 GB do woluminu
lvextend -l + 100% ZA DARMO / dev / test / test1
- zaznacz całe nieprzydzielone miejsce w grupie test
Pozostaje zwiększyć partycję systemu plików:
resize2fs / dev / test / test1
- dla ext4
xfs_growfs / dev / test / test1
- dla XFS
Zmniejszenie objętości LVM
LVM pozwalają zmniejszyć rozmiar woluminu. Ale dla bezpieczeństwa, zmniejszając rozmiar partycji, musisz ją wyłączyć.
Odmontuj wolumin z katalogu:
umount / var / www / home /
Uruchom sprawdzanie dysku:
e2fsck -fy / dev / test / test1
Zmniejsz partycję systemu plików o 4 GB:
# resize2fs / dev / test / test1 4G
resize2fs 1.42.9 (28 grudnia 2013) Zmiana rozmiaru systemu plików w blokach / dev / test / test1 do 1048576 (4k). System plików w / dev / test / test1 ma teraz 1048576 bloków.
# lvreduce -L-4G / dev / test / test1
OSTRZEŻENIE: Zmniejszenie aktywnego woluminu logicznego do 6,00 GiB. TO MOŻE ZNISZCZYĆ TWOJE DANE (system plików itp.) Czy naprawdę chcesz ograniczyć test / test1? [t / n]: y Rozmiar logicznego testu objętości / testu1 zmieniono z 10,00 GiB (2560 zakresów) do 6,00 GiB (1536 zakresów). Pomyślnie zmieniono rozmiar testu / testu logicznego objętości 1.
Teraz zmniejsz rozmiar samego woluminu LVM:
lvreduce -L-4G / dev / test / test1
Następnie musisz ponownie zainstalować wolumin i sprawdzić bieżący rozmiar:
Jak widać rozmiar zmniejszył się do 4 GB.
Usuwanie grup i woluminów LVM
Aby usunąć woluminy LVM, użyj polecenia lvremove:
lvremove / dev / test / test1
Aby usunąć logiczną grupę woluminów, użyj:
# test vgremove
Pomyślnie usunięto „test” grupy woluminów
Usuń tagi z LVM dyski:
# pvremove / dev / vdb / dev / vdc
Pomyślnie wyczyszczono etykiety woluminu fizycznego „/ dev / vdb”. Pomyślnie wyczyszczono etykiety woluminu fizycznego „/ dev / vdc”.
Utwórz dublowane woluminy LVM
LVM umożliwia tworzenie kopii lustrzanych woluminów w celu zwiększenia odporności przechowywania danych. W kopii lustrzanej LVM dane są jednocześnie przechowywane na dwóch (lub więcej) dyskach fizycznych (podobnych do RAID-1). Procedura tworzenia dublowanego woluminu w LVM.
- Inicjalizacja dysku:
pvcreate / dev / sd b, c
- Utwórz grupę LVM:
vgcreate mirror1 / dev / sd b, c
- Utwórz dublowany wolumin LVM:
lvcreate -L 5g -m1 -n lvMirr1 VGmirror1
Narzędzia LVM Są bardzo wygodne w pracy, za ich pomocą możesz łatwo zarządzać objętościami, przycinać je do potrzebnych rozmiarów i łatwo używać, aby dopasować do swoich potrzeb. W tym artykule starałem się poruszyć wszystkie główne punkty pracy LVM.