發布支援 dRAID 的 OpenZFS 2.1

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

OpenZFS 已在 Linux 核心 3.10 到 5.13 以及從 12.2-RELEASE 開始的所有 FreeBSD 分支上進行了測試。 該代碼是根據免費的 CDDL 許可證分發的。 OpenZFS 已在 FreeBSD 中使用,並包含在 Debian、Ubuntu、Gentoo、Sabayon Linux 和 ALT Linux 發行版中。 新版本的軟體包很快就會為主要的 Linux 發行版準備,包括 Debian、Ubuntu、Fedora、RHEL/CentOS。

OpenZFS 提供與檔案系統和磁碟區管理器相關的 ZFS 元件的實作。 特別是,實作了以下元件:SPA(儲存池分配器)、DMU(資料管理單元)、ZVOL(ZFS 類比磁碟區)和 ZPL(ZFS POSIX 層)。 此外,該專案還提供了使用 ZFS 作為 Lustre 叢集檔案系統後端的能力。 該專案的工作基於原始 ZFS 程式碼,從 OpenSolaris 專案導入,並透過 Illumos 社群的改進和修復進行了擴展。 該項目是在利弗莫爾國家實驗室員工的參與下根據與美國能源部簽訂的合約開發的。

該程式碼是在免費的 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

添加評論