Proxmox – Testowanie migawek tworzonych jako łańcuchy wolumenów iSCSI

Jedną z nowych funkcji, które bardzo mnie ekscytowały, gdy przyglądałem się możliwościom Proxmox 9 VE Server, była możliwość tworzenia migawek na jednostkach LUN z grubym provisionowaniem z iSCSI i NFS. Myślę, że dla wielu administratorów VMware brak możliwości tworzenia migawek w poprzednich wersjach Proxmox sprawił, że tradycyjne technologie SAN stały się nie do przyjęcia. W zasadzie zmusiło to do korzystania z pamięci masowej Ceph i nie sądzę, aby administratorzy chcieli jednocześnie korzystać z niej wraz z Proxmox. Jednak Proxmox wprowadza teraz nową funkcję migawek jako łańcuchów woluminów w Proxmox VE 9. Zobaczmy, dlaczego jest to tak ważne i jak to skonfigurować.

Czym są migawki jako łańcuchy woluminów?

W starszych wersjach Proxmox, gdy wykonujesz migawkę maszyny wirtualnej lub kontenera, system przechowuje kopię stanu dysku wirtualnego maszyny wirtualnej w danym momencie. Sposób implementacji utworzonej migawki w dużej mierze zależy od zaplecza pamięci masowej. Pozwól, że podam kilka przykładów:

  • ZFS, LVM-Thin i Ceph RBD oferują natywną obsługę migawek.
  • Magazynowanie plików (takie jak NFS/CIFS) korzystało z nakładek QCOW2 do tworzenia migawek.
  • LUN-y iSCSI były historycznie skomplikowane, a migawki zazwyczaj wymagały złożonych funkcji na poziomie pamięci masowej lub po prostu nie były w ogóle obsługiwane, co dotyczyło głównie tego drugiego przypadku.

Dzięki funkcji migawek jako łańcuchów woluminów w Proxmox VE 9, Proxmox odchodzi od podejścia „jeden dysk na maszynę wirtualną” w przypadku migawek w określonych technologiach pamięci masowej zaplecza. Zamiast tego tworzy teraz łańcuch woluminów (pliki bazowe + pliki delta), aby reprezentować różne punkty w czasie. Jest to podobne do tego, do czego przyzwyczaiło nas środowisko VMware vSphere. Każda migawka to nowy wolumin delta powiązany z woluminem nadrzędnym. Jest to również podobne do sposobu, w jaki QCOW2 działa z plikami kopii zapasowych.

W przypadku iSCSI oznacza to, że Proxmox może zarządzać migawkami bez konieczności polegania wyłącznie na natywnych funkcjach migawek sieci SAN. Dzięki temu migawki są tworzone nawet na prostszych lub ogólnych obiektach docelowych iSCSI, co pokażę poniżej.

Dlaczego ma to znaczenie w przypadku pamięci masowej iSCSI?

Do tej pory, jeśli korzystałeś z iSCSI z Proxmox, migawki albo nie były obsługiwane, albo zależały od Twojej sieci SAN i jej funkcji migawek. To było w porządku w przypadku macierzy korporacyjnych z natywnymi migawkami LUN. Jednak dla tych z nas, którzy posiadają domowe laboratoria, nie jest to tak dobre rozwiązanie w przypadku budżetowych konfiguracji. Większość z nas korzysta z FreeNAS/TrueNAS, popularnych urządzeń NAS, takich jak Synology, lub czegoś innego do obsługi celów iSCSI.

Teraz dzięki podejściu Proxmox 9 opartemu na łańcuchu objętości:

  • Migawki są teraz niezależne od pamięci masowej – dopóki obiekt docelowy iSCSI obsługuje standardowe jednostki LUN, Proxmox może zarządzać własnymi łańcuchami migawek, co jest świetne.
  • Operacje klonowania stają się łatwiejsze – połączone klony można tworzyć z punktów migawek bez konieczności duplikowania całych woluminów.
  • Przyrostowe kopie zapasowe są wydajniejsze – Proxmox może odwoływać się tylko do zmienionych bloków między migawkami.
  • Testowanie i przywracanie są szybsze – przed testowaniem wykonaj szybką migawkę, a następnie przywróć zmiany w ciągu kilku sekund.

Teraz, gdy możliwości pamięci masowej Proxmox dojrzewają, myślę, że fala migracji zacznie się dla tych, którzy nie chcą pozostać przy VMware ze względu na Broadcom i brak spójności cenowej oraz inne decyzje, które podjęli.

Czy to nie jest „Podgląd technologii”?

Tak, i zdecydowanie warto o tym pamiętać. Zanim włączysz tę funkcję w środowisku produkcyjnym, funkcja Snapshots as Volume Chains dla iSCSI jest funkcją w fazie przedpremierowej. Oznacza to, że nie jest ona jeszcze obsługiwana w środowisku produkcyjnym. Z pewnością istnieje ryzyko problemów z wydajnością lub innych niedogodności z nią związanych. Kopie zapasowe i przywracanie danych prawdopodobnie nie obsługują jej jeszcze w pełni, a ta funkcja jest z pewnością rozwijana w miarę rozwoju. Może się więc zmienić w przyszłej wersji.

