Sergei
как посмотреть?)) я не нашел)
можно через sysfs, но надо помнить что есть таблица исключений
George
фух, перевёз доку по оптимизациям и железу на гитхаб - https://openzfs.github.io/openzfs-docs/Performance%20and%20Tuning/Workload%20Tuning.html - https://openzfs.github.io/openzfs-docs/Performance%20and%20Tuning/Hardware.html Welcome фиксы по оптимизациям :)
Алексей
Я думал на русский перевёл
George
сначала на английском в кучу всё соберём)
Fedor
Я думал на русский перевёл
Помоги сообществу :)
Алексей
Да я ж сам русский ждал, какой с меня переводчик)
Qwerty
Так-с. Коллеги, я установил zfs 2.0 rc1 Ubuntu 18.04.5 LTS 5.4-kernel Пакеты libzfs2 zfs zfs-dkms zfs-initramfsПосле перезагрузки пул не вижу, zpool status no pools availableКто, что подскажет, какой пакет нужно поставить? update-initramfs делал)
Qwerty
zpool import не делали видимо?)
не-а. А что мне так нужно делать каждый раз при перезагрузке О_о
George
если что - пакет из апстрима и пакет в дистрибутиве могут отличаться, в части как раз автоимпорта между ребутами, точно не скажу
Qwerty
Но таки работает, спасибо. И самое прикольное, что если не сделать импорт, а снова пул пересоздать, то он даже не ругнется, что там есть метка zfs. а создаст с нуля.
Fedor
Мощный баг. :)
Nikolay
Я на боевом серваке поменял арк-сайз в конфиге и сделал "update-initramfs -u" какие-то ворнинги получил, "не могу найти / что-то, нашёл /porc" как-то так. Теперь боюсь ребутать его )
Vladislav
Такой SSD умер ровно после 3 лет эксплуатации Disk /dev/sdb: 223.6 GiB, 240057409536 bytes, 468862128 sectors Disk model: INTEL SSDSC2CW24 Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes #негатив #запланированное_устаревание
Fedor
смарты покажут.
Nikolay
#Вопрос Если я поделю диск на разделы для special и slog. А потом special станет не хватать. Slog я могу удалить из пула а потом и раздел. А как поступить со спешиал ? Измененить раздел через fdisk надо удалить раздел и создать большего размера и zfs сам подхватит автоматом ? Что в это время будет с пулом ? Какая последовательность действий ?
Nikolay
Сразу большой сделать если, ничего же страшного ?
Nikolay
емкость 447 Гб: 350 под спешиал и 50 на слог. И пусть живёт себе.
Nikolay
да, два одинаковых ссд.
Nikolay
Как-то так: zpool add mega special mirror /dev/sdj1 /dev/sdk1
Nikolay
под gpt диск размечать ?
riv
#Вопрос Если я поделю диск на разделы для special и slog. А потом special станет не хватать. Slog я могу удалить из пула а потом и раздел. А как поступить со спешиал ? Измененить раздел через fdisk надо удалить раздел и создать большего размера и zfs сам подхватит автоматом ? Что в это время будет с пулом ? Какая последовательность действий ?
Лучше, конечно оставить пространство для манёвра. А какая ёмкость пула? Емкость special ~ 1% от суммарной ёмкости данных в пуле или около 10Гб на 1Тб Емкость slog зависит от нагрузки, но как правило, не большая 10-20Гб. Кэшь тоже может быть полезен.
Nikolay
кэш же увеличит износ ссд
Nikolay
Вооще я видел формулу для spec vdev: size/block size*(blocksize+checksum)
Nikolay
но блок сайз разный может быть на разных сетах и зволах
riv
Вопрос на сколько? Он не вымывается, например, интенсивным чтением. В кэшь попадают только действительно часто читающиеся данные. Например, у меня на у5ТБ пуле он вообще почему то занят на 10-20Гб всего (т.к пул работает в основном на запись, а читаются всегда разные данные)
riv
Вооще я видел формулу для spec vdev: size/block size*(blocksize+checksum)
Я по опыту. У меня на больших пулах почему то везде около 1% занято. Где выдал с запасом, часть свободная осталась. Оказалось точнее 1.23%
riv
Обязательно не забудте включить autotrim=on или периодически запускать trim на пуле - это продлит жизнь ssd и сильно увеличит её быстродействие.
riv
Вот пример, кстати тут чуть больше 1%
Vladimir
а почему не нативным шифрованием?
riv
Делалось давно, его тогда ещё не существовало. Задача была защитить данные на случай "кражи" сервера.
riv
Обратите внимание, насколько полезен кэш и что он, в отличие от special, работает, в основном, на чтение и не заполнен полностью. По этому, кэшь точно не приведёт к сильному усилению износа. А вот special работает исключительно на запись. Но он драматически улучшает производительность пула. Это файловый сервер с профилями windows-пользователей
riv
:-) Классные стикеры, утащил себе!
Nikolay
Вот пример, кстати тут чуть больше 1%
Сделаю в районе 1,3% - 220Гб. Золотая середина )
riv
Сделаю в районе 1,3% - 220Гб. Золотая середина )
Я не вижу ничего плохого в использовании lvm. Оверхед только в тестах заметен. Но если уж очень против, можно, в случае чего, двигать разделы утилитой gparted. Она работает через x11 и ssh.
riv
кэш на отдельный ссд рекомендуюется выносить ?
Рекомендуется, но не обязательно. Смотрите средняя производительность пула всё равно свящана со скорость обычных дисков. На фоне их низкой производительности, ssd работает так быстпо, что не важно, на отдельном устройстве кэшь или вместе slig и special. Другими словами, если приобрести для cache отдельный ssd, производительность сильно не улучшится.
Владимир
или речь про что-то другое?
riv
Речь про то, что делать если special и slog и возможно cache выделить по минимому и придётся их увеличивать. Придется их двигать или использовать lvm. Я за lvm.
Владимир
в случае лвм их потом можно ещё и на разные устройства раскидать)
Владимир
физические
riv
Ну и надо делать ресайз потом или незабыть включить autoexpand в пуле
riv
попробую увеличить special сегодня увеличением партиции
Нужно будет включить autoexpsnd в пуле, а после увеличения special, по моему, zpool status -vn Получить июцифровой id устройства и потом zpool online $id
Ivan
а трим для special реально работает ? я правильно понимаю, что автотрим нужно включать для пула hdd в котором есть special или это как-то отдельно включается ?
riv
а трим для special реально работает ? я правильно понимаю, что автотрим нужно включать для пула hdd в котором есть special или это как-то отдельно включается ?
Честно говоря, специально не проверял, но почему то уверен, что да. Посмотрите нагрузку от трим на iotop после удаления большого датасета. Там название процесса говорящее. Но если трим не включить, при люьом % занятого места, на ssd будет рано или поздно алоцировпно 100% - это с точки зрения контроллера ssd.
Ivan
кстати видел рекомендации вообще не включать трим на промышленных ссд, т.к. они делают нагрузку непрогнозируемой. и без трима эти ссд живут нормально.
Владимир
из-за чего необходимость в трим снижается
riv
на них ещё рекомендуют не размечать часть пространства
У вас и так вынуждено должен быть резерв по свободному месту в пуле в ~30%. Я просто оставляю соопоставимый резерв на всех vdev и думаю, что это так же полезно. Но зачем нам два резерва? Пусть лучше будет трим. Отдельно стоит упомянуть недавно обсуждавшееся отключение writeback кэша для промышленных ssd, которое, как ни стрснно, должно улучшать производительность синхронной записи. Это должно быть актуал но доя special и slog, но я ещё не проверял как на самом деле.
riv
Так понимаю что простого lvextend достаточно без дополнительных плясок ?
Ну да и zpool autoexpand=on + zpool online $devid Совсем само вроде не екстендится без пинка :-) надо проверить.
Владимир
writeback - речь про настройку на самом SSD или про кеш на пуле?
riv
writeback - речь про настройку на самом SSD или про кеш на пуле?
Типа когда прилетает cach flush ssd очищает вась кэш: и что надо и что не надо, а если от отключен, в sata всё срабатывает как надо, а в sas такой проблемы быть не долдно Но я бы проверил эти утверждения. Кто ссылку на статью кинет? У меня пк не под рукой.
Igor
коллеги
Igor
даю вот так
Igor
zfs create -o recordsize=4M -o atime=off -o xattr=off -o exec=off -o compression=on spoolL/storj5
Igor
получаю
Igor
cannot create 'spoolL/storj5': 'recordsize' must be power of 2 from 512B to 1M
Vladimir
нужно в ядре включать экстра рекорд сайз
Vladimir
поищи опцию, я не помню
Vladimir
там до 16 можно
Igor
притом что УЖЕ на этому пуле есть датасет
Igor
riv
А в каких случаях нужны такие огромные рекордсайзы и что они дают?
Igor
в очень и очень специфическом случае.
George
При удалении спешл из пула zfs перенесёт данные на пул. После этого создать новый раздел и добавить ещё раз в пул. Но на него будут попадать только вновь записываемые данные
не стоит этим механизмом пользоваться просто так. Можно просто special раздел делать в начале диска, потом при надобности сносится slog l2arc, раздел увеличивается руками, делается autoexpand на vdev, профит
Igor
нашел!
Igor
echo 4194304 > /sys/module/zfs/parameters/zfs_max_recordsize