Pull to refresh
0
0
Send message

В начале 2016 года. Я вкратце описал почему выбор пал на Солярис, также я убежден в том, что на "родной" системе zfs работает стабильнее + fmd очень удобен в части проблем с дребезгом дисков, а также автоматического создания инцидентов о возникших проблемах. Обязательно затестирую релиз 0.7 на нотнике ))

Для больших инсталляций хочу сравнение производительности с ceph'ом

Ну если на текущем железе, то это не большая инсталяция ))


Без избыточности тестировать как мне кажется смысла тоже нет, т.к. тогда и
zfs можно собрать как raid0.


Если интересно, то в середине июля должнен получить очередное оборудование под NAS
( 2 сервера + 4-ре полки на 24-ре диска) можно попробывать на них.


По Объему схожая конфигурация это:


zfs pool (Solaris):
  40 x mirror - hdd 10krpm
  8 x slog    - ssd
  4 x l2arc   - ssd

ceph (Linux 4.X)
  replicated pool == 2 copies
    node1:
      20 x osd  - hdd
      4 x ssd == 20 journal partitions
    node2:
      20 x osd  - hdd
      4 x sdd == 20 journal partitions

Берем примерно 10% от общего полезного объема


fio --time_based --name=benchmark --size=3000g --runtime=1200 --filename=/dev/sdb --ioengine=libaio --randrepeat=0 --iodepth=128 --direct=1 --invalidate=1 --verify=0 --verify_fatal=0 --numjobs=1 --rw=write --blocksize=4k --group_reporting
fio --time_based --name=benchmark --size=3000g --runtime=1200 --filename=/dev/sdb --ioengine=libaio --randrepeat=0 --iodepth=128 --direct=1 --invalidate=1 --verify=0 --verify_fatal=0 --numjobs=1 --rw=randwrite --blocksize=4k --group_reporting
fio --time_based --name=benchmark --size=3000g --runtime=1200 --filename=/dev/sdb --ioengine=libaio --randrepeat=0 --iodepth=128 --direct=1 --invalidate=1 --verify=0 --verify_fatal=0 --numjobs=1 --rw=read --blocksize=4k --group_reporting
fio --time_based --name=benchmark --size=3000g --runtime=1200 --filename=/dev/sdb --ioengine=libaio --randrepeat=0 --iodepth=128 --direct=1 --invalidate=1 --verify=0 --verify_fatal=0 --numjobs=1 --rw=randread --blocksize=4k --group_reporting
fio --time_based --name=benchmark --size=3000g --runtime=1200 --filename=/dev/sdb --ioengine=libaio --randrepeat=0 --iodepth=128 --direct=1 --invalidate=1 --verify=0 --verify_fatal=0 --numjobs=1 --rw=readwrite --blocksize=4k --group_reporting

так?


Ключевое что в ceph было бы интересно в сравнении с zfs — абсолютная толерантость к ресайзу в любую сторону

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


PS: за терминологию касательно цефа заранее извиняюсь + если тестировать будем, возможно будет полезно узнать какой то бест практис по тонкой настроки ceph.

Я думаю сложно будет подобрать сопостовимые конфигурации, сравнивать по price/performance?

Рекомендую к просмотру, хоть материал и старенький, но концепция изложена полностью:
ZFS: The Last Word in File Systems — Part 1
ZFS: The Last Word in File Systems — Part 2

Использую zfs как NAS хранилку, впринципе очень доволен. LZ4 сжатие вообще огонь, на датасторах виртуалки жмутся в среднем в 2.4 раза. Прогретый ARC от 94 — 98% чтения отдает с RAM, остальное забирает L2ARC и совсем немного приходится на hdd. Не используем дедубликацию, т.к. она имеет смысл быть при блоках 4к, а для этого требуется очень много памяти.


Пробывал варианты с


  • centos7 + openzfs
  • illumous — дистрибутив omnios
  • solaris 11.2/11.3

В итоге остановился на конаничном — Solaris.


