Отнеся близо две години и 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. Тази обвивка осигурява взаимно-еднозначно съответствие за функциите на API libzfs_core, но сигнатурите и типовете са по-естествени за Python-диалекта.
- Съвместимост с Python3. Утилитите «arcstat», «arcsummary» и «dbufstat» са обновени за съвместимост с Python3
- Прямой ввод/вывод. Добавена е поддръжка за използване на директно извеждане (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