Mimo to, jest to funkcja, nad którą Proxmox prawdopodobnie będzie szybko pracował, a przetestowanie jej teraz może dać przewagę w jej używaniu, gdy zostanie w pełni przetestowana i prawdopodobnie udostępniona jako ogólnie dostępna, w kolejnych wersjach Proxmox.

Konfigurowanie pamięci masowej iSCSI w Proxmox 9

Przypomnijmy sobie, jak włączyć obiekt docelowy ISCSI w Proxmox 9. Proces jest taki sam, niezależnie od serwera iSCSI, niezależnie od tego, czy używasz FreeNAS, TrueNAS, Synology czy innego obiektu docelowego iSCSI.

Krok 1: Dodaj cel iSCSI.

  • W interfejsie internetowym Proxmox przejdź do Datacenter -> Storage.
  • Kliknij  Add -> iSCSI.
  • Wprowadź identyfikator pamięci masowej (Sotrage ID) (np. iscsi-target), adres portalu i nazwę docelową.
  • Save.

Poniżej dodałem obiekt docelowy iSCSI w Proxmox VE 9. Ustawiłem identyfikator i adres portalu. Obiekt docelowy to numer IQN z docelowego LUN iSCSI.

Dodawanie celu iscsi w proxmox ve 9

Następnie musimy dodać nasz LVM do iSCSI.

Krok 2: Dodaj grupę LVM na iSCSI.

Jeśli Twoja jednostka LUN iSCSI będzie używana do dysków maszyn wirtualnych, prawdopodobnie dodasz grupę LVM na szczycie obiektu docelowego iSCSI:

  • Przejdź do Datacenter > Storage > Add > LVM.
  • Wybierz urządzenie iSCSI.
  • Nadaj mu nazwę (np. lvm-iscsi-target).
  • Zanim klikniesz Add, zapoznaj się z następną sekcją.
Dodawanie grupy lvm do dysku iscsi lun

Włączanie migawek jako łańcuchów woluminów na maszynie iSCSI LVM

Magia dzieje się w konfiguracji pamięci masowej w polu wyboru Advanced powyżej.

Krok 3: Włącz ustawienie podglądu technicznego.

  • Kliknij pole wyboru Advanced w oknie dialogowym.
  • Zaznacz opcję „Enable Snapshots as Volume Chain„.
  • Zapisz zmiany.
Sprawdzanie zaawansowanych funkcji i włączanie migawek jako łańcuchów woluminów na proxmox 9 iscsi
Po zaznaczeniu pola wyboru kliknij przycisk Add

Po włączeniu tej opcji dowolny dysk maszyny wirtualnej przechowywany w tym zapleczu będzie mógł korzystać z metody migawki łańcucha woluminów.

Tworzenie i testowanie migawek na maszynie wirtualnej iSCSI LVM

Po włączeniu tej funkcji możesz teraz tworzyć migawki w taki sam sposób, jak w przypadku pamięci masowej opartej na systemie plików ZFS lub QCOW2.

Krok 4: Utwórz migawkę.

  • Wybierz maszynę wirtualną z dyskiem na LVM z obsługą iSCSI.
  • Przejdź do Snapshots i kliknij Take Snapshot.
  • Nazwij ją opisowo (np. pre-upgrade-target).
  • Save.

Poniżej robię migawkę.

Tworzenie nowej migawki na maszynie wirtualnej Proxmox VE 9 na dysku LUN ISCSi

Nadaj nazwę migawce i zaznacz, czy chcesz uwzględnić, czy wykluczyć pamięć.

Nadaj nazwę migawce, wybierz opcje pamięci i kliknij przycisk Wykonaj migawkę

Po zakończeniu migawka zostanie wyświetlona w menu migawek.

Migawka łańcucha woluminów została pomyślnie utworzona na dysku iscsi lvm lun

Krok 5: Sprawdź łańcuch woluminów.

Zobaczmy, jak można zweryfikować łańcuch migawek za pomocą wiersza poleceń.

  • W terminalu Proxmox możesz sprawdzić strukturę łańcucha woluminów za pomocą lvdisplay lub sprawdzając katalog magazynu. Powinieneś zobaczyć wolumin bazowy oraz wszelkie powiązane woluminy delta z migawkami.
  • Interfejs użytkownika Proxmox nadal wyświetla je jako normalne migawki (jak pokazano powyżej). Jednak w rzeczywistości struktura jest teraz łańcuchem połączonych woluminów.
Korzystanie z lvdisplay do przeglądania migawek jako łańcuchów woluminów

Krok 6: Test wycofywania zmian.

  • Wprowadź zmiany na maszynie wirtualnej (zainstaluj aktualizacje, edytuj konfiguracje).
  • Przywróć migawkę i sprawdź, czy stan dysku powrócił do oczekiwanego stanu.
