Vladislav
Fedor
Чуть ли не одной операцией
Vladislav
Данные пишутся по CoW линейно
Тогда почему же fio 4k randwrite и fio 4k write показывает разные результаты (Не 10-20-30% разные, а больше)?
Fedor
Синхронная запись, скорее всего
Fedor
Надо смотреть
Fedor
Там очень много параметров играют
Vladislav
Там очень много параметров играют
Я понимаю как это прозвучит, но о каких параметрах может идти речь, если пул, zvol и fio команда буквально в лоб писались
Vladislav
Синхронная запись, скорее всего
Плюс asyncIO использовался как библиотека для fio
Fedor
В общем, тестирование и разнесением нагрузок часто играет на пользу
Fedor
Можно выжать хорошие результаты производительности на задачах
Fedor
Но это небыстрый процесс.
Fedor
Если тесты рабочей нагрузки (не фио) покажут приемлемые результаты - имеет смысл использовать. Если нет - то нет
Fedor
Это не простой слой наподобие рейда, тут очень многое играет как в большую сторону, так и в меньшую
Vladislav
Можно выжать хорошие результаты производительности на задачах
Проблема в том что это виртуализация для ~40 ВМ. Которые удаляются, создаются заново. Это может быть Horizon VDI, Cisco FTD, Cisco ISE, Windows AD, MySQL\MariaDB, PosGRES, 1C, Ubuntu\CentOS, Cisco CUCM и т.д и т.п
Fedor
Проблема в том что это виртуализация для ~40 ВМ. Которые удаляются, создаются заново. Это может быть Horizon VDI, Cisco FTD, Cisco ISE, Windows AD, MySQL\MariaDB, PosGRES, 1C, Ubuntu\CentOS, Cisco CUCM и т.д и т.п
Это список ОС, нагрузка это про другое. Может там будет файлопомойка, может там мускуль сожрет на запись все ио
Fedor
Может горячий объём не поместится в арк, а может и поместится
Fedor
Тут только тестировать изучать смотреть
Станислав
Возвращаюсь: как это устроисвто помогает ворочать медиа файлы ?🤔
Что по вашему мнению значит ворочать? Это чтение, запись? Последовательная или случайная? Просто не вы ли выше писали, что сжатие замедляет сильно на медиа, но не сжимает сильно? Но медиа если не пожмется более, чем на 12,5%, то на блоке будет хранится несжатая версия и в дальнейшем, при её чтении, никакой распаковки не происходит. Значит и разницы нет, в каком режиме работает. Потому чтение, как мне кажется, тут не причем. Тут, скорее всего, где-то ошибка с вашей стороны. Может данные жмутся таки? А про ССД и Zil я написал потому, что вы написали про объем данных и замену шпинделей на ССД. Если хочется с большим iops писать данные - SLOG поможет. Если у вас синхронная запись, конечно же. Поправьте меня, конечно, я могу ошибаться, но в моем понимании блоки данных пишутся в Zil, пока не будут сброшны в пул. А про мелкие блоки, как писали выше, это special device
Vladislav
Это список ОС, нагрузка это про другое. Может там будет файлопомойка, может там мускуль сожрет на запись все ио
Там в том числе виды нагрузок. Логи, БД разного формата и содержания (включая те, что не умеют останавливать запись от слова совсем), CUCM вообще всегда пишет по 40IOPS динамического размера
Fedor
Тестировать
Vladislav
Тестировать
Что именно? Какое из зол будет наименьшее?
Fedor
Ага :)
Vladislav
8к наименьшее по результатам fio Для 4к 8к 16к 32к 64к 1м
Fedor
8к сейчас почти никто не пишет
Vladislav
8к сейчас почти никто не пишет
Расскажите это Cisco и про агрегацию записей тоже
Vladislav
А ещё про остановку БД, а то ВМ Cisco может умереть если делать снапшот
Fedor
Не думаю, что она даст основную нагрузку 😁
Fedor
Откуда Cisco не узнает об снапшоте?)
Она видимо расчитывает что грязные страницы точно запишутся
Vladislav
Откуда Cisco не узнает об снапшоте?)
Cisco FTD, Cisco ISE и ещё сколько-то ВМ при миграции или снапшоте (а именно замирании ВМ на 0.1-0.5с) могут убить свою БД. А ещё заодно свою файловую систему (у них нет fsck.ext4 в ОС)
Vladislav
Поэтому от Cisco (которой у меня много в лабе) я бы не особо рассчитывал на умные вещи такие как Агрегация записей, не запись в 4к и т.д.
Vladislav
8к сейчас почти никто не пишет
Ну и наконец, VMware рекомендация форматировать ЛУН для iSCSI в 4к или 8к
Fedor
Их большинство
Не думаю, что они дадут больше, чем бд :)
Fedor
Ну и наконец, VMware рекомендация форматировать ЛУН для iSCSI в 4к или 8к
Тогда смысла создавать и тестировать на рекордсайзе 64 вообще нет
Fedor
И тестировать надо не локально, цифры будут совершенно другие
Vladislav
И тестировать надо не локально, цифры будут совершенно другие
Я очень сомневаюсь, что при подключении через iSER 40G я увижу цифры больше чем локально...
Vladislav
Меньше :)
О чём и речь. Теоретический лимит такого подключения 4.8 ГиБ/с
Станислав
Возвращаюсь: как это устроисвто помогает ворочать медиа файлы ?🤔
Я опираюсь, например, на эти данные http://onreader.mdl.ru/AdvancedZFS/content/Ch07.html Перевод корявый местами, но, вроде бы, понятно
Wild_Wind
из опыта -- помойка с мрз и оггами жмётся еще процентов на 5-10 zstd
zstd дорогой по процу, 5-10% в абсолютных цифрах не всегда того стоит.
Vladislav
Даже при записи 30Г файла на пустые диски
George
Я хороших цифр не вижу с ZFS....
Ну zfs на диски не как есть тоже нагрузку даст, и он быстро в перезапись уходит блоков
Vladislav
Ну zfs на диски не как есть тоже нагрузку даст, и он быстро в перезапись уходит блоков
Диски 1ТБ и я писал по 30Г, пересоздавая пул после тестов и ожидая где-то 3-6 минут между тестами
Vladislav
Что lz4 не влияет на тесты нулями это странно
А почему там должны быть нули?
George
А почему там должны быть нули?
По дефолту поток от fio прекрасно сжимаем
George
Мб там не нули, но абсолютно однообразный поток
Vladislav
Я про raw тесты диска, на которые ориентируетесь
ext4 (ФС) и mdadm (dev) и mdadm+ext4(ФС) цифры больше дают, чем zvol :(
Fedor
И, по опыту, зфс учится тестированию через фио и проводит оптимизации. С каждым разом цифры все более отходят от действительности
George
ext4 (ФС) и mdadm (dev) и mdadm+ext4(ФС) цифры больше дают, чем zvol :(
Я вам про одно, вы про другое) плюс если на zvol тестите то при чём тут recordsize
Vladislav
Я дошёл до этапа подключения по сетке. ZFS: zpool create -o ashift=12 -O compression=lz4 -O atime=off -O recordsize=64k nvme /dev/nvme0n1 /dev/nvme1n1 /dev/nvme3n1 -f zfs create -s -V 2.7T -o volblocksize=64k -o compression=lz4 nvme/iser fio -name=rndw4k16 -ioengine=libaio -direct=1 -buffered=0 -invalidate=1 --runtime=100 --time_based=1 -numjobs=4 -bs=64k -iodepth=32 -rw=randwrite -filename=/dev/mapper/mpat WRITE: bw=916MiB/s (960MB/s), 229MiB/s-229MiB/s (240MB/s-240MB/s), io=54.1GiB (58.0GB), run=60460-60460msec mdadm: fio -name=rndw4k16 -ioengine=libaio -direct=1 -buffered=0 -invalidate=1 --runtime=100 --time_based=1 -numjobs=1 -bs=64k -iodepth=32 -rw=randwrite -filename=/dev/mapper/mpathd WRITE: bw=1748MiB/s (1833MB/s), 1748MiB/s-1748MiB/s (1833MB/s-1833MB/s), io=121GiB (130GB), run=71062-71062msec
Fedor
А в много потоков?
Vladislav
По чтению вопросов нет, ZFS на 4-5 тест показывает скорость выше за счёт ARC Но сейчас на TrueNAS у меня нагрузка выглядит так (в простое):
Vladislav
А в много потоков?
ZFS уже был в 4 потока?
Fedor
А, да, вижу
Fedor
ZFS уже был в 4 потока?
А если например в 16?
Vladislav
В 32 потока да, Получаю вот это: WRITE: bw=1229MiB/s (1289MB/s), 37.6MiB/s-39.2MiB/s (39.4MB/s-41.1MB/s), io=61.7GiB (66.2GB), run=51350-51387msec Только тут один клиент тогда получает производительность HDD
Vladislav
Судя по mdadm (fio bs=64k numjobs=16 или 32) потолок mpath канала сейчас 2.3 GiB P.S. а ещё у меня randwrite > randread на mdadm
Δαρθ
zstd дорогой по процу, 5-10% в абсолютных цифрах не всегда того стоит.
хзхз. я както экспериментировал на десктопном винте (1шт) и разных уровнях. явно был оптимум по скорости при средних коэффах упаковки
Δαρθ
допускаю что на быстрых недесктопных винтах или ссд оптимум сдвигается
Wild_Wind
допускаю что на быстрых недесктопных винтах или ссд оптимум сдвигается
На nvme zstd уже уприается в проц, по крайне мере на моём 6 ядерном (12t) ноуте. При lz4 скорость линейной записи bs=4m, под 900мб/с, При zstd bs=4m, прыгает от 200 до 400 мб/с. И процессор при этом хорошо грузится. На lz4 вообще не заментно.
Wild_Wind
на нвме само собой )
На обычном десктопном ssd примерно так же, но поменьше аффектитися, да.
Wild_Wind
на каком уровне сжатия zstd кстати? а то там разные есть
На дефолтном, compression=zstd. На максимальном, на 19, там вообще 10-20мб/с.
Vladislav
А Truenas 12 или 13 ?
12.0U6.1 Он собственно как поставился 239 дня назад - так и работает
Wild_Wind
а на минимальном?
Не пробовал, меня стандартный уровень сжатия в zstd устраивает, а если нужно быстрее, то просто беру lz4. Потом попробую zstd-1, и гляну, как он отличается от zstd.