Минаха около две години и 5 RC издания, за да издадат разработчиците на ZFS on Linux (съкратено ZoL) изключително значимо издание — ZFS-0.8.0.
Нови възможности:
- „Нативно“ криптиране както за файловите системи, така и за дяловете. По подразбиране се използва алгоритъм aes-256-ccm. Ключовете за датасета се управляват с помощта на командата „zfs load-key“ и свързаните подкоманди.
- Криптиране при zfs send/receive. Позволява съхранение на резервни копия в недоверени услуги без възможност за компрометиране.
- Премахване на устройство от пула чрез командата „zpool remove“. Всички данни се копират във фонов режим на останалите устройства от най-горно ниво и капацитетът на пула съответно намалява.
- Подкомандата „zpool checkpoint“ позволява запазване на цялото състояние на пула и при желание да се върнете обратно в това точно състояние. Може да се възприеме като разширен snapshot на пула. Полезно е при извършване на сложни административни действия, които в противен случай са необратими (напр. активиране на нова функция, унищожаване на набор от данни и др.)
- TRIM за устройства в пула. Позволява по-ефективно използване на твърдотелни дискове и предотвратява намаляване на тяхната производителност и/или времето на живот. Може да се извърши trim както с отделна команда „zpool trim“, така и да се включи аналог на опцията discard — новото свойство на пула „autotrim“.
- Инициализация на пула. Подкомандата „zpool initialize“ записва своя шаблон във всичкото неразпределено пространство. Това отстранява първоначалното намаляване на производителността на достъпа, което може да съществува в някои виртуализирани хранилища (напр. VMware VMDK).
- Поддръжка на отчитането на проекти и квоти. Тази функция добавя отчет на използването на проект и квоти към съществуващите функции на отчетност за пространство и квоти. Квотите на проекта добавят допълнително измерение към традиционните квоти за потребители/групи. Подкомандите „zfs project“ и „zfs projectspace“ бяха добавени за управление на проектите, задаване на лимити на квоти и отчети за използване.
- Програмни канали. Подкомандата „zpool program“ позволява използването на скриптове на LUA за изпълнение на административни действия. Скриптовете се изпълняват в „пясъчник“ с ограничения на времето и паметта.
- Pyzfs. Нова python-библиотека за осигуряване на стабилен интерфейс за програмно администриране на ZFS. Тази обвивка осигурява взаимно-еднозначно (one-to-one) съответствие за функциите на API libzfs_core, но сигнатурите и типовете са по-естествени за Python-диалекта.
- Съвместимост с Python3. Утилитите «arcstat», «arcsummary» и «dbufstat» са обновени за съвместимост с Python3
- Direct IO. Добавена е поддръжка за използване на директен изход (O_DIRECT).
Също така са ускорени подкомандите scrub/resilver/list/get, добавена е възможност за извеждане на метаданни на отделно устройство (например, високопроизводителен SSD с малък обем), увеличена е производителността на ZIL чрез кеширане и оптимизация, добавена е поддръжка за хардуерно ускорение на SHA256-чексуми и AES-шифроване с помощта на Intel QAT (Quick Assist Technology).
Поддържани ядра на Linux: 2.6.32 — 5.1 (на ядра 5.0 и по-високи все още не се поддържа SIMD-ускорение)
Цялостен списък на промените
Стойностите на параметрите на модулите по подразбиране са избрани, за да осигурят оптимално натоварване за повечето работни натоварвания и конфигурации. За пълен списък с опции — man 5 zfs-module-parameters
Източник: linux.org.ru