Testowanie wycofywania migawek w migawkach łańcucha woluminów Proxmox 9 na serwerze iscsi

Przykłady zastosowań nowych migawek

Nie sądzę, żebyśmy musieli zbyt długo i intensywnie zastanawiać się nad potencjalnymi zastosowaniami tego rozwiązania. Wszyscy korzystamy z migawek od dwóch dekad w VMware i innych hiperwizorach, w tym Proxmox. To po prostu rozszerza zakres typów pamięci masowej, których Proxmox może używać do tworzenia migawek.

Jednak w ramach szybkiego przypomnienia, migawki świetnie nadają się do:

  • Środowiska testowe do szybkiego testowania różnych scenariuszy i przeprowadzania ćwiczeń w labie.
  • Bezpieczeństwo przed aktualizacją – zawsze wykonuję migawkę przed instalacją aktualizacji systemu operacyjnego lub aplikacji, dzięki czemu można natychmiast przywrócić wszystko do stanu sprzed awarii.
  • Powiązane klony – wykorzystują migawki do szybszego tworzenia maszyn wirtualnych z jednego obrazu bazowego, ponieważ są one używane na obrazie bazowym.
  • Technologie tworzenia kopii zapasowych – jestem pewien, że dostawcy kopii zapasowych i Proxmox Backup Server (PBS) wykorzystają tę nową funkcję migawek, aby ich kopie zapasowe były jeszcze bardziej wydajne, szybsze itp.

Wady i ograniczenia

Chociaż wszystko, o czym do tej pory mówiliśmy, jest pozytywne w kontekście tej technologii, istnieją pewne wady migawek ogólnie, a w szczególności nowych migawek jako łańcuchów woluminów w Proxmox.

Zwróć uwagę na kompromisy związane ze migawkami:

  • Długie łańcuchy mogą spowalniać operacje wejścia/wyjścia – im więcej migawek w łańcuchu, tym więcej warstw Proxmox musi przeszukiwać w poszukiwaniu odczytów.
  • Operacje scalania – usunięcie środkowej migawki może wymagać scalenia zmian na woluminie nadrzędnym lub podrzędnym, co może zająć mnóstwo czasu, w zależności od ich rozmiaru.
  • Strategia tworzenia kopii zapasowych – zawsze testuj kopie zapasowe/przywracanie PBS z połączonymi migawkami, aby uniknąć niespodzianek.

Sporym minusem, przynajmniej w obecnym działaniu, jest to, że pozwalają one na wycofanie tylko do najnowszej migawki w ciągu woluminów. Na przykład, jeśli masz 3 migawki, możesz wycofać się tylko do numeru 3 w ciągu, a nie do numeru 1.

Jeśli spróbujesz pominąć ostatnią migawkę, do której chcesz powrócić, zostanie wyświetlony następujący błąd:

Nie można przywrócić migawki, która nie jest najnowszą wersją

Miejmy nadzieję, że Proxmox naprawi to ograniczenie w przyszłej wersji.

Podsumowanie

Pomimo ograniczeń związanych z funkcją migawek jako łańcuchów woluminów dla maszyn wirtualnych na jednostkach LUN iSCSI w Proxmox, jest to duży krok naprzód dla Proxmox VE 9, ponieważ umożliwi użytkownikom tworzenie migawek w tradycyjnych technologiach pamięci masowej. Umożliwi to niezależne od dostawcy podejście do tworzenia migawek, bez konieczności polegania na konkretnych technologiach sprzętowych pamięci masowej.

Jeśli korzystasz z domowego laboratorium lub klastra produkcyjnego opartego na iSCSI, zdecydowanie warto to przetestować, zwłaszcza jeśli zależy Ci na elastyczności tworzenia migawek bez konieczności polegania na migawkach sprzętowych. Daj mi znać w komentarzach, czy czekałeś na to w Proxmox od jakiegoś czasu. Chętnie dowiem się, jak i gdzie ją wdrożysz.


Dziękuję Ci, za poświęcony czas na przeczytanie tego artykułu. Jeśli był on dla Ciebie przydatny, to gorąco zachęcam Cię do zapisania się na mój newsletter, jeżeli jeszcze Cię tam nie ma. Proszę Cię także o “polubienie” mojego bloga na Facebooku oraz kanału na YouTube – pomoże mi to dotrzeć do nowych odbiorców. Raz w tygodniu (niedziela punkt 17.00) otrzymasz powiadomienia o nowych artykułach / projektach zanim staną się publiczne. Możesz również pozostawić całkowicie anonimowy pomysł na wpis/nagranie.

Link do formularza tutaj: https://beitadmin.pl/pomysly

Pozostaw również komentarz lub napisz do mnie wiadomość odpisuję na każdą, jeżeli Masz jakieś pytania:).

Dodaj komentarz

beitadmin.pl - Droga Administratora IT