типовая конфигурация у нас это:


  • Cisco UCS 240m4 ( cpu: 2 x E5-2699A v4, ram: 768gb, 2 x dual intel x520 10gbe, 2 x lsi sas 9200-8e )
  • 216BE2C-R741JBOD / SC847E2C-R1K28JBOD
  • SLOG: PX04SHB020 — очень рекомендую
  • L2ARC: HUSMM1640ASS204

Тестировал fio как локально, так и экспортируюмую шару по NFSv4, так и iSCSI волум.


Linux

Плюсы:


  • Нет проблем с железом / дровами
  • Легко найти человека который знаком с linux
  • Имеется поддержка nfsv 4.1

на этом пожалуй плюсы закончены


Минусы:


  • производительность zfs меньше на процентов 15 по сравнению с тем же OmniOS, на локальных тестах + тестах по iscsi (использовал targetd lio) и на процентов 20% по сравнению с тестами по nfs.
  • autoreplace для пула, т.к. каждый диск у нас видится по четырем путям, нам необходимо сконфигурировать multipathd таким образом, чтобы в названии он отоброжал физическое расположение диска — в идиале полка/слот. чтобы после замены диска он автоматически выполнял реплейс.
  • т.к. я тестировал на centos7 при проблемах с производительностью мы имеет только счетчики из proc и стандартные утилиты типа iostat (в systemtap я не селен), что как мне кажется делает анализ производительности более сложным чем в случае с solaris base дистрибутивами.
  • Кластер на базе Pacemaker + Corosync. Умные проверки придется пилить руками.

OmniOS

плюсы:


  • Хорошая производительность как при локальных теста, так и при использовании nfs
  • Имеется платный кластер — RSF-1 заточенный под кустарные схд
  • Dtrace который облегчает поиск проблемных мест + множество готовых скриптов под него.
  • Comstar уже интегрирован с zfs (ISCSI)
  • Нет проблем с мультипазингом, MPxIO работает на ура.
  • Отличное сообщество.
  • FMD (fault managment daemon) — этот парень всегда пришлет письмо,
    если у вас, что то сломалось (если конечно сервер и fmd еще живы). Расширяется за счет плагинов.

Минусы:


  • Не на всем железе взлетит + проблема с драйверами, для современных 40гбе карточек.
  • до недавнего времени была проблема с UEFI
  • Админов знакомых с solaris в разы меньше.

Solaris 11.3

все плюсы из OmniOS, а так-же:


  • Производительность раза в полтара выше чем у OmniOS и тем более Linux,
    как я понимаю это связанно с фитчей efficiency block allocation
    котарая появилас в 36-ой версии, пула если не изменяет память.
  • L2ARC остается горячим при переключении кластер (активной ноды) или перезагрузки
  • в FMD
    появились плагины io retired && zfs retired, которые отслеживают
    события с I/O на диске и в случае например "дребезка" диска, помечают его
    как failed и убирает из системы до выяснения обстоятельств
  • Sun Cluster — это парень имеет багатую историю и тесно интегрирован с
    Solaris. Отлично работает, прост в использовании, вообщем нареканий нет.

Минусы:


  • Сообщество на металинки достаточно "тухлое"
  • Не на всем железе взлетит + проблема с драйверами, хотя дела обстоят не так
    остро как с OmniOS, а если брать сервера от Oracle так проблем вообще нет.
  • Нет фитчи с асинхронным удалением датасетов, например датасеты размером в
    50тб удаляются сутки или двое, но зато это операция не просаживает CPU как в случае с OpenZFS.
  • Админов знакомых с solaris в разы меньше.
  • Comstar не кластирезуется из коробки, нужно допиливать.

Десклеймер: По поводу производительности, настройки openzfs на linux и
illumous я старался сделать как можно более одинаковыми. У Oracle ZFS естественно они отличались. Ну и естественно это мой личный опыт, ваше мнение/опыт могут отличаться.


По поводу использования zfs в качестве бэка для систем виртуализации, аля Linux KVM + ZFS — посмотрите проект SmartOS, он достаточно интересный и активно развивается компанией Joyent.

Information

Rating
Does not participate
Registered
Activity