ZFS vs LVM-thin vs Ceph – którą pamięć wybrać i czego żałują ci, co wybrali źle
Ze wszystkich decyzji przy budowie środowiska Proxmox wybór storage jest najtrudniejszy do cofnięcia. Zmiana typu pamięci po fakcie oznacza zwykle migrację wszystkich maszyn i okno serwisowe. Dlatego warto wybrać dobrze za pierwszym razem – a „dobrze" nie znaczy „najbardziej zaawansowane", tylko „pasujące do skali i wymagań". Najwięcej żalu widzimy właśnie tam, gdzie ktoś wziął rozwiązanie klasy datacenter do środowiska, które go nie potrzebowało – albo odwrotnie.
Poniżej trzy najczęstsze wybory, do czego pasują, i konkretne błędy, których żałują ci, co wybrali pochopnie.
LVM-thin – prosty i szybki, lokalny
Co to jest: thin provisioning na wolumenie LVM, lokalnie na hoście. Obsługuje snapshoty i „nadprowizję" (przydzielasz więcej, niż fizycznie masz).
Mocne strony: prostota, dobra wydajność, niski narzut, brak wymagań co do RAM. Wchodzi „od ręki" na pojedynczym serwerze.
Ograniczenia: brak sum kontrolnych i samonaprawiania (nie wykryje cichej korupcji), brak wbudowanej replikacji, storage lokalny – nie współdzielisz go między nodami. I pilnuj zajętości puli: przepełnienie puli thin potrafi unieruchomić wszystkie wolumeny w tej puli.
Dla kogo: pojedynczy host, proste środowiska, tam gdzie liczy się nieskomplikowana, wydajna pamięć bez ambicji HA.
ZFS – integralność danych i tania replikacja
Co to jest: system plików + menedżer wolumenów z sumami kontrolnymi, samonaprawianiem, kompresją i natywnymi, tanimi snapshotami. Lokalny, ale z możliwością asynchronicznej replikacji między nodami.
Mocne strony: integralność danych (wykrywa i naprawia bit rot), świetne snapshoty, kompresja „za darmo", a przez replikację ZFS – tania namiastka HA: maszyna może wznowić się na innym nodzie ze stanem sprzed ostatniej replikacji.
Ograniczenia: apetyt na RAM (cache ARC – planuj pamięć hojnie), wymaga bezpośredniego dostępu do dysków (nie kładź ZFS na sprzętowym kontrolerze RAID – to psuje jego założenia), a replikacja jest asynchroniczna – akceptujesz utratę danych z okna między replikacjami (np. kilku minut).
Dla kogo: pojedyncze hosty i małe klastry (2–3 nody), które chcą integralności danych i taniej wysokiej dostępności bez budowania Ceph.
Ceph – współdzielony, skalowalny, prawdziwe HA
Co to jest: rozproszony storage, w którym dane leżą jednocześnie na wielu nodach klastra. Brak pojedynczego punktu awarii, skaluje się poziomo, integruje się z Proxmox natywnie.
Mocne strony: współdzielona pamięć bez utraty danych – maszyna wznawia się na dowolnym nodzie z tego samego stanu (realne HA, bez okna utraty danych jak przy replikacji ZFS). Skalowalność: dokładasz nody i dyski, pojemność i wydajność rosną.
Ograniczenia: to rozwiązanie klasy datacenter i ma odpowiednie wymagania. Potrzebuje co najmniej 3 nodów, dedykowanej, szybkiej sieci (10/25 GbE+), odpowiedniej liczby dysków (OSD) i większej wiedzy operacyjnej. Na małej lub źle zaprojektowanej infrastrukturze potrafi rozczarować wydajnością.
Dla kogo: klastry 3+ nodów, które potrzebują prawdziwego HA i skalowalności – i mają budżet na właściwą sieć oraz dyski.
Czego żałują ci, co wybrali źle
Najczęstsze, kosztowne pomyłki – zebrane z realnych wdrożeń:
- Ceph na 3 nodach z siecią 1 GbE (albo współdzieloną z resztą ruchu). Ceph jest wrażliwy na sieć – na wolnym lub obciążonym łączu latencja rośnie, a wydajność spada poniżej oczekiwań. Efekt: „Ceph jest wolny", choć problemem jest infrastruktura pod nim.
- Za mało OSD / za mało nodów pod Ceph. Minimalny klaster stawiany „bo tak trzeba" bez zapasu wydajnościowego rozczarowuje pod obciążeniem. Ceph świeci przy skali, nie na styk.
- ZFS położony na sprzętowym kontrolerze RAID. ZFS chce widzieć dyski bezpośrednio (HBA/IT-mode). RAID sprzętowy odbiera mu kontrolę nad integralnością – tracisz to, po co w ogóle bierze się ZFS.
- Za mało RAM pod ZFS. ARC potrzebuje pamięci; „oszczędzenie" na RAM kończy się słabą wydajnością cache.
- LVM-thin z nadzieją na HA. LVM-thin jest lokalny – maszyna z takiego storage nie wstanie na innym nodzie. Jeśli liczysz na wysoką dostępność, to zła podstawa (patrz też: co się dzieje, gdy nod padnie).
- Przepełniona pula thin (LVM-thin/ZFS bez monitoringu). Brak pilnowania zajętości potrafi zablokować wolumeny. To operacyjny obowiązek, nie „ustaw i zapomnij".
- Pojedynczy host, prostota i wydajność → LVM-thin (albo ZFS, jeśli zależy Ci na integralności danych).
- 1 host, priorytet: integralność danych i snapshoty → ZFS.
- 2–3 nody, chcesz taniego HA bez Ceph → ZFS + replikacja (akceptujesz małe okno utraty danych).
- 3+ nody, prawdziwe HA bez utraty danych i skala → Ceph (z dedykowaną siecią 10/25 GbE i zapasem OSD).
- Mały klaster, wolna sieć, ograniczony budżet → NIE Ceph – wybierz ZFS z replikacją.
Jak wybrać – szybki drogowskaz
Zrobić samemu czy zlecić?
Postawić dowolny z tych storage potrafi zdolny admin. Trudniejsza – i najdroższa w skutkach – jest trafna decyzja pod konkretną skalę, budżet i wymóg dostępności, plus poprawny projekt sieci (zwłaszcza pod Ceph) i storage. Ponieważ zmiana po fakcie oznacza migrację całego środowiska, to jeden z tych wyborów, przy których warto zapytać kogoś, kto widział, jak każda z tych opcji zachowuje się na produkcji. Projektujemy architekturę Proxmox po polsku – od doboru storage, przez sieć, po wdrożenie i testy.
FAQ
Czy Ceph zawsze jest lepszy od ZFS?
Nie. Ceph wygrywa przy skali i prawdziwym HA na 3+ nodach z szybką siecią. Na małym klastrze z wolną siecią ZFS z replikacją bywa szybszy, prostszy i tańszy w utrzymaniu.
Czy mogę używać ZFS na kontrolerze RAID?
Nie powinieneś. ZFS wymaga bezpośredniego dostępu do dysków (HBA/IT-mode), żeby zapewnić integralność i samonaprawianie. Sprzętowy RAID pod ZFS to antywzorzec.
Ile RAM potrzebuje ZFS?
Więcej, niż się wydaje – cache ARC lubi pamięć. Planuj RAM z zapasem, zwłaszcza przy większych pulach i deduplikacji (której zwykle lepiej unikać, jeśli nie masz pod nią pamięci).
Jaka sieć jest potrzebna pod Ceph?
Dedykowana i szybka – realnie 10 GbE wzwyż (25 GbE i więcej przy większych klastrach), najlepiej oddzielona od pozostałego ruchu. Sieć jest najczęstszą przyczyną rozczarowań wydajnością Ceph.
Czy da się zmienić storage później?
Da się, ale oznacza to migrację maszyn i okno serwisowe – dlatego to decyzja, którą warto podjąć dobrze na starcie.
Podsumowanie
LVM-thin – prosto i lokalnie. ZFS – integralność danych i tania replikacja dla małych klastrów. Ceph – prawdziwe HA i skala, ale pod warunkiem właściwej sieci, dysków i liczby nodów. Najwięcej żalu rodzi Ceph postawiony na styk oraz LVM-thin traktowany jak podstawa HA. Wybierz pod skalę i wymagania, nie pod „brzmienie".
Planujesz nowe środowisko albo zastanawiasz się, czy Twój storage pasuje do potrzeb? Umów konsultację architektoniczną, policz subskrypcje w kalkulatorze, albo napisz na proxmox@polsoft.pl / zadzwoń 32 209 80 39 (pon.–pt. 8:00–16:00).
Potrzebujesz pomocy z Proxmox?
Skontaktuj się z nami - pomożemy Ci we wdrożeniu, migracji i utrzymaniu infrastruktury Proxmox.
Skontaktuj się