Alexandr
направьте пожалусйта меня в правильное направление.....
George
это не я готовил, меня не надо пинать))
из бекпортов 0.8 zfs поставьте просто
Владимир
из бекпортов 0.8 zfs поставьте просто
у меня и так из бекпортов
George
у меня и так из бекпортов
весь поставьте ж тогда)
George
https://openzfs.github.io/openzfs-docs/man/8/zpoolconcepts.8.html?highlight=allocation%20class#Special_Allocation_Class
George
тут немного
Alexandr
спасибо!
George
вообще что-то не очень документация по special
Alexandr
та я офигел.....
George
но там всё просто
Alexandr
я ждал почти год пока оно ко мне на ффринас заедет
Alexandr
пошел читать доки, чтобы все паратемтры понимать
Alexandr
и почти ничего нету
Alexandr
нашел только на проксмоксе
Alexandr
но там всё просто
да, я понимаю, конгда добавляешь новые фичи в очень важный сторедж, то хочется каждый шаг 10 раза перевроверить)
Alexandr
чтобы ничего не запороть....
George
пошел читать доки, чтобы все паратемтры понимать
ну там особо ничего по параметрам, это обычный vdev только с правилами приоритета по записи, плюс 2 параметра чтоли - писать ли ddt и мелкие блоки такого то размера
Alexandr
да, наверное так и сделаю
Alexandr
сначала на стенде, а потом на сторедж уже
Alexandr
а подскажите еще, если добавить сначала 1 девайс как спешиал, к нему же потом зеркальный можно добавить?
George
да, наверное так и сделаю
вот тут можете искать по манам и доке, которую пока я пытаюсь делать) https://openzfs.github.io/openzfs-docs/search.html?q=allocation+class&check_keywords=yes&area=default
Alexandr
ооо, еще раз спасибо!
Alexandr
да, добавлять буду к raidz1
Alexandr
понял, спасибо!
George
главное, что надо понимать - special vdev это такой же vdev, к нему применяются те же требования, т.е. redundancy обязательно, иначе при его вылете - потеря пула
Alexandr
да, я понимаю
George
да, добавлять буду к raidz1
zpool remove не будет работать на special, учтите это, т.е. special из такого пула исключить нельзя
Alexandr
просто мне чтобы 2й добавить надо далеко ехать
George
(пока)
Alexandr
я хотел добавить сейчас на тот что там уже стоит спешиал
Alexandr
а потом приехать, сунуть 2й диск, и добавить его как зеркало к 1му
George
просто мне чтобы 2й добавить надо далеко ехать
ну, если бекапы есть, то можно обойти конечно, создав миррор, где второй диск - файлик, и его offline сразу сделать
Alexandr
ага, понял
George
но, опять же, потеря этого диска = потеря пула
Alexandr
тоесть к ниму применяются все теже правила
Alexandr
спасибо еще раз!
Alexandr
вы как всегда всех выручаете)
Evgenii
А зачем special нужен?
Evgenii
special allocation class
George
А зачем special нужен?
хранить мету/ddt/мелкие блоки на ssd, а остальное - на медленных hdd
George
вообще тащили специально под draid, raidz/draid очень плохи для мелкого блока (оно же и мета), теперь просто создаёшь special vdev на ssd и всё хорошо
Nikita
Кстати, с ходу не нашел ответа
Evgenii
Спасибо за ответ! В интернете сейчас мало информации про это.
Nikita
Если сделать spetial ничтожно малым (1 гиг на терабайт сырого места), выставить размер блока так, чтобы вся запись шла на спешиал, и активно писать - что будет происходить в момент заполнения spetial на 100%?
Nikita
И всегда ли в подобном сценарии spetial будет заполнен на 100%?
Nikita
Или во время того же ресильверинга содержимое спешиал перегонится на другие vdev?
George
Или во время того же ресильверинга содержимое спешиал перегонится на другие vdev?
в zfs сейчас ничего никогда не меняется без явной перезаписи данных
Nikita
при заполнении special запись пойдёт на другие vdevы обычные.
Но данные на spetial будут перезаписаны? Ибо пока получается страшная ситуация. Сравнительно небольшой (в сравнении с общим объемом пула) spetial быстро заполнится и выходит НИКОГДА не будет перезаписан? Ну т.е. предусмотрена вообще процедура переноса содержимого spetial на другие vdev в пуле? Запускал бы в конце недели разок, спешиал очищался и в понедельник опять шла бы запись на свободные pci-ные ssd.
George
а только vdev для записи мелких блоков и меты, которые на hdd по iops плохо ложатся
Nikita
special это не про tiers, если что, это НЕ буфер всей записи
zfs set special_small_blocks=128K mybestpool Не будет вестись вся запись на spetial?
Nikolay
@gmelikov я, кстати, обновил прошивку на special ssd путём detach-a и дальнейшего attach-a 😎 Ладошки то вспотели в процессе 😆
George
zfs set special_small_blocks=128K mybestpool Не будет вестись вся запись на spetial?
вы что доказать то хотите?) смотря каким блоком пишется, если recordsize=1M то нет
George
в том и смысл этой настройки
George
что можно, указав recordsize=1М и special_small_blocks=128K, сделать следующее: - файлы размером ДО 128К едут на special - файлы больше 128К едут на hdd
George
указывать их равными бессмысленно, да
Nikita
вы что доказать то хотите?) смотря каким блоком пишется, если recordsize=1M то нет
Ни в коем разе, я просветиться хочу. Чтобы не пороть чепухи. Да, я само собой имел ввиду сценарий при котором recordsize <= spetial_small_blocks
George
Ни в коем разе, я просветиться хочу. Чтобы не пороть чепухи. Да, я само собой имел ввиду сценарий при котором recordsize <= spetial_small_blocks
ага, т.е. делать их равными смысла нет, т.к. получится обычный vdev, на который всё поедет приоритетом)
George
а в случае zvol как это будет работать?
iirc также, просто относительно vblocksize
Nikita
указывать их равными бессмысленно, да
Была задумка использовать спешиал именно в роли буфера на запись, а после сливать на другие vdev. Была надежда, что есть операция перегона.
George
iirc также, просто относительно vblocksize
но там блок всегда фиксированный, т.е. не прокатит подход про "мелкие файлики на ssd"
Dmitry
iirc также, просто относительно vblocksize
т.е. если прилетит мелкий блок, то пойдет на спешл, а крупняк как обычно?
Dmitry
Жаль на BSD этого еще нет ))
George
в lustre есть такое, кстати
Nikita
George: 13565 George: 13564 Ого. Надо прогуглить. Использовал долгое время storage spaces, хотел те же принципы перенести на zfs.
George
т.е. толку не будет?
толк есть в части меты и ddt
George
а special_small_blocks iirc не поможет для zvol, да
Sergei
Кто-нибудь сталкивался с такими ошибками? Из-за чего могут быть?