Krótki:
Myślę, że nie ma konwersji na miejscu ext4 na ZFS.
Dla serwerów multimedialnych polecam SnapRAID zamiast
Dłużej:
ZFS używa bardzo unikalnej i bardzo specjalnej struktury wewnętrznej, która nie pasuje dobrze do struktury ext4. (Przeczytaj: Być może ktoś mógłby stworzyć jakąś sztuczną strukturę ZFS na wierzchu niektórych ext4, ale wątpię, aby ta konwersja była szybka, niezawodna i łatwa w użyciu).
SnapRAID nie potrzebuje jednak konwersji. Po prostu użyj go z (prawie) dowolnym istniejącym systemem plików, aby utworzyć nadmiarowość dla plików tam, aby można było sprawdzić i odzyskać pliki w przypadku awarii dysku lub (cichej) awarii.
Za I przeciw:
SnapRAID jest nieefektywny, jeśli musi tworzyć nadmiarowość dla wielu małych plików,
ponieważ każdy plik tworzy pewien nadmiar (wypełnienie) w parzystości.
SnapRAID nie oferuje samej kompresji.
Na serwerze multimedialnym zazwyczaj nie potrzebujesz kompresji, ponieważ zwykle jest to nośnik
już skompresowane (MP4, JPG, PDF).
Jeśli zdarzy ci się użyć jakiegoś systemu plików, który umożliwia kompresję, możesz go użyć.
Ale tylko na poziomie urządzenia, a nie na całej puli (jak ZFS).
SnapRAID nie oferuje deduplikacji na poziomie bloku.
Na serwerze multimedialnym snapraid dup
funkcja zwykle wystarcza,
ponieważ pliki multimedialne zwykle nie udostępniają wielu duplikatów bloków.
(Wyjątek: youtube-dl
. Jeśli pobierzesz film dwa razy z tą samą jakością,
różni się tylko kilkoma bajtami. Nie zawsze. Ale dość często.
Po prostu zachowaj identyfikator wideo YouTube w nazwie pliku, aby zidentyfikować dwa podobne pliki.)
Deduplikacja ZFS wymaga dużo pamięci. Zaplanuj 1 GiB RAM na dane 1 TiB, lepiej więcej!
Jeśli nie ma wystarczającej ilości pamięci RAM, musisz dodać hiperszybkie urządzenie pamięci podręcznej SSD.
ZFS musi wyszukać 1 losowy sektor na napisany blok deduplikacji, więc z „tylko”
40 kIOP / s na dysku SSD, ograniczasz efektywną prędkość zapisu do około 100 MB / s.
(Zwykle ZFS jest w stanie wykorzystać równoległą przepustowość wszystkich urządzeń,
dzięki czemu można łatwo osiągnąć 1 GB / s i większą prędkość zapisu na sprzęcie konsumenckim
dni, ale nie w przypadku włączenia deduplikacji i braku ogromnej ilości pamięci RAM.)
Zauważ, że nigdy nie miałem problemów z tym, aby SnapRAID był potrzebny do odzyskiwania danych.
Nie mogę więc przysiąc, że SnapRAID naprawdę potrafi odzyskać dane.
Jednak miałem już dość problemów, gdy SnapRAID był pomocny w zapewnieniu
że dane były poprawne i odniosłem wrażenie, że SnapRAID naprawdę działa.
Na ZFS musisz planować z wyprzedzeniem. Musisz znać i planować każdy aspekt
cały cykl życia dysku ZFS z wyprzedzeniem, przed rozpoczęciem ZFS.
Jeśli możesz to zrobić, nie ma lepszego rozwiązania niż ZFS, zaufaj mi!
Ale jeśli zapomnisz o czymś, co w przyszłości stanie się nieplanowane,
jesteś skazany. Następnie musisz ponownie uruchomić komputer od ZFS:
Utwórz nową, świeżą i niezależną pulę ZFS i przenieś tam wszystkie dane.
ZFS wspiera Cię w tym. Ale nie można uniknąć kopiowania danych
tymczasowo. Jak potrzebujesz podczas wprowadzania ZFS.
Administrowanie ZFS jest proste. Jedyne, co musisz robić regularnie, to:
zpool scrub
To wszystko. Następnie zpool status
mówi, jak rozwiązać problem.
(Ponad 10 lat ZFS teraz. W Linuksie. Mówiąc krótko: ZFS to ratownik.)
OTOH na SnapRAID, nie potrzebujesz żadnego planowania. Po prostu to zrób.
I zmieniaj swoją strukturę, gdy tylko zajdzie taka potrzeba.
Więc nie musisz kopiować swoich danych, aby zacząć od SnapRAID.
Po prostu dodaj napęd parzystości, skonfiguruj i tutaj.
Ale SnapRAID jest o wiele trudniejszy do zarządzania w przypadku kłopotów.
Musisz nauczyć się korzystać snapraid sync
, snapraid scrub
, snapraid check
i snapraid fix
. snapraid status
jest pomocą w większości przypadków, ale często pozostajesz zagadkowy,
jaki może być właściwy sposób naprawienia czegoś, ponieważ nie ma oczywistego
jeden najlepszy sposób (SnapRAID jest jak szwajcarski nóż wojskowy, ale musisz wiedzieć
siebie, jak prawidłowo prawidłowo go obsługiwać).
Zauważ, że w systemie Linux masz dwie różne opcje ZFS:
- ZFSonLinux, który jest rozszerzeniem jądra.
Nowsze jądra, które zobaczysz na Ubuntu 20.04 prawdopodobnie będą niekompatybilne.
- ZFS-FUSE, który zazwyczaj jest nieco wolniejszy, jest niezależny od jądra.
- Obie mają zalety i wady, to jest poza zakresem tej odpowiedzi.
- Jeśli ZFS nie jest dostępny (być może chcesz coś naprawić),
wszystkie twoje dane są niedostępne.
- Jeśli urządzenie zawodzi, w zależności od zastosowanej nadmiarowości,
albo wszystkie dane są w pełni dostępne, albo wszystkie dane są całkowicie utracone.
SnapRAID to GPLv3 i całkowicie dodatek do przestrzeni użytkownika.
- Jeśli SnapRAID nie jest dostępny, wszystkie Twoje dane są nadal nienaruszone i dostępne.
- Jeśli urządzenie nie działa, wszystkie dane na innych urządzeniach są nadal nienaruszone i dostępne.
Zasadniczo serwer multimediów ma właściwość przechowywania starych danych i stale rośnie. Właśnie tak zaprojektowano SnapRAID.
Snapraid pozwala później dodawać nowe dyski lub nawet nowe parytety.
Możesz mieszać różne systemy plików na wszystkich dyskach.
SnapRAID po prostu dodaje nadmiarowość.
SnapRAID nie jest przeznaczony do tworzenia kopii zapasowych.
W archiwach Media często nie potrzebujesz kopii zapasowej.
ZFS RAIDZ również nie jest przeznaczony do tworzenia kopii zapasowych.
jednak zfs send
w połączeniu z zfs snapshot
oferuje niektóre
bardzo łatwa w użyciu funkcja tworzenia kopii zapasowych i przywracania w trybie 24/7.
ZFS jest przeznaczony dla systemów plików, w których kluczowe jest, aby nigdy nie miały
przestój. Prawie wszystko można naprawić w locie bez przestojów.
Przestoje występują tylko w przypadku, gdy nie ma już nadmiarowości / samonaprawiania ZFS
zdolny naprawić uszkodzenia. Ale nawet wtedy ZFS jest więcej niż pomocny,
i wyświetla listę wszystkich utraconych danych. Zazwyczaj.
OTOH SnapRAID może odzyskiwać dane, ale odbywa się to w trybie offline.
Tak więc do odzyskania dane nie są dostępne.
Pomocne jest również sprawdzenie, które dane zostały utracone. Ale to jest trudniejsze,
niż z ZFS.
Rekomendacja najlepszych praktyk ze SnapRAID (ZFS wykracza poza tę odpowiedź):
- Zostań z LVM!
- Spraw, aby każdy napęd był pełnym PV. Brak tablicy partycji.
Jeśli chcesz zaszyfrować dysk, umieść PV w kontenerze LUKS.
- Umieść każdy taki PV w swoim własnym VG.
W ten sposób uszkodzony dysk nie szkodzi innym VG.
Możesz agregować kilka mniejszych dysków w podobny rozmiar
- Stwórz kilka podobnych LV na wszystkich tych VG.
- Utwórz kilka dysków Parity, które są większe niż dyski z danymi.
- Pozostaw wystarczającą ilość miejsca (100 GB) na VG do tworzenia migawek
i małe korekty systemów plików.
- Na końcu każdego PV powinno być wolne miejsce (zobacz wystarczająco dużo miejsca powyżej).
Dotyczy to nowoczesnych systemów plików, które na koniec tworzą superbloki.
Jeśli całkowicie wypełnisz PV, te FS (ZFS) mogą wykryć cały dysk
lub PV zamiast LV.
- Stwórz wybrany FS dla swoich napędów danych w tych LV.
- Użyj ZFS dla napędów parzystości w LV. Nie ma tu potrzeby kompresji / deduplikacji.
Zauważ, że nie jest to idealne rozwiązanie, ponieważ ZFS zwykle tworzy swój FS /
.
Jak skonfigurować i administrować SnapRAID wykracza poza zakres tej odpowiedzi.
Dlaczego ZFS na parzystość:
Cóż, gdy napęd danych się psuje (sektory nieczytelne), można skopiować czytelne pliki. Nieczytelne pliki są łatwo odnajdywane. Następnie możesz go odzyskać.
Jednak parzystość SnapRAID to tylko jeden duży plik. Jeśli skopiujesz ten plik, chcesz
aby mieć pewność, nie ma cichego zepsucia. ZFS zapewnia to niezależnie od
SnapRAID. W przypadku korupcji ZFS mówi ci, że wiesz
musisz sprawdzić plik parzystości.
Sprawdzanie kompletnego pliku w przypadku niektórych wadliwych sektorów trwa całe wieki, ponieważ wszystkie dane ze wszystkich dysków muszą być w pełni odczytane.
Dlaczego nie BTRFS?
- ZFS działa całkowicie stabilnie, cicho i bez zarzutu już od wielu lat.
- OTOH to rok 2019, a BTRFS wciąż ma pociągi poważnych problemów.
- Na przykład BTRFS reaguje nieprzewidywalnie i niestabilnie, jeśli wypełnisz go całkowicie,
jeśli możesz go całkowicie wypełnić. W przeciwieństwie do tego, takie problemy nie są znane w ZFS.
- Prawdopodobnie czasami osiągasz pełną parytet, jeśli nie jesteś ostrożny
(SnapRAID jest trochę nieefektywny, jeśli musi umieścić wiele małych plików w parzystości).