dRAID қолдауымен OpenZFS 2.1 шығарылымы

Опубликован релиз проекта OpenZFS 2.1, развивающего реализацию файловой системы ZFS для Linux и FreeBSD. Проект получил известность как «ZFS on Linux» и ранее ограничивался разработкой модуля для ядра Linux, но после переноса поддержки FreeBSD был признан основной реализацией OpenZFS и был избавлен от упоминания Linux в названии.

OpenZFS 3.10-дан 5.13-ке дейінгі Linux ядроларымен және 12.2-RELEASE бастап барлық FreeBSD тармақтарымен сыналған. Код тегін CDDL лицензиясы бойынша таратылады. OpenZFS қазірдің өзінде FreeBSD жүйесінде қолданылған және Debian, Ubuntu, Gentoo, Sabayon Linux және ALT Linux дистрибутивтеріне енгізілген. Жаңа нұсқасы бар пакеттер жақын арада Debian, Ubuntu, Fedora, RHEL/CentOS сияқты негізгі Linux дистрибутивтері үшін дайындалады.

OpenZFS файлдық жүйеге де, дыбыс реттеушісіне де қатысты ZFS құрамдастарын іске асыруды қамтамасыз етеді. Атап айтқанда, келесі құрамдас бөліктер енгізілген: SPA (Сақтау пулының бөлгіші), DMU (Деректерді басқару блогы), ZVOL (ZFS эмуляцияланған көлемі) және ZPL (ZFS POSIX деңгейі). Бұған қоса, жоба ZFS-ті Luster кластерінің файлдық жүйесі үшін сервер ретінде пайдалану мүмкіндігін береді. Жобаның жұмысы OpenSolaris жобасынан импортталған және Illumos қауымдастығының жақсартулары мен түзетулерімен кеңейтілген түпнұсқа ZFS кодына негізделген. Жоба АҚШ Энергетика министрлігімен келісім-шарт бойынша Ливермор ұлттық зертханасы қызметкерлерінің қатысуымен әзірленуде.

Код тегін CDDL лицензиясы бойынша таратылады, ол GPLv2-мен үйлеспейді, бұл OpenZFS-ті Linux ядросының негізгі тармағына біріктіруге мүмкіндік бермейді, өйткені GPLv2 және CDDL лицензиялары бойынша кодты араластыру мүмкін емес. Бұл лицензиялық сәйкессіздікті айналып өту үшін CDDL лицензиясы бойынша бүкіл өнімді ядродан бөлек жеткізілетін бөлек жүктелетін модуль ретінде тарату туралы шешім қабылданды. OpenZFS кодтық базасының тұрақтылығы Linux-қа арналған басқа FS-мен салыстырмалы түрде бағаланады.

Негізгі өзгерістер:

  • Добавлена поддержка технологии dRAID (Distributed Spare RAID), которая представляет собой вариант RAIDZ с интегрированной распределённой обработкой блоков для горячего восстановления (hot spare). dRAID унаследовал все преимущества RAIDZ, но позволил добиться значительного увеличения скорости перестроения хранилища (resilvering) и восстановления избыточности в массиве. Виртуальное хранилище dRAID формируется из нескольких внутренних групп RAIDZ, в каждой из которой присутствуют устройства для хранения данных и устройства для хранения блоков чётности. Указанные группы распределены по всем накопителям для оптимального использования доступной пропускной способности дисков. Вместо отдельного диска для горячего восстановления в dRAID применяется концепция логического распределения блоков для горячего восстановления по всем дискам в массиве.
    dRAID қолдауымен OpenZFS 2.1 шығарылымы
  • Реализовано свойство «compatibility» («zpool create -o compatibility=off|legacy|file[,file…] pool vdev»), позволяющее администратору выбрать набор возможностей, которые следует активировать в пуле, с целью создания переносимых пулов и поддержания совместимости пулов между разными версиями OpenZFS и разными платформами.
  • Предоставлена возможность сохранения статистики о работе пула в формате СУБД InfluxDB, оптимизированной для хранения, анализа и манипулирования данными в форме временного ряда (срезы значений параметров через заданные промежутки времени). Для экспорта в формат InfluxDB предложена команда «zpool influxdb».
  • Добавлена поддержка горячего добавления памяти и CPU.
  • Новые команды и опции:
    • «zpool create -u» — запрет автоматического монтирования.
    • «zpool history -i» — отражение в истории операций длительности выполнения каждой команды.
    • «zpool status» — добавлен вывод предупреждения о дисках с неоптимальным размером блока.
    • «zfs send —skip-missing|-s» — игнорирование отсутствующих снапшотов в процессе отправки потока для репликации.
    • «zfs rename -u» — переименование ФС без перемонтирования.
    • В arcstat добавлена поддержка статистики L2ARC и добавлены опции «-a» (all) и «-p» (parsable).
  • Оңтайландырулар:
    • Повышена производительность интерактивного ввода/вывода.
    • Ускорена работа prefetch для нагрузок, связанных с параллельным доступом к данным.
    • Улучшена масштабируемость за счёт снижения конфликта блокировок.
    • Сокращено время импорта пула.
    • Сокращена фрагментация ZIL-блоков.
    • Повышена производительность рекурсивных операций.
    • Улучшено управление памятью.
    • Ускорена загрузка модуля ядра.

Ақпарат көзі: opennet.ru

пікір қалдыру