Релиз OpenZFS 2.2, реализации ZFS для Linux и FreeBSD

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 3258
Зарегистрирован: 20.08.2022

#

Релиз OpenZFS 2.2, реализации ZFS для Linux и FreeBSD
Дата публикации:Fri, 13 Oct 2023 23:23:13 +0300




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



Работа OpenZFS проверена с ядрами Linux c 3.10 по 6.5 и всеми ветками FreeBSD, начиная с 12.2-RELEASE. Код распространяется под свободной лицензией CDDL. OpenZFS уже используется во FreeBSD и входит в состав дистрибутивов Debian, Ubuntu, Gentoo, Sabayon Linux и ALT Linux. Пакеты с новой версией в ближайшее время будут подготовлены для основных дистрибутивов Linux, включая Debian, Ubuntu, Fedora, RHEL/CentOS.





OpenZFS предоставляет реализацию компонентов ZFS, связанных как с работой файловой системы, так и с функционированием менеджера томов. В частности, реализованы компоненты: SPA (Storage Pool Allocator), DMU (Data Management Unit), ZVOL (ZFS Emulated Volume) и ZPL (ZFS POSIX Layer). Дополнительно проектом обеспечена возможность использования ZFS в качестве бэкенда для кластерной файловой системы Lustre. Наработки проекта основаны на оригинальном коде ZFS, импортированном из проекта OpenSolaris и расширенном улучшениями и исправлениями от сообщества Illumos. Проект развивается при участии сотрудников Ливерморской национальной лаборатории по контракту с Министерством энергетики США.



Код распространяется под свободной лицензией CDDL, которая несовместима с GPLv2, что не позволяет добиться интеграции OpenZFS в состав основной ветки ядра Linux, так как смешивание кода под лицензиями GPLv2 и CDDL недопустимо. Для обхода данной лицензионной несовместимости было решено распространять продукт целиком под лицензией CDDL в виде отдельно загружаемого модуля, который поставляется отдельно от ядра. Стабильность кодовой базы OpenZFS оценивается как сопоставимая с другими ФС для Linux.



Основные изменения:
  • Добавлен механизм клонирования блоков, позволяющий создать копию файла или его части без дублирования данных, используя во второй копии ссылки на уже существующие блоки данных исходного файла без их фактического копирования. В случае внесения изменений в исходный файл или его копии, выполняется копирование блоков и внесение изменений в созданные копии (режим copy-on-write на уровне файлов). На базе механизма клонирования реализована операция reflink, которая может использоваться для автоматического создания клонов в различных утилитах копирования, например, в новых версиях /bin/cp в Linux.
    Добавлена поддержка технологий, применяемых для контейнерной изоляции в Linux, таких как системный вызов renameat, ФС overlayfs, маппинг идентификаторов пользователей при монтировании и делегирование пространств имён для контейнеров.


    Реализован лог ошибок, выявленных при выполнении операций проверки контрольных сумм (scrub). При выполнении команды "zpool status" выводятся сведения о всех ФС, снапшотах и клонах, которые затрагивает повреждённый блок. Для попытки быстрого восстановления известных повреждённых блоков можно использовать команду "zpool scrub -e".
    Добавлена возможность использования для контрольных сумм криптографической хеш-функции BLAKE3, примечательной очень высокой производительностью вычисления хеша (в три раза быстрее Edon-R и значительно быстрее sha256 и sha512) при обеспечении надёжности на уровне SHA-3.

    Реализована операция "zfs receive -c", которую можно использовать для восстановления повреждённых данных (не метаданных) в ФС, снапшотах и клонах, в случаях, когда имеется реплицированная резервная копия, ранее сохранённая командой "zfs send".

    Добавлена поддержка программного выставления и чтения свойств для отдельных виртуальных дисков vdev.
    Добавлена возможность привязки к vdev и zpool произвольных пользовательских свойств, по аналогии с пользовательскими свойствами для zfs dataset.

    Улучшена реализация адаптивного кэша ARC (Adaptive Replacement Cache), повышающего производительность операций чтения. ARC теперь лучше адаптируется к высоким нагрузкам и минимизирует необходимость ручной оптимизации настроек.

    Добавлена поддержка механизмов аппаратного ускорения вычисления контрольных сумм SHA2.
    Переписана и оптимизирована реализация контрольных сумм Edon-R.
    При использовании для сжатия данных алгоритма zstd ускорено определение ситуаций, в которых сжатие бессмысленно (данные не поддаются сжатию).
    Внесены улучшения в механизм упреждающей загрузки (Prefetch), ускоряющие работу при интенсивном вводе/выводе.

    Внесена порция общих оптимизаций, повышающих производительность.


Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=59930

Жизнь за Нер'зула!

Ответить