LINUX.ORG.RU
ФорумAdmin

Zfs on linux vs all

 , , , ,


0

6

Призываю в тему истинных админов zfs, для кого важность хранения данных не пустой звук. Хотелось бы услышать от вас адекватные плюсы и минусы zol’а, а так же реальные случаи проблем или лучших практик. Приветсвуется сравнение с подобными системами хранения данных таких как btrfs и тд. Производительность, надежность, удобство использования, мб какие то расширения и просто истории практики. Возможно после скольки то лет использования вы решили перейти на неё или с неё - это самое интересное, а именно причины, ибо когда перенос данных энтерпрайс типа весьма сложен, но вы всё равно решились на это, т.к увидели плюсы в смене на zfs/уход из zfs.

RAIDZ уровни, ARC, L2ARC на ssd, autotrim, кеш логов, сжатие, дедупликация и тд.

Сам юзаю последнюю версию 0.8.2 имею несколько пулов с сжатием логов, зеркалами, драйвером докера на zfs, mysql на zfs (это тоже интересно, т.к. куча статей за использование и категоричное против). Недавно пару уважаемых админов BSD выразили сомнение в zol, мол он совсем не такой что на BSD поэтому и создал эту тему.

Прошу адекватности в теме и без глупых ‘X лучше Y потому что X - говно я так сказал и всё’.


Хотелось бы услышать от вас адекватные плюсы и минусы zol’а

Тебе эссе написать в пяти актах? Доки почитай, там всё написано.

Приветсвуется сравнение с подобными системами хранения данных таких как btrfs

Никакой btrfs нет, её даже RH выкинул.

Производительность, надежность, удобство использования,

zol производительная, надёжная, удобная в использовании.

истории практики

С версии 0.6 использую zol на всяких разных серверах и даже некоторых десктопах.

RAIDZ уровни, ARC, L2ARC на ssd, autotrim, кеш логов, сжатие, дедупликация и тд.

Что конкретно не понятно в этих технологиях?

Недавно пару уважаемых админов BSD выразили сомнение в zol, мол он совсем не такой что на BSD поэтому и создал эту тему.

Кодовая база zfs в bsd теперь основана на zol.

King_Carlo ★★★★★ ()
Ответ на: комментарий от King_Carlo

Если нет желания писать на форуме, никто не заставляет) Можно в режиме чтения тут сидеть онли)

Дедупликация очень спорная штука, ибо она может отжирать несоизменимо много озу, даже с нынешними обьёмами серверов энтерпрайс типа, есть ли опыт использования его?

L2ARC - действительно ли спасает если на шустреньких ssd? Особенно интересно в комбинации с дедупликацией. Получу ли я реальное ускорение, а не на 0.1% с забитым кешем. Еще часто пишут что кеш на чтение убивает ссд и надо раз в год менять даже при хорошем ресурсе и парой терабайт данных.

RAIDZ если ставить против, скажем, mdadm - частые проблемы с хотспейр и пересборка рейда дальше так как он все блоки синхронизирует, а zfs только данные.

А про кодовую базу не знал, большое спасибо за это. Не слежу за bsd.

sky92 ()
Ответ на: комментарий от sky92

Дедупликация очень спорная штука, ибо она может отжирать несоизменимо много озу, даже с нынешними обьёмами серверов энтерпрайс типа, есть ли опыт использования его?

Нет опыта использования, считаю эту штуку бесполезной и даже вредной (начитался ужасов о применении на стораджах nexenta).

L2ARC - действительно ли спасает если на шустреньких ssd?

Да, очень взбадривает массив на hdd.

Еще часто пишут что кеш на чтение убивает ссд и надо раз в год менять даже при хорошем ресурсе и парой терабайт данных

Может быть на каких то специфических нагрузках. Ниже дешман-конфиг, работает больше года, с ресурсом ссд всё хорошо.


NAME STATE READ WRITE CKSUM
zpool-electro ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
ata-WDC_WD4002FYYZ-01B7CB1_K7J46H6T ONLINE 0 0 0
ata-WDC_WD4002FYYZ-01B7CB1_K7J46T6T ONLINE 0 0 0
cache
ata-Samsung_SSD_860_PRO_512GB_S419NF0K508833W ONLINE 0 0 0
ata-Samsung_SSD_860_PRO_512GB_S419NF0K910065Y ONLINE 0 0 0

RAIDZ если ставить против, скажем, mdadm - частые проблемы с хотспейр и пересборка рейда дальше так как он все блоки синхронизирует, а zfs только данные.

Ещё у zfs нет write hole и ксть контроль целостности данных.

King_Carlo ★★★★★ ()
  • «с подобными системами хранения данных таких как btrfs» - лiл. btrfs система хранения данных. ок.
  • удобство использования - на высоте. аналогов нет.
  • RAIDZ - mirror
  • L2ARC на ssd - да
  • кеш логов - лишний гемор, не лень?
  • сжатие - lz4
  • дедупликация - нахера?

мнения левых Ваусянов в различных статьях не интересуют.

пример с одного проксмокса:

  pool: drive
 state: ONLINE
  scan: scrub repaired 0B in 0 days 00:44:18 with 0 errors on Sun Dec  8 01:08:20 2019
config:

        NAME                                STATE     READ WRITE CKSUM
        drive                               ONLINE       0     0     0
          mirror-0                          ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:12:0  ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:18:0  ONLINE       0     0     0
          mirror-1                          ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:13:0  ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:19:0  ONLINE       0     0     0
          mirror-2                          ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:14:0  ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:20:0  ONLINE       0     0     0
          mirror-3                          ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:15:0  ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:21:0  ONLINE       0     0     0
          mirror-4                          ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:16:0  ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:22:0  ONLINE       0     0     0
          mirror-5                          ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:17:0  ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:23:0  ONLINE       0     0     0

errors: No known data errors

  pool: rpool
 state: ONLINE
  scan: scrub repaired 0B in 0 days 00:44:18 with 0 errors on Sun Dec  8 01:08:23 2019
config:

        NAME                                      STATE     READ WRITE CKSUM
        rpool                                     ONLINE       0     0     0
          mirror-0                                ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:0:0-part3   ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:6:0-part3   ONLINE       0     0     0
          mirror-1                                ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:1:0-part3   ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:7:0-part3   ONLINE       0     0     0
          mirror-2                                ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:2:0-part3   ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:8:0-part3   ONLINE       0     0     0
          mirror-3                                ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:3:0-part3   ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:9:0-part3   ONLINE       0     0     0
          mirror-4                                ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:4:0-part3   ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:10:0-part3  ONLINE       0     0     0
          mirror-5                                ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:5:0-part3   ONLINE       0     0     0
            pci-0000:03:00.0-scsi-0:2:11:0-part3  ONLINE       0     0     0
        cache
          sdy                                     ONLINE       0     0     0

errors: No known data errors

system-root ★★★★ ()
Ответ на: комментарий от King_Carlo

zol производительная

Насчёт «производительная» я бы поспорил. Ложится под большой нагрузкой. Увы.

У меня на не сильно нагруженном сервере бывают в dmesg записи типа таких:

INFO: task z_wr_iss:2527 blocked for more than 120 seconds.
      Tainted: P           O      5.0.15-1-pve #1
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Call Trace: ...

Но всё равно я её использую почти везде (на серверах).

Harliff ★★★★★ ()
Ответ на: комментарий от King_Carlo

Можно поинтересоваться насчет ОЗУ в данной конфигурации пула? ECC? Сколько занято и сколько всего? И если не затруднит настройки arc и l2arc, уж очень интересна эта тема с l2arc стала с реальных полей действий. Я так понимаю что настройки arc надо менять если l2arc применяешь. Спасибо)

sky92 ()
Ответ на: комментарий от sky92

Можно поинтересоваться насчет ОЗУ в данной конфигурации пула?

Всего в компе 32Гб озу.

ECC?

Обычная память.

И если не затруднит настройки arc

options zfs zfs_arc_max=4294967296

и l2arc

Никак специально не настраивал, добавил ssd в кэши и всё.

King_Carlo ★★★★★ ()

а так же реальные случаи проблем

реальные случаи проблем:

  • производительность падала до неприемлемого (для конечных пользователей) уровня.
  • пользователи жаловались на фризы (samba over zfs (FS)). Переделал схему (samba -> xfs -> zfs (volume) и фризы прекратились (zvol и его конфигурацию не менял)
  • система ушла в OOM, потому, что я не учёл объема ОЗУ, занимаемого ZFS, и выделил слишком много ОЗУ виртуалке.
Harliff ★★★★★ ()
Ответ на: комментарий от King_Carlo

Я таких фризов не встречал. Это файл-сервер с интенсивной записью?

Можно сказать, что да (вообще-то, это сервер виртуализации, но в этот момент я запустил там интенсивную дисковую операцию).

UPD: Попробовал повторить. Сейчас подобного эффекта не проявляется. Возможно, это зависит от общей нагрузки на систему…

Harliff ★★★★★ ()
Последнее исправление: Harliff (всего исправлений: 1)

Хотелось бы услышать от вас адекватные плюсы и минусы zol’а

Вообще, мне кажется, что у ZFS своя ниша. И вне этой ниши лучше использовать что-то другое (LVM например).

Harliff ★★★★★ ()
Ответ на: комментарий от Harliff

А какая версия zfs? В 0.6.* было много багов на тему фризов, вроде как в 0.7.* пофиксили их. Лично я сторонник свеже-стабильного ПО и стараюсь обновлять, по крайней мере критично-используемое ПО(естественно после того как взглядом окину ченчлоги).

Лично я столкнулся с похожим багом 0.6.* когда https://github.com/zfsonlinux/zfs/issues/4831 , но после перехода на 0.8.* полюбил zfs. Еще в версии ubuntu 19.10 появилась zfs как эксперементальная, что говорит о n’ом уровне стабильности и судя по ченчлогам там уже нет практически таких критичных багов как в 0.6.*

sky92 ()
Ответ на: комментарий от Harliff

Ну это то ясно, если ты ставишь на домашний десктоп с одним хардом, небольшим количеством озу и хранишь там мемасики из интернета и скачиваешь сериалы из торрента - то это если не верх, то по крайней мере высокий уровень глупости. Но всё же если тебе нужна надежность данных энтерпрайс типа, то я думаю zfs выбор явно лучше чем реализации типа lvm, mdadm, btrfs. Лично моё мнение. Возможно я не прав, но zfs единственная фс которая открыто признает что даже имея ECC и SAS нельзя быть уверенным что запись на диск произойдет именно так, как она должна была пройти. Конечно если мы говорим самбе на полтора с половиной юзера то это излише, но если у тебя большое количество файловых записей (скажем драйвер докера с > 30 активных контейнеров, виртуальные машины, бигдата сторейдж) то это вообщем то одно из немногих решений, которое я не вижу как реализовать на VLM без последующей горящей попы через какое то время..

sky92 ()
Ответ на: комментарий от sky92

Ну это то ясно, если ты ставишь на домашний десктоп с одним хардом, небольшим количеством озу и хранишь там мемасики из интернета и скачиваешь сериалы из торрента - то это если не верх, то по крайней мере высокий уровень глупости. Но всё же если тебе нужна надежность данных энтерпрайс типа, то я думаю zfs выбор явно лучше чем реализации типа lvm, mdadm, btrfs.

Согласен с Вами полностью!

Harliff ★★★★★ ()

Zfs on linux

Поясните о каком таком «linux» разговор? А то тот linux который я знаю zfs мало того что не поддерживает так ещё и несовместим с ним лицензиями от слова абсолютно. О каком «vs» дальше разговаривать если «all» в ванильном linux много а это ваше «zol» просто не поддерживаемый аппстримом ванильного ядра велосипед нужный только кучка маргиналов?

anonymous ()

Использую zfs на десктопе начиная с 0.6.x, брат жив.

  • raid10 - работает, успешно пережил пару сдохших хардов и пару лет обновлений
  • raidz1 - тоже работает, но по скорости до raid10 ему далеко
  • Сжатие - не вижу причин выключать
  • Снапшоты - регулярно пользуюсь, всё ок
  • Дедупликация - использую для файлопомойки. Всё работает, но пользы как-то не ощутил. Мизерная экономия места ценой тормозов.
  • zvol - иногда пользуюсь, xfs поверх zvol на некоторых задачах показывал себя лучше чем zfs
  • l2arc - отдал под кеш полумертвый ssd, при активной работе с жирными БД ощутимо разгружает диски.

Из неприятных моментов могу отметить только:

  • Большие операции удаления проходят со скрипом - i/o может ощутимо фризится
  • Пересобирать модуль при обновлении ядра нет никакой радости - обычно это самый долгий этап рутинного обновления системы.
  • Поддержку trim/discard вроде как до сих пор не завезли.
melkor217 ★★★★★ ()
Ответ на: комментарий от King_Carlo

Никакой btrfs нет, её даже RH выкинул.

Не «даже», а «только лишь».

С версии 0.6 использую zol на всяких разных серверах и даже некоторых десктопах.

А в RH поддерживается?

AS ★★★★★ ()
Последнее исправление: AS (всего исправлений: 1)
Ответ на: комментарий от anonymous

Что значит поддерживается? Компилишь модуль и работаешь

Ну «никакой btrfs нет» аргументируется фразой «её даже RH выкинул». Вот мне и интересно, а ZOL есть согласно этому аргументу? Или, хотябы, был?

AS ★★★★★ ()
Ответ на: комментарий от anonymous

А какое отношение имеет ZoL к RH?

А какое отношение btrfs имеет к RH? Теперь, по крайней мере. Причём из ядра btrfs никто не выкидывал и разработку не прекращали. Подумаешь - RH отпал...

AS ★★★★★ ()
Последнее исправление: AS (всего исправлений: 1)
Ответ на: комментарий от AS

btrfs включена в ядро, а ZFS в силу лицензии нет.
Периодически разработчики ядра вставляют палки в колеса ZFS(запрещают использовать API и т п)
Поэтму ZFS пилится отдельно и соответственно RH к ней никаких усилий не прикладывает

anonymous ()
Ответ на: комментарий от anonymous

btrfs включена в ядро, а ZFS в силу лицензии нет.
Периодически разработчики ядра вставляют палки в колеса
ZFS(запрещают использовать API и т п)
Поэтму ZFS пилится отдельно и соответственно RH к ней никаких усилий не прикладывает

И что? Какое отношение это имеет к моему вопросу?

AS ★★★★★ ()
Ответ на: комментарий от AS

Прямое. Из ядра они ничего выкинуть не могут, вот и сказали -
если btrfs не работает - к нам не обращайтесь, мы не хотим больше патчить это
А ZFS - это не их, и не в ядре. Они xfs двигают. Политика

anonymous ()
Ответ на: комментарий от anonymous

если btrfs не работает - к нам не обращайтесь, мы не хотим
больше патчить это А ZFS - это не их, и не в ядре.

Ещё раз: какое это имеет отношение к моему вопросу о том, почему неподдержка обеих ФС Редхатом в одном случае плохо, а в другом - нет?

AS ★★★★★ ()
Ответ на: комментарий от AS

Ну видимо выводы сделаны из-за того, что про btrfs RH явно сказала,
а про ZFS ничего не говорит.
Но в обоих случаях это никак не влияет на эти ФС.
Если RH коммитит в ФС - хорошо, а если не коммитит - ну и без RH проживем.
Живут же другие проекты без RH

anonymous ()
Ответ на: комментарий от AS

Ещё раз: какое это имеет отношение к моему вопросу о том, почему неподдержка обеих ФС Редхатом в одном случае плохо, а в другом - нет?

Потому что zfs к ядру линукс пока отношения не имеет, а btrfs в ядре. RH явно выразила своё отношение к нативной линуксовой технологии, по поводу zfs они ничего официально заявить просто не могут.

King_Carlo ★★★★★ ()