Udostępnij przez


Konfigurowanie maszyny wirtualnej LVM na maszynie wirtualnej z systemem Linux na platformie Azure

W tym dokumencie omówiono sposób konfigurowania menedżera woluminów logicznych (LVM) na maszynie wirtualnej platformy Azure. LVM może być używane na dysku systemu operacyjnego lub dyskach danych na maszynach wirtualnych Azure, jednak domyślnie większość obrazów w chmurze nie będzie miała skonfigurowanego LVM na dysku systemu operacyjnego. Poniższe kroki skoncentrują się na konfigurowaniu LVM dla dysków danych.

Woluminy logiczne liniowe a paskowane

LVM może służyć do łączenia wielu dysków fizycznych w jeden wolumin pamięci masowej. Domyślnie LVM zwykle tworzy liniowe woluminy logiczne, co oznacza, że pamięć fizyczna jest połączona ze sobą. W takim przypadku operacje odczytu/zapisu są zwykle wysyłane tylko na jeden dysk. W przeciwieństwie do tego możemy również utworzyć woluminy logiczne z podziałem na pasma, w których odczyty i zapisy są rozłożone na wiele dysków zawartych w grupie woluminów (podobnie jak RAID0). Ze względu na wydajność prawdopodobnie zechcesz rozebrać woluminy logiczne, tak aby odczyty i zapisy wykorzystywały wszystkie dołączone dyski danych.

W tym dokumencie opisano sposób łączenia kilku dysków danych w jedną grupę woluminów oraz tworzenia paskowanego woluminu logicznego. Poniższe kroki są uogólnione, aby pracować z większością dystrybucji. W większości przypadków narzędzia i przepływy pracy do zarządzania lvm na platformie Azure nie różnią się zasadniczo od innych środowisk. Jak zwykle, zapoznaj się również z dostawcą systemu Linux, aby uzyskać dokumentację i najlepsze rozwiązania dotyczące korzystania z LVM z określoną dystrybucją.

Dołączanie dysków danych

Zwykle należy zacząć od dwóch lub więcej pustych dysków danych podczas korzystania z LVM. W zależności od potrzeb dotyczących we/wy, możesz dołączyć dyski przechowywane w naszym magazynie Standard Storage z maksymalnie 500 operacjami we/wy na sekundę na dysk lub w naszym magazynie Premium Storage z maksymalnie 5000 operacjami we/wy na sekundę na dysk. Ten artykuł nie zawiera szczegółowych informacji na temat aprowizacji i dołączania dysków danych do maszyny wirtualnej z systemem Linux. Aby zapoznać się ze szczegółowymi instrukcjami dotyczącymi dołączania pustego dysku danych do maszyny wirtualnej z systemem Linux na platformie Azure, przeczytaj artykuł Microsoft Azure #c0 dołączanie dysku#c1.

Instalowanie narzędzi LVM

  • Ubuntu

    sudo apt-get update
    sudo apt-get install lvm2
    
  • RHEL, CentOS i Oracle Linux

    sudo yum install lvm2
    
  • SLES 12 i openSUSE

    sudo zypper install lvm2
    
  • SLES 11

    sudo zypper install lvm2
    

    W systemie SLES11 należy również edytować /etc/sysconfig/lvm i ustawić LVM_ACTIVATED_ON_DISCOVERED na "enable":

    LVM_ACTIVATED_ON_DISCOVERED="enable" 
    

Konfigurowanie oprogramowania LVM

W tym przewodniku zakładamy, że dołączono trzy dyski danych, które nazwiemy /dev/sdc, /dev/sdd i /dev/sde. Te ścieżki mogą nie być zgodne z nazwami ścieżek dysku na maszynie wirtualnej. Możesz uruchomić polecenie "sudo fdisk -l" lub podobne, aby wyświetlić listę dostępnych dysków.

  1. Przygotowywanie woluminów fizycznych:

    sudo pvcreate /dev/sd[cde]
    Physical volume "/dev/sdc" successfully created
    Physical volume "/dev/sdd" successfully created
    Physical volume "/dev/sde" successfully created
    
  2. Utwórz grupę woluminów. W tym przykładzie wywołujemy grupę data-vg01woluminów :

    sudo vgcreate data-vg01 /dev/sd[cde]
    Volume group "data-vg01" successfully created
    
  3. Utwórz woluminy logiczne. Poniższe polecenie utworzymy pojedynczy wolumin logiczny o nazwie data-lv01 , aby obejmował całą grupę woluminów, ale należy pamiętać, że istnieje również możliwość utworzenia wielu woluminów logicznych w grupie woluminów.

    sudo lvcreate --extents 100%FREE --stripes 3 --name data-lv01 data-vg01
    Logical volume "data-lv01" created.
    
  4. Sformatuj wolumin logiczny

    sudo mkfs -t ext4 /dev/data-vg01/data-lv01
    

    Uwaga

    Przy SLES11 użyj -t ext3 zamiast ext4. System SLES11 obsługuje tylko dostęp tylko do odczytu do systemów plików ext4.

Dodaj nowy system plików do /etc/fstab

Ważne

Nieprawidłowe edytowanie pliku /etc/fstab może uniemożliwić rozruch systemu. Jeśli nie masz pewności, jak to zrobić, sprawdź informacje na temat prawidłowego edytowania tego pliku w dokumentacji dystrybucji. Zaleca się również utworzenie kopii zapasowej /etc/fstab pliku przed edycją.

  1. Utwórz żądany punkt instalacji dla nowego systemu plików, na przykład:

    sudo mkdir /data
    
  2. Zlokalizuj ścieżkę woluminu logicznego

    lvdisplay
    --- Logical volume ---
    LV Path                /dev/data-vg01/data-lv01
    ....
    
  3. Otwórz /etc/fstab w edytorze tekstów i dodaj wpis dla nowego systemu plików, na przykład:

    /dev/data-vg01/data-lv01  /data  ext4  defaults  0  2
    

    Następnie zapisz i zamknij plik /etc/fstab.

  4. Sprawdź, czy /etc/fstab wpis jest poprawny:

    sudo mount -a
    

    Jeśli to polecenie spowoduje wyświetlenie komunikatu o błędzie, sprawdź składnię /etc/fstab w pliku.

    Następnie uruchom polecenie mount, aby upewnić się, że system plików jest zamontowany.

    mount
    ......
    /dev/mapper/data--vg01-data--lv01 on /data type ext4 (rw)
    
  5. (Opcjonalnie) Parametry rozruchu awaryjnego w programie /etc/fstab

    Wiele dystrybucji obejmuje parametry montowania nobootwait lub nofail, które mogą zostać dodane do pliku /etc/fstab. Te parametry umożliwiają niepowodzenia podczas montowania określonego systemu plików i pozwalają systemowi Linux kontynuować rozruch, nawet jeśli nie jest w stanie prawidłowo zamontować systemu plików RAID. Aby uzyskać więcej informacji na temat tych parametrów, zapoznaj się z dokumentacją dystrybucji.

    Przykład (Ubuntu):

    /dev/data-vg01/data-lv01  /data  ext4  defaults,nobootwait  0  2
    

Obsługa funkcji TRIM/UNMAP

Niektóre jądra systemu Linux obsługują operacje TRIM/UNMAP w celu odrzucenia nieużywanych bloków na dysku. Te operacje są szczególnie przydatne w magazynie standardowym, aby poinformować platformę Azure, że usunięte strony nie są już prawidłowe i można je odrzucić. Odrzucanie stron może obniżyć koszt, jeśli tworzysz duże pliki, a następnie je usuwasz.

Istnieją dwa sposoby, aby włączyć obsługę TRIM na maszynie wirtualnej z systemem Linux. Jak zwykle, skonsultuj się ze swoją dystrybucją, aby uzyskać zalecany sposób postępowania.

  • Użyj opcji montowania w discard na przykład:

    /dev/data-vg01/data-lv01  /data  ext4  defaults,discard  0  2
    
  • W niektórych przypadkach opcja discard może mieć wpływ na wydajność. Alternatywnie możesz uruchomić fstrim polecenie ręcznie z poziomu wiersza polecenia lub dodać je do narzędzia crontab w celu regularnego uruchamiania:

    Ubuntu

    # sudo apt-get install util-linux
    # sudo fstrim /datadrive
    

    RHEL, CentOS i Oracle Linux

    # sudo yum install util-linux
    # sudo fstrim /datadrive