riv
Я не гонюсь за пиковой скоростью, но интересно на сколько быстрее с слог меняется запись.
Это, скорее всего, бесполезная информация. Полезнее так: Вот у вас есть нагрузка, и например файловый сервер тупит. Вы смотрите загруженность дисков, условно 90%, например. Затем добавляете special, slog, cache и нагрузка становится 10% - насколько быстрее стало, вопрос сложный. Но зато вы можете теперь нагрузить сервер сильнее. вот то, насколько вы сможете его сильнее нагрузить: дополнительное количество пользователей или вирутальных машин или баз данных - это и есть полезный результат. Так же интересной информацией будет то, таколько по занимаемому на них месту, записываемому в день объему данных и iops будут загружены эти устройства, в первую очередь для понимания, какая спецификация должна быть у этих устройств. По моему, из такого fio-теста однозначного вывода сделать нельзя. Проблема в том, что нагрузка на диски суммируется не линейно. Например, 20% линейного чтения и 20% случайного по отдельности, вместе могут положить диск на 90%. И наоборот, убрать небольшую неудобную нагрузку с устройства и оно выдержит в 5 раз больше оставшейся, но удобной для механического диска.
Сергей
Это, скорее всего, бесполезная информация. Полезнее так: Вот у вас есть нагрузка, и например файловый сервер тупит. Вы смотрите загруженность дисков, условно 90%, например. Затем добавляете special, slog, cache и нагрузка становится 10% - насколько быстрее стало, вопрос сложный. Но зато вы можете теперь нагрузить сервер сильнее. вот то, насколько вы сможете его сильнее нагрузить: дополнительное количество пользователей или вирутальных машин или баз данных - это и есть полезный результат. Так же интересной информацией будет то, таколько по занимаемому на них месту, записываемому в день объему данных и iops будут загружены эти устройства, в первую очередь для понимания, какая спецификация должна быть у этих устройств. По моему, из такого fio-теста однозначного вывода сделать нельзя. Проблема в том, что нагрузка на диски суммируется не линейно. Например, 20% линейного чтения и 20% случайного по отдельности, вместе могут положить диск на 90%. И наоборот, убрать небольшую неудобную нагрузку с устройства и оно выдержит в 5 раз больше оставшейся, но удобной для механического диска.
fio можно и так запустить, одна джоба будет мерять линейную скорость (чтение/запись), а вторая - случайную в требуемой пропорции
riv
Я не гонюсь за пиковой скоростью, но интересно на сколько быстрее с слог меняется запись.
Кстати, есть ещё такой путь: записать информацию о нагрузке на боевой системе и "проиграть" сценарий на вашем устройства в количестве 1шт, 2шт (с не большим сдвигом во времени), 10шт, 100 шт и т.д. Я сейчас поищу информацию, давно видел и даже сам пробовал записывать, но сейчас уже интуитивно понимаю что нужно под тот или иной сценарий... Еще момент. Бывает так, что база данных тупит, а нагрузка на диск в районе 10-20%, на процессор - так-же 10-20%. В чем дело? Дело может быть в латентности. Т.е. грубо говоря у базы данных может быть такой сценарий: считать данные, модифицировать, положить. И эти шиги каждый поток делает исключительно последовательно. И не важно сколько у вас vdev, если каждое io - 10мс, то больше 30 транзакций в секунду сделать не получится. В этом случае выход только поменять основные устройства HDD->SSD, SADA SSD->NVME SSD, NVME SSD -> 3D X-point SSD (intel optane) или RAM-диск.
riv
fio можно и так запустить, одна джоба будет мерять линейную скорость (чтение/запись), а вторая - случайную в требуемой пропорции
А не помните как называется инструмент для записи дисковой активности? Уже самому интересно стало, а найти что-то не могу. Помню статья на habr была.
riv
вот
Спасибо!
riv
Но я бы сказал, что не вникая в подробности, можно оставить поведение по умолчанию. Но ваш тест не показывает реальную производительность пула. Полностью синхронная запись - это вырожденный случай. В реальности, скорее всего, будет намного быстрее.
Наверное это была не одна статья А вот и утилита проигрывания: btreplay А вот одна из статей, там есть пример как сделать красивую видео-визуализацию: https://habr.com/ru/company/selectel/blog/199350/
Сергей
Добавил slog и special. Получил такие результаты. Мне опять кажется что мало 😄 Хотя синхронная была на уровне 4 Мб/с , а случайная вроде не изменилась. Для hdd пула большего ожидать уже нельзя ?🤔
синхронная там (в тестах fio) тоже случайная. В тех тестах только randomRW проверяется (без fsync/и с fsync). Я думаю что последовательные операции сейчас встречаются намного реже чем случайные чтение/запись.
riv
синхронная там (в тестах fio) тоже случайная. В тех тестах только randomRW проверяется (без fsync/и с fsync). Я думаю что последовательные операции сейчас встречаются намного реже чем случайные чтение/запись.
По идее из-за CoW все поерации должны выстраиваться в линейную запись, а вот чтение - ничего не сделаешь, остаётся последовательным. Еще обсуждали отключения кэша на SSD и это должно их ускорить на синхронной записи, но, похоже никто не проверял.
riv
https://netofrombrazil.com/2015/01/05/capturing-and-replaying-block-traces-blktrace-btrecord-btreplay-and-fio/ - статья о воспроизведении активности. Интересно, а синхронная / не синхронная - об это тоже информация захватывается?
Сергей
По идее из-за CoW все поерации должны выстраиваться в линейную запись, а вот чтение - ничего не сделаешь, остаётся последовательным. Еще обсуждали отключения кэша на SSD и это должно их ускорить на синхронной записи, но, похоже никто не проверял.
под линейной записью я всё же имею ввиду другое - например на пул ZFS пишутся гигабайты потоковых данных (видео, логи, ...). А изменения образов ВМ, СУБД - это больше случайная запись. А zfs в лучшем случае агрегирует часть такой записи, но весь объём записываемых изменений вряд ли получится превратить в линейный
riv
под линейной записью я всё же имею ввиду другое - например на пул ZFS пишутся гигабайты потоковых данных (видео, логи, ...). А изменения образов ВМ, СУБД - это больше случайная запись. А zfs в лучшем случае агрегирует часть такой записи, но весь объём записываемых изменений вряд ли получится превратить в линейный
Да, не все получается, и если нет special нагрузка возрастает очень сильно. Вы же согласитесь, что с таким типом записи, как потоковое видео в несколько потоков, у zfs вообще нет проблем, добавляй vdev-ы и оно масштабируется отлично.
riv
Подскажите, пожалуйста, что (как) именно требуется atop запускать, что показать. Я им никогда не пользовался просто.
Кстати, наверно полезнее моих каментов будет: https://firstvds.ru/technology/statistika-nagruzki-na-server-atop
Fedor
в самом стеке зфс есть множество метрик, по которым можно определять причину каких-то проблем.
Fedor
тем будет показано, почему именно происходит нагрузка на диски.
Max
Коллеги, Cpu context switches может быть большим по причине дефрагментации около 70% на пуле из одного диска? База мускула там живёт с высоким рейтом по записи.
Max
и как понять, какой прирост по скорости записи даст вынос zil на отдельный девайс, как посчитать профит?
Алексей
Да фрагментации же)
Max
Да-да) точно
Алексей
Какой профит принесёт зил можно примерно прикинуть если включить sync=disabled
Алексей
Только аккуратно, не говорите мне что я не предупреждал о том что это опасно
Алексей
Можно потерять данные если света кончится внезапно
Алексей
Или сервак зависнет
Алексей
Но оценить можно
Алексей
Кто-то хочет бан
Алексей
Кто нибудь может прикрутить @banofbot?
Alexandr
@neurox
Fedor
Попозже. Прикручу.
Алексей
perfect
Alexandr
👍
Сергей
Какой профит принесёт зил можно примерно прикинуть если включить sync=disabled
ну это сравнение не совсем честное. Не все могут себе позволить купить ssd с производительностью равной "отключению данной опции")
Алексей
Ну сравнить то можно.
Алексей
Ну и опять же под зил много не надо
Сергей
Ну сравнить то можно.
можно увидеть порядок. Т.е. например на пуле из хороших ssd(nvme) разница уже не так заметна. Под SLOG нужен не ёмкий, а с наименьшим латенси. Например P4801X
Сергей
берём даташиты и ищем диски с наименьшим показателем write latency
Алексей
Ну да, порядок. Понять - может быть и нафиг не надо
Алексей
И это точно бесплатно
Алексей
Если не брать в расчёт возможные риски
Ivan
если zfs управляет кэшем дисков, то как-то можно попросить его включить или выключить кэш для отдельного диска ?
Ivan
имеется ввиду действие равное hdparm -W
Алексей
Мне кажется что это применимо только к vdev
Ivan
Мне кажется что это применимо только к vdev
не, имеется ввиду отключение кэша именно конечного устройства.
Fedor
Попробуйте
Алексей
Алексей
😂
Алексей
Не работает
Владимир
Banof
👼 @underflow17 спасен — в этот раз его не кикнули. Проголосовавшие за спасение: @underflow17, @neurox, @simubishi, @Wladimi, @sgolod Powered by Todorant
Владимир
J)
Владимир
прикольно))
Алексей
Ноно
Владимир
Алексей
Я бы попросил
Fedor
Прикольно
Ivan
А причём тут zfs?
https://t.me/ru_zfs/10855
Ivan
https://yourcmc.ru/wiki/Ceph_performance#O_SYNC_vs_fsync_vs_hdparm_-W_0
Алексей
https://t.me/ru_zfs/10855
А ты точно на непрогретом датасете тестил
Алексей
Это интересно
Ivan
причем когда я тестировал из винды, результаты другие были - я видел положительное влияние отключения кэша на ссд 😂
Ivan
но потом заметил что иопсы скачут вообще от погоды на марсе
Алексей
Что значит из винды?
Алексей
Как зфс можно протестить из винды?
Ivan
Алексей
proxmox-> винда
Это очень очень странный тест
Ivan
в конце концов тестируется всё для винды, т.к. поведение на хосте мало интересно.
Алексей
Ну, тоже верно
Ivan
не было бы виндовых проектов, я был бы счастлив )
Ivan
👼 @underflow17 спасен — в этот раз его не кикнули. Проголосовавшие за спасение: @underflow17, @neurox, @simubishi, @Wladimi, @sgolod Powered by Todorant
тут есть опасность, что пятеро затаившихся ботов могут выпилить абсолютно всех из канала
Ivan
кажется подобные приколы уже были в паре ит групп
Ivan
есть возможность дать право голоса проверенным людям ?
Fedor
Что исключает собственно необходимость в боте
Alexandr
ну я думаю это нестрашно