edo1
fio numjobs=1 bs=4k size=4k iodepth=1 rw=read filename=/zfs/1.tmp & fio numjobs=1 bs=4k size=4k iodepth=1 rw=read filename=/zfs/2.tmp & fio numjobs=1 bs=4k size=4k iodepth=1 rw=read filename=/zfs/3.tmp ...... Условно так, количество файлов через ctrl-c —> ctrl-v сделаете
Не смешно. Там несколько миллионов инод, доступ к файловый, разумеется, случайный, что и вызывает рост доли arc, занятой метаданными
edo1
эту нагрузку не воспроизвести чтением пары файлов в fio
edo1
Про wrk знаю, но не всё так просто )
edo1
Так мне интересны теоретические измышления, почему на dnode выделено 10% от метаданных в памяти?
Andrey
всем привет, подскажите, первый раз меняю диск в рейде есть raid1 из двух дисков, один требует замены, делать буду на горячую, я верно понимаю, просто вытаскиваю требуемый, вставляю новый и zpool replace -f <пул> <старое устройство> <новое устройство> никаких больше нюансов?
Georg🎞️🎥
Молитва 👌:))
Andrey
ну это само собой)
Art
всем привет, подскажите, первый раз меняю диск в рейде есть raid1 из двух дисков, один требует замены, делать буду на горячую, я верно понимаю, просто вытаскиваю требуемый, вставляю новый и zpool replace -f <пул> <старое устройство> <новое устройство> никаких больше нюансов?
Вытаскивать проблемный диск не нужно и не стоит. Ведь после этого пул будет в состояние degraded, это опасное Добавляешь новый диск в систему физически Делаешь реплейс Дожидаешься пока закончится ресилвер Убираешь проблемный диск из системы
Art
а у меня и так сейчас состояние degraded
Аа, диск совсем сбойный уже... Ну тогда разницы нет, получается
Andrey
всё иду делать, спасибо! )
Georgij
Возможно, в пул добавлен не весь диск, а раздел на нем. Т.е. перед replace надо скопировать разметку.
Georgij
@underflow17 Что с какой целью?
Алексей
@underflow17 Что с какой целью?
разметку копировать
Georgij
С форума truenas: Преимущества использования раздела вместо необработанного дискового устройства: 1) Таблица разделов документирует содержимое и структуру диска и повышает совместимость с другими ОС. 2) Использование раздела, меньшего, чем необработанный размер диска, дает дополнительную свободу действий для замены неисправного диска диском другого размера/геометрии/марки.
Δαρθ
есть ли инфа когда релиз 2.1.6 ? ну или хотя бы может втащат 5.19 в 2.1.5 ...
Fedor
2.1.5 работает с 5.19
Fedor
но с 2.1.6 чтото затянли
Ivan
есть ли инфа когда релиз 2.1.6 ? ну или хотя бы может втащат 5.19 в 2.1.5 ...
в дебиане с релизом ядра 5.19 в sid стали собираться zfs модули
Andrey
ребят, что-то я не въеду как всё таки правильно менять диск? удалил старый диск, воткнул новый, он вроде его увидел, но в команде # zpool replace -f <pool> <old device> <new device> а где я возьму old device, если я его физически вытащил?
Andrey
подчеркнутый номер бери из скриншота
это номер предыдущего диска?
Δαρθ
2.1.5 работает с 5.19
https://github.com/openzfs/zfs/releases только 5.18
Fedor
https://github.com/openzfs/zfs/releases только 5.18
да, я видел, но у меня уже давно работает но лучше всё же 2.1.6)
Aleksei
это номер предыдущего диска?
на сколько я помню это идентификатор который zfs пишет на диски при добавлении в пул. сейчас диска нет, но zfs знает идентификатор и поймет что именно ты хочешь заменить.
Vladislav
Там много коммитов было на поддержку 5.19, но полагаю это ещё не всё
Δαρθ
да, я видел, но у меня уже давно работает но лучше всё же 2.1.6)
да блин не хочу колхозить и компилять а в дистре 5.19 не станет поддержтваться или пока 2.1.5 не покажет 5.19 или пока 2.1.6 ее релизнется
Shaker
https://zrepl.github.io/ - кто-то пользуется ?
Shaker
а вид удобно и понятно, экономит тучу времени
Vladislav
Хм, выглядит действительно удобно
Владимир
https://zrepl.github.io/ - кто-то пользуется ?
схоронил), может как нибудь переделаю свою репликаицию, хотя она пока не подводила)
Shaker
https://zrepl.github.io/quickstart/continuous_server_backup.html
Shaker
Вот это будет всем особенно полезно
Shaker
Да у нас тоже свои скрипты есть, и постоянно меняются. Потом кто-то предложил написать на golang утилиту, а она оказалась, уже есть, и ровно как надо.
Владимир
https://zrepl.github.io/quickstart/continuous_server_backup.html
я так делаю только сам, через системд службу
Владимир
тут даже выкладывал её
Shaker
)
Shaker
Да я думаю, что у большинства типа: while true; do nc -l -p 9904 | mbuffer -q -s 128k -m 8G | pv | zfs receive blablatank/blablavol o ; done
Shaker
вперед, по tcp ;)
Владимир
а служба запускает её каждые 10 сек
Ivan
https://zrepl.github.io/ - кто-то пользуется ?
на первый взгляд похоже на zfs-autobackup на питоне
Shaker
Ну логика работы совсем другая
Vladimir
у меня такой скриптик запускается через crontab раз в день, работает совместно с zfs-auto-snapshot , backup-root настроен с ssh keys в /root/.ssh/config #! /bin/bash # get last two daily snapshots # and send incremental copy d=$(date +%Y-%m-%d) last_backup=$(ssh -T backup-root "zfs list -t snapshot|grep home@zfs-auto-snap_daily|tail -n 1 |cut -d ' ' -f 1|cut -d / -f 2") last_local=$(/sbin/zfs list -t snapshot|grep export/home@zfs-auto-snap_daily|tail -n 1 |cut -d ' ' -f 1|cut -d / -f 2) if [[ "${last_backup}" != "${last_local}" ]];then /sbin/zfs send -I \ export/$last_backup export/$last_local | \ ssh backup-root zfs receive -o compress=lz4 -v -F backup-tnl/home fi # cleanup hourly snapshots ssh -T backup-root "bash -s" <<END # remove all hourly snapshots zfs list -t snapshot|grep home@zfs-auto-snap_hourly|cut -d ' ' -f 1 > /tmp/$d.lst # keep last 14 daily snapshots only zfs list -t snapshot|grep home@zfs-auto-snap_daily|cut -d ' ' -f 1|head -n -14 >> /tmp/$d.lst # keep last 4 weekly snapshots only zfs list -t snapshot|grep home@zfs-auto-snap_weekly|cut -d ' ' -f 1|head -n -4 >> /tmp/$d.lst n_cleanup=\$(cat /tmp/$d.lst|wc -l) if [[ \$n_cleanup -gt 0 ]];then echo "Going to clean \$n_cleanup snapshots" for s in \$(cat /tmp/$d.lst);do zfs destroy -v \$s done else echo "Nothing to cleanup" fi END
Владимир
у меня такой скриптик запускается через crontab раз в день, работает совместно с zfs-auto-snapshot , backup-root настроен с ssh keys в /root/.ssh/config #! /bin/bash # get last two daily snapshots # and send incremental copy d=$(date +%Y-%m-%d) last_backup=$(ssh -T backup-root "zfs list -t snapshot|grep home@zfs-auto-snap_daily|tail -n 1 |cut -d ' ' -f 1|cut -d / -f 2") last_local=$(/sbin/zfs list -t snapshot|grep export/home@zfs-auto-snap_daily|tail -n 1 |cut -d ' ' -f 1|cut -d / -f 2) if [[ "${last_backup}" != "${last_local}" ]];then /sbin/zfs send -I \ export/$last_backup export/$last_local | \ ssh backup-root zfs receive -o compress=lz4 -v -F backup-tnl/home fi # cleanup hourly snapshots ssh -T backup-root "bash -s" <<END # remove all hourly snapshots zfs list -t snapshot|grep home@zfs-auto-snap_hourly|cut -d ' ' -f 1 > /tmp/$d.lst # keep last 14 daily snapshots only zfs list -t snapshot|grep home@zfs-auto-snap_daily|cut -d ' ' -f 1|head -n -14 >> /tmp/$d.lst # keep last 4 weekly snapshots only zfs list -t snapshot|grep home@zfs-auto-snap_weekly|cut -d ' ' -f 1|head -n -4 >> /tmp/$d.lst n_cleanup=\$(cat /tmp/$d.lst|wc -l) if [[ \$n_cleanup -gt 0 ]];then echo "Going to clean \$n_cleanup snapshots" for s in \$(cat /tmp/$d.lst);do zfs destroy -v \$s done else echo "Nothing to cleanup" fi END
у меня и для снапшотов кстати тоже есть, но для проксмокса
Владимир
https://github.com/Wladimir-N/pve-snapshot
Vladislav
В тему отказоустойчивости - для SAS дисков есть схема с ZFS и рейд контроллером, а есть ли в свободном доступе бэкплейн для u.2 дисков?
Shaker
У меня какие-то есть, могу продать
Vladislav
В смысле забесплатно ?
Нет конечно, но и не в стоимость сервера. Мне интересно как они выглядят и какой у них разъём подключения
Shaker
Сколько нужно слотов ?
Shaker
Да выглядят как обычный BP, разъемы HD sas, как правило, есть с резервированием, есть без. Резервированием nvme если честно никто не пользовались.
Shaker
https://www.supermicro.com/en/products/accessories/type
Vladislav
https://aliexpress.ru/item/1005004329776315.html Да я вот тоже наткнулся на Алике, задумался
Shaker
бывает и такое.... но все зависит от конечной задачи
Shaker
Shaker
Failover with RAID Cards and Multiple HBAs
Shaker
https://www.supermicro.com/manuals/other/BPN-NVMe3-216A-N4.pdf
Shaker
Подробности тут
Shaker
Вот что самое приятное, можно на нескольких BP собрать единый массив из NVME
Shaker
Shaker
У нас такой вариант, правда не для ZFS
Vladislav
Да, как раз то что надо для HA решения
Ivan
8 метров запаса будет, если вдруг диски по размерам отличаются
Maksim
ну вот на одной машине он откусл 8 метров с конца, остальное себе забрал
Maksim
а на другой пока не понял как посмотреть (truenas потому что)
Maksim
Точно также
у меня там нет lsblk почему-то. нашёл скрипт, но он пустого места не показал(