Состояние развития ZFSonLinux и готовность проекта к повсеместному применению Печать
11.09.14 18:55

Опубликован обзор текущего состояния разработки проекта ZFSonLinux, в рамках которого развивается реализации файловой системы ZFS, оформленная в виде модуля для ядра Linux. Формально вышедшая в марте прошлого года версия 0.6.1 была объявлена первым стабильным выпуском ZFSonLinux, тем не менее разработчики получают много вопросов о том, готов ли проект для промышленного применения. Ричард Яо (Richard Yao), занимающий второе место среди разработчиков по числу внесённых изменений, подробно обосновал, почему он считает ZFSonLinux полностью стабильным и полнофункциональным продуктом, готовым для повсеместного применения.

Текущий уровень стабильности ZFSonLinux на 64-разрядных системах оценивается как соизмеримый с другими файловыми системами для Linux, а функциональность близка к возможностям других реализаций ZFS, что делает ZFSonLinux полноценным конкурентом таким ФС, как ext4, XFS, JFS и Btrfs.

ZFSonLinux предоставляет надёжную гарантию обеспечения целостности данных и значительно превосходит по средствам сохранения целостности другие ФС для постоянно подключенных накопителей. Например, для защиты от сбоев во время записи и внезапных аппаратных проблем при применении изменений используется двухуровневая система транзакций, гарантирующая нахождение данных в согласованном виде. Для отслеживания повреждений на этапе чтения применяется контроль целостности с использованием 256-разрядных контрольных сумм.

Стабильность кодовой базы ZFSonLinux оценивается как сопоставимая с другими ФС для Linux, что достигается тщательным рецензированием кода, проведением статического анализа и тестирования. Достижению паритета в функциональности с реализациями ZFS для FreeBSD и Illumos способствует проект OpenZFS, в рамках которого разработчики различных реализаций ZFS объединили усилия по развитию ZFS, обмена разработками и обеспечению переносимости. В настоящее время отмечается 18 возможностей ZFS из Illumos, которые пока не перенесены в ZFSonLinux.

Из недоработок упоминаются: необходимость ручного контроля синхронности пользовательского инструментария и кода на стороне ядра, проблемы с размещением в zvol раздела подкачки, проблемы со стабильностью на 32-разрядных системах, недостаточно полная интеграция с загрузчиками, отсутствие средств для автоматизации антивирусной проверки новых данных через ClamAV, отсутствие поддержки iSCSI и Zerocopy NFS через RDMA (Remote Direct Memory Access). В ближайшем выпуске 0.6.4 ожидается поддержка AIO, сжатия метаданных с использованием алгоритма LZ4, расширяемых наборов данных, закладок (ZFS bookmark), встраивания содержимого мелких файлов в dnodes, задания ограничений для снапшотов.

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

Готовые установочные пакеты подготовлены для основных дистрибутивов Linux, включая Debian, Ubuntu, Fedora, RHEL/CentOS. Кроме того, модуль ZFSonLinux уже входит в состав дистрибутивов Gentoo, Sabayon Linux и AltLinux. Код распространяется под свободной лицензией CDDL, которая несовместима с GPLv2, что не позволяет добиться интеграции ZFSonLinux в состав основной ветки ядра Linux, так как смешивание кода под лицензиями GPLv2 и CDDL недопустимо. Для обхода данной лицензионной несовместимости было решено распространять продукт целиком под лицензией CDDL в виде отдельно загружаемого модуля, который поставляется отдельно от ядра.

  1. Главная ссылка к новости (https://clusterhq.com/blog/state-zfs-on-...)
  2. OpenNews: Новый выпуск ZFSonLinux 0.6.3, реализации ZFS для ядра Linux
  3. OpenNews: Первый стабильный выпуск ZFSonLinux, реализации ZFS для ядра Linux
  4. OpenNews: Представлен проект OpenZFS, направленный на унификацию развития файловой системы ZFS
Тип: К сведению
Ключевые слова: zfsonlinux, zfs, (найти похожие документы)
При перепечатке указание ссылки на opennet.ru обязательно
Реклама
id=adv>
  1.2, Templar3d, 23:16, 11/09/2014 [ответить] [смотреть все]     [к модератору] –5 +/
Увы, но будущее за Btrfs Поскольку что не позволяет добиться интеграции ... весь текст скрыт [показать]
 
  2.8, Аноним, 23:33, 11/09/2014 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  –7 +/
Это нормальных людей не волнует А учитывая какой крап btrfs, как раз таки будущ... весь текст скрыт [показать] [показать ветку]
 
  3.12, Nixman, 00:02, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  +3 +/
бтэр рулит и педалит не требуя огромных ресурсов памяти и проца ... весь текст скрыт [показать]
 
  4.36, Аноним, 08:18, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
А также имеет потенциал для более шустрой работы Экстенты - изначально есть, пр... весь текст скрыт [показать]
 
  5.45, iZEN, 09:24, 12/09/2014 [^] [ответить] [смотреть все]    [к модератору]  +/
Я слышал, что в некоторых случаях Btrfs требует процедуры ребалансинга. Ну, когда для виртуального тома места не хватает в полупустом пуле... Это так?
 
  6.49, ананим, 09:40, 12/09/2014 [^] [ответить] [смотреть все]    [к модератору]  +/
Нет.
Потому что там нет таких понятий как "виртуальный том" и "полупустой пул".
 
6.52, Andrey Mitrofanov, 09:46, 12/09/2014 [^] [ответить] [смотреть все]    [к модератору]  
+/
> Я слышал, что в некоторых случаях Btrfs требует процедуры ребалансинга. Ну, когда
> для виртуального тома места не хватает в полупустом пуле... Это так?

Да, так же, как на твоей ZFS "в некоторых случаях" требуется $скока-скока-? гигабайт для _установки.

 
3.18, Joseph B., 01:25, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  –3 +/
Будущее за exFat - ... весь текст скрыт [показать]
 
  4.30, Аноним, 07:45, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  +2 +/
Боинги в пролете - их зарулят цессны, по любому ... весь текст скрыт [показать]
 
3.25, rshadow, 06:04, 12/09/2014 [^] [ответить] [смотреть все]    [к модератору]  +/ zfs под линь пока что такой же крап
image  3.31, Аноним, 07:54, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  +1 +/
А как насчет 1 Полноценных экстентов, а не обрубков 2 Что там с управлением п... весь текст скрыт [показать]
 2.24, Аноним, 03:56, 12/09/2014 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  –1 +/ 
  3.34, Аноним, 08:10, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
Что достаточно логично для CoW с автоснапшотами, в котором свободное место - пон... весь текст скрыт [показать]
 
  4.54, Нанобот, 09:59, 12/09/2014 [^] [ответить] [смотреть все]    [к модератору]  +1 +/
нехилая такая фича. обычный юзер не может просто так взять и узнать, поместится у него фильм на диске или нет. я б на месте юзера закопал бы такую систему вместе со всеми её такими небагами
 
3.35, admin, 08:17, 12/09/2014 [^] [ответить] [смотреть все]    [к модератору]  +/ Здравствуйте админ локалхоста. btrfs filesystem df /
 
  4.37, Аноним, 08:20, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
Он наверное про то что показывает обычный df и соотв сисколы Ну ээ поним... весь текст скрыт [показать]
 
1.7, Аноним, 23:33, 11/09/2014 [ответить] [смотреть все]     [к модератору]  +1 +/
если вы сидели даже не на ехт4, то какого гуя ломанулись вообще непонятно на ч... весь текст скрыт [показать]
  1.11, Nixman, 00:00, 12/09/2014 [ответить] [смотреть все]     [к модератору]  –4 +/
Бугога, врать то меньше надо, товарисч китайоза все мы знаем что zfs - тормозно... весь текст скрыт [показать]
 
  2.16, YetAnotherOnanym, 00:29, 12/09/2014 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  +3 +/
 
  3.19, pavlinux, 01:35, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
Рекурсия однако ... весь текст скрыт [показать]
image
 
2.38, Аноним, 08:24, 12/09/2014 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  +/
Не скажу за ZFS, а btrfs под более-менее обычный юзеж на накопителях нормального... весь текст скрыт [показать] [показать ветку]
 2.50, Аноним, 09:45, 12/09/2014 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  +/ 
1.17, YetAnotherOnanym, 00:36, 12/09/2014 [ответить] [смотреть все]    [к модератору]  +/ Смотри, однако, какие эксперты набежали - такие в каментах на опеннете не то что какого-то там Ричарда Яо опустят, а даже об самого Теда Тсо ноги вытереть могут.
  1.20, pavlinux, 01:43, 12/09/2014 [ответить] [смотреть все]    [к модератору]  +/ > Код распространяется под свободной лицензией CDDL, которая несовместима с GPLv2 ...

Да ну нах..., придумают тоже - лицензии на исходники... они бы ещё воздух по литрам выдавали.

[code]
diff -ur a/module/zfs/zfs_ioctl.c b/module/zfs/zfs_ioctl.c
--- a/module/zfs/zfs_ioctl.c    2014-06-13 00:58:09.000000000 +0400
+++ b/module/zfs/zfs_ioctl.c    2014-09-12 01:42:09.504964575 +0400
@@ -5893,6 +5893,6 @@

MODULE_DESCRIPTION("ZFS");
MODULE_AUTHOR(ZFS_META_AUTHOR);
-MODULE_LICENSE(ZFS_META_LICENSE);
+MODULE_LICENSE(GPL v2);
MODULE_VERSION(ZFS_META_VERSION "-" ZFS_META_RELEASE);
#endif /* HAVE_SPL */
[/code]

image  
  2.28, anonymous, 07:17, 12/09/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +1 +/
Столлману только не показывай. А то засудят.
 
  3.39, Аноним, 08:26, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
Не Столлману а Ораклу При том у оракла юристов больше чем блох на собаке, поэто... весь текст скрыт [показать]
 
1.21, electronik, 02:21, 12/09/2014 [ответить] [смотреть все]     [к модератору]  –3 +/
zfs наше всё, на лине она нафиг не нужна, фанаты торвальдса всё равно не оценят ... весь текст скрыт [показать]
 
  2.32, Аноним, 08:02, 12/09/2014 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  +/
 
  3.40, Аноним, 08:29, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
Да бздюкам не привыкать жpaть третий сорт который вроде бы не брак и при этом пе... весь текст скрыт [показать]
 
  4.58, Аноним, 10:13, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
может быть это просто по тому что уроды из линукса не хотят думать о портируемос... весь текст скрыт [показать]
 
1.22, anonymus, 02:25, 12/09/2014 [ответить] [смотреть все]    [к модератору]  +/ > отсутствие средств для автоматизации антивирусной проверки новых данных через ClamAV

Вы уверены, что этой фигне место в коде файловой системы? ФС должна обеспечивать системные функции, а антивирусная проверка - это уже задача прикладных приложений

 
  2.26, Андрей, 06:50, 12/09/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +/
Если говорить за вирусы, то тут бы я с вами не согласился. Кто, кроме ФС, точно знает, изменялся файл или нет...
 
  3.29, anonymus, 07:27, 12/09/2014 [^] [ответить] [смотреть все]    [к модератору]  +/
Любая прикладная программа знает - есть mtime, ctime и т.д. Для гурманов есть inotify.
 
  4.46, Totktonada, 09:35, 12/09/2014 [^] [ответить] [смотреть все]    [к модератору]  +1 +/
Постфактум — да. А задачу проверки всех данных *до* записи в ФС вряд ли можно адекватно решить без участия, собственно, ФС.
 
1.23, Аноним, 03:31, 12/09/2014 [ответить] [смотреть все]     [к модератору]  –1 +/
А почему была выбрана CDDL Или они не с 0 писали ... весь текст скрыт [показать]
  1.42, PavelR, 08:51, 12/09/2014 [ответить] [смотреть все]    [к модератору]  +/ Если бы каждый, рассуждающий в этой теме о лицензии кода, написал по строке качественного кода - получилась бы новая ФС.
 
    3.55, Пингвино, 10:02, 12/09/2014 [^] [ответить] [смотреть все]    [к модератору]  +/
Эх, дурилка, нельзя таких пускать программировать
 
3.61, Аноним, 10:53, 12/09/2014 [^] [ответить] [смотреть все]     [к модератору]  +/ 
1.43, Аноним, 09:13, 12/09/2014 [ответить] [смотреть все]     [к модератору]  +/
Чтож этот разработчик курит-то ... весь текст скрыт [показать]
 
  2.51, Elhana, 09:45, 12/09/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +/
Оно уже есть в мастер ветке: https://github.com/zfsonlinux/zfs/commit/cd3939c5f06945a3883a362379d0c12e57f31a4d
Китаец же написал что будет в следующем релизе.
image
 
1.44, iZEN, 09:22, 12/09/2014 [ответить] [смотреть все]    [к модератору]  +/ А вот скажите, на ПК RAIDZ лучше делать из трёх HDD или из четырёх? Со всех точек зрения, что выгоднее? (На материнской плате всего 6 разъёмов SATA)
Состояние развития ZFSonLinux и готовность проекта к повсеместному применению  
  2.56, Аноним, 10:04, 12/09/2014 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  +/
 
2.59, ДяДя, 10:18, 12/09/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +/ Для чего ? IOPS нужны или стоимость гигабайта ?

Mirror - в два раза меньше места, чем RAIDZ, но производительность в несколько раз выше.
Чтение происходит параллельно сразу со всех дисков зеркала.
Я даже Stripe использую на часто изменяемых некритичных данных.
Если важна производительность, то можно на SSD вынести кэш для чтения. Если есть надёжный SSD, то можно на него вынести кэш для записи (если он откажет, то все данные будут потеряны).

Популярная статья: https://blogs.oracle.com/roch/entry/when_to_and_not_to

Рекомендуют.

RAIDZ1 vdevs should have 3, 5, or 9 drives in each vdev
RAIDZ2 vdevs should have 4, 6, or 10 drives in each vdev
RAIDZ3 vdevs should have 5, 7, or 11 drives in each vdev

 2.60, Sarmat, 10:23, 12/09/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +/ В плане надёжности лучше из 5-ти делать 5+, хотя можно 3 диска в зеркало собрать но объём будет как от одного диска
 

Ваш комментарий  

Read more http://www.opennet.ru/opennews/art.shtml?num=40566