ZFS 0.8.0 przybywa z implementacjami ZFS dla jądra Linuksa

zfs-linux

Po prawie dwóch latach rozwoju zaprezentowano wydanie ZFS na Linuksie 0.8.0, który jest implementacją systemu plików ZFS, zaprojektowaną jako moduł dla jądra Linux.

W ramach ZFS na Linuksie przygotowano implementację komponentów ZFS które są związane zarówno z działaniem systemu plików, jak i operacją menedżera woluminów. W szczególności są wdrażane następujące elementy: SPA (alokator puli pamięci), DMU (jednostka zarządzania danymi), ZVOL (wolumen emulowany ZFS) i ZPL (warstwa ZFS POSIX).

Ponadto, Projekt zapewnił możliwość wykorzystania ZFS jako zaplecza dla systemu plików klastra Luster.

Podstawa projektu oparta jest na oryginalnym kodzie ZFS zaimportowanym z projektu OpenSolaris i wzbogacona o ulepszenia i poprawki społeczności Illumos. Projekt powstaje przy współudziale pracowników Livermore National Laboratory na podstawie umowy z Departamentem Energii Stanów Zjednoczonych.

Kod jest rozpowszechniany na wolnej licencji CDDL, który jest niekompatybilny z GPLv2, który nie pozwala na integrację ZFS na Linuksie z głównym jądrem Linuksa, ponieważ kombinacja kodów na licencji GPLv2 i CDDL jest niedopuszczalna.

Aby uniknąć tej niezgodności licencyjnej, zdecydowano się na dystrybucję produktu w całości na licencji CDDL jako oddzielny ładowalny moduł, dostarczany oddzielnie od jądra. Szacuje się, że stabilność kodu ZFS w systemie Linux jest porównywalna z innymi systemami plików dla systemu Linux.

Moduł został przetestowany z jądrem Linuksa od 2.6.32 do 5.1. Gotowe pakiety instalacyjne zostaną wkrótce przygotowane dla głównych dystrybucji Linuksa, w tym Debian, Ubuntu, Fedora, RHEL / CentOS.

Główne wiadomości

W ramach zmian dodanych w tej wersji można znaleźć plik wbudowana obsługa szyfrowania danych przechowywanych na poziomie partycji i systemu plików. Domyślny algorytm szyfrowania to aes-256-ccm. Aby załadować klucze szyfrowania, proponuje się polecenie „zfs load-key”.

Również możliwość przesyłania zaszyfrowanych danych realizowana jest poprzez wykonanie poleceń „Zfs send” i „zfs get”.

Gdy podano opcję »-w«, dane już zaszyfrowane w grupie są przenoszone do innej grupy bez pośredniego deszyfrowania, co pozwala na użycie tego trybu do tworzenia kopii zapasowych niezaufanych systemów (w przypadku gdy odbiorca wyrazi zgodę, klucz, osoba atakująca nie będzie mogła uzyskać dostępu do danych).

również dodano obsługę równoległych operacji przypisywania bloków poprzez wykonanie oddzielnych procesów „alokatora” dla każdego zestawu metaslab.

W konwencjonalnych systemach występuje wzrost wydajności o 5-10%, ale w dużych (8,128 GB SSD, 24 rdzenie NUMA, 256 GB RAM) wzrost operacji alokacji bloków może sięgać 25%.

Kolejną nowością wartą podkreślenia jest możliwość tworzenia skryptów Lua do automatyzacji różnych zadań w ZFS. Skrypty są uruchamiane w specjalnych piaskownicach za pomocą polecenia „zpool program”.

Wraz z tym pojawiło się również wsparcie dla księgowości i kwot na poziomie projektu, uzupełniając kwoty wcześniej dostępne na poziomie użytkownika i grupy.

W istocie projekty są oddzielną przestrzenią obiektów powiązaną z oddzielnym identyfikatorem (ID projektu).

Wreszcie, inne zmiany, które wyróżniają się, to optymalizacja wydajności:

  • Polecenia scrub i resilver są przyspieszane dzięki rozdzieleniu na dwie fazy (oddzielna faza jest przypisana do skanowania metadanych i określenia lokalizacji bloków z danymi na dysku, co pozwala na dalszą weryfikację poprzez sekwencyjny odczyt danych).
  • Obsługa klas alokacji danych (klas alokacji), które pozwalają na umieszczanie w puli stosunkowo małych dysków SSD i używanie ich do przechowywania tylko niektórych typów często używanych bloków, takich jak metadane, dane DDT i małe bloki z plikami.
  • Wydajność poleceń administracyjnych, takich jak „zfs list” i „zfs get”, została poprawiona dzięki buforowaniu metadanych wymaganych do ich pracy.

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.