Что будет производительнее: 4x SATA HDD в RAID10 или 3x SATA в RAID-Z + SSD в качестве ZIL?
Добрый день!
Подскажите, пожалуйста, есть ли у кого-то данные тестирования скорости работы zfs в конфигурации RAID10 в сравнении с RAID-z + SSD в качестве ZIL? В сервер можно установить максимум 4 диска, нужно придумать максимально компромиссный между скоростью и надежностью вариант. Будет два типа серверов: на SATA — максимальный объем, на SAS — скорость + объем (везде — максимум 4 диска, напомню). Что сделать для максимальной производительность в каждом варианте: поставить все в RAID10 или таки 3 диска в RAID-z и включить четвертым SSD на 120Гб в качестве ZIL? Серверы в первую очередь будут использоваться в качестве хранилищ для контейнеров виртуальных машин.
P.S. Под FreeBSD.
Спасибо!
Post.P.S. День сегодня начался еще, по сути, вчера, поэтому прошу прощения за то, что в спешке изначально опубликовал вопрос в виде топика.
Увы, но ZFS многопоточную загрузку (когда десятки процессов одновременно хотят что-то прочитать с винта) держит крайне плохо. Если нет цели хранить очень-очень большие обьемы — рекомендую gmirror на 4 винта, ну или zfs raid1 на 3 винта + ssd под zil — так будет быстрее всего на чтение, при умеренной записи.
Опять же, raidz для контейнеров дисков навряд ли сильно нужен, там скорее стоит использовать gpart и експортить в виртуалку сырой раздел.
Увы, но винтов может быть всего четыре, а ускорить процесс хочется. В хранилище будет 32Gb RAM, поэтому, проведя доп. исследования, пока предварительно остановился на зеркале из трех дисков и SSD под ZIL + L2ARC. Насчет сырого раздела я, конечно, думал, но тогда теряется одно из главных преимуществ zfs — мгновенные снимки. Для бэкапов — самое то.
самый быстрый будет любой вариант с зеркалом, но без raidz. например из четырех дисков будет подобие raid10:
zpool create pool mirror disk1 disk2 mirror disk3 disk4
если использовать SSD под ZIL и под L2ARC одновременно — нужно разные девайсы использовать
для контейнеров после этого можно использовать zfs volume (zfs create -V 100G pool/vol) вместо партишенов, но при использовании снепшотов волумы будут замедляться
На самом деле, весьма двойственные обзоры и сведения по этому поводу — в смысле, по поводу разных устройств для ZIL и L2ARC. С одной стороны, deadlock'и, с другой стороны, вроде как у части народа под нагрузкой работает очень шустро. На 2-3 диска в зеркале емкостью 3Тб я смысла не вижу ставиь два разных устройства — дорого получится, а прирост производительность сомнительный. Разве что ZIV ставить в mirror, но и это, вроде как, в zfs V28 смысла не имеет особого — даже если сдохнет SSD, скорость работы системы просто замедлится.
Немного не в тему:
кстати, вот, интересные данные:
Forgot to mention that all three pools are configured the same:
4 raidz2 vdevs with 6 drives each
32 GB cache vdev
2 GB log vdev (although this is currently only for testing)
16 GB UFS for OS
8 GB of swap (the last 4 items are all on the same SSD)
20, 24, 32 GB of RAM (alpha/beta/omegadrive respectively)
Серверы (три штуки) резервного копирования с дедупликацией и сжатием. На одном фактические 150Тб данных лежит на массиве емкостью 35Тб (массив чуть больше, столько занято).
На втором — 35Тб данных на 11Тб дискового пространства.
Занимательно. Я, честно говоря, думал, что дедупликация не для такого уровня железа — слишком медленно.
И обратите внимание: ZIL, L2ARC, swap и системный раздел лежат на одном SSD.
Интересно было бы увидеть данные производительности.
возможность потянуть дедупликацию в текущей конфигурации проверяется при помощи zdb -S
чудес не бывает, потому либо взлетает, если ARC хватает для хранения сразу всех метаданных, либо жестко уходит в своп, если не хватает.
Собственно, в данном случае чудо, что при объеме памяти даже в 32Гб (на самой «богатой» ноде) на сервере работает дедупликация на массиве в 35Тб, при этом фактических данных (с дедупликацией и сжатием) — 150Тб.