Ответы пользователя по тегу ZFS
  • Можно и нужно ли развернуть ZFS перед/при установкой FreeBSD?

    athacker
    @athacker
    FYI: Инсталлятор фряхи работает на уже загруженной и рабочей системе. Там есть консоль и всё такое. Зайдя в консоль, можете делать с дисками что угодно. Например, собрать ZFS пул нужной вам конфигурации.

    С другой стороны, инсталлятор уже умеет ставить фрю на ZFS, поэтому в общем случае, даже в консоль лазать не нужно. Возможно, там нельзя будет подключить SSD под L2ARC, но сконфигурить RAIDZ и установить туда систему -- точно можно. А L2ARC можно сконфигурировать позже, загрузившись со свежеустановленной системы.
    Ответ написан
  • Какую скорость записи можно выжать из бюджетной СХД?

    athacker
    @athacker
    Тут надо чётко понимать несколько вещей.

    1) Физику не обманешь. Какие бы ни были ухищрения, при реально высокой интенсивности записи они мало чем помогают. Реально немножко помочь может кэширование записи и то, что называется coalescing -- т. е. система группирует блоки перед записью таким образом, чтобы можно было (ну, если совсем на пальцах) записать их в один пролёт головки над поверхностью. Основная же нагрузка всё равно придётся на диски, и тут вариант ускорения записи ровно один -- это как можно больше шпинделей, как можно более оборотистые диски (15k RPM вместо 7200 RPM), либо вообще переход на SSD/NVMe. Так что лучше взять пачку дисков мЕньшего объёма, но в бОльшем количестве, и скорость записи будет выше.

    2) ZIL -- это не кэш записи. Это всего лишь журнал, который обеспечивает синхронную запись и позволяет сохранить ФС в консистентном состоянии даже при сбоях. В ZFS при синхронной записи по факту запись ведётся дважды -- сначала данные идут в ZIL, а потом уже переписываются на основной диск. Если под ZIL не выделялось отдельного устройства, ZIL размещается на основном диске. Разумеется, размещение ZIL на SSD операцию записи ускоряет. Но один тонкий момент -- ускоряет он не в абсолютных значениях, а относительно того случая, когда ZIL размещён на основных (HDD) дисках.

    Учитывая, что вам требуется NFS, который использует только синхронную запись, то у вас вариантов два -- размещать ZIL на SSD, либо в свойства ZFS-датасета, который будет презентоваться по NFS, принудительно включить асинхронную запись. Выбор решения зависит от того, что конкретно вы хотите получить. Если вам важна консистентность данных -- лучше оставить sync и разместить ZIL на SSD. Но надо понимать, что async запись будет в любом случае несколько быстрее, так как запись в ZIL -- это всё равно задержка и дополнительный оверхед. Так как даже если ZIL размещён на SSD -- время доступа к нему и запись данных не нулевая.

    3) Кэш в оперативке реально помогает (ARC). Учитывая, что у вас также будет параллельно идти и чтение, то увеличение оперативы имеет смысл, так как тот факт, что некоторые блоки были прочитаны из ARC означают, что эти блоки не были прочитаны с дисков, т. е. дискам не пришлось делать дополнительные телодвижения для поиска и чтения с блинов этих блоков. А значит, диски могут больше времени уделить записи. Что касается стоит ли добавлять L2ARC -- это вопрос философский, и сильно зависит от нагрузки. По моим наблюдениям в сценарии размещения на ZFS виртуалок и набортном объёме RAM в 128 Гб, до L2ARC уже ничего не долетало. Сравнительные цифры -- ARC hits/misses составляло в среднем примерно 80k/15k в минуту, а в L2ARC цифры были в районе 15/800. Т.е. 15 попаданий на 800 запросов к L2ARC. В итоге мы решили даже не тратить SSD на L2ARC.

    Ещё один момент -- если у вас не предполагается последовательного чтения, а будет чистый рандом (например, при размещении виртуалок это именно так), то следует отключить ZFS prefetch. Его отключение на синтетических тестах показало рост IOPS примерно на 15-20%, при read/write 20%/80% и полном рандоме обращений.

    А вообще, нужно развернуть систему, поставить её на мониторинг, и понаблюдать, что и как происходит. Фря выдаёт достаточно информации, чтобы делать выводы -- нужен ли префетч, работает ли L2ARC, насколько эффективен ARC и т. п. Если будет необходимость -- обращайтесь в личку, скину шаблоны и конфиги для заббикс под мониторинг хранилки на базе FreeBSD + ZFS. В планах статью нарисовать по этому поводу, но это пока руки дойдут... :-)
    Ответ написан
  • Куда подевалось дисковое пространство в zfs?

    athacker
    @athacker
    Не очень понятно, что вас смущает. Вы своё пространство зарезервировали под ZVOLы. Сейчас у вас занято 6.09 Тб, и ещё 5.96 доступно в сумме на датасетах:

    hdd1/ESXi 4.06T 4.39T 389G -
    hdd1/ESXi1 1.02T 1.57T 158G -

    (вторая колонка -- available space). Что в сумме нам даёт 12.05 Тб. Плюс 728 Гб доступных на коревом датасете. В сумме получается ~12.8 Тб. Плюс-минус, с учётом метаданных, вот он ваш объём, нет?
    Ответ написан
  • Новый сервер под роутер/почтовик/файлопомойку. Ufs или zfs?

    athacker
    @athacker
    Если вопрос про домашний сервер -- то пофиг. Если в продакш куда-то, то ZFS удобнее. Да, она памяти требует несколько больше, но в основном это касается сценариев, при которых используется дедупликация. Дедупликацию, несмотря на потенциальную привлекательность, использовать дома нет смысла. Во-первых, там нечего дедуплицировать (домашние фотки не будут иметь общих блоков, чтобы хоть как-то профит от дедупликации возник). А во-вторых -- примерные требования к оперативке при включении дедупликации -- 5 Гб RAM на 1 Тб диске.

    На ZFS есть компрессия, есть возможность сделать, чтобы файлы в определённом датасете имели N копий (вместо одной). Есть снапшоты. Ну и если основная цель стоит -- поморочиться в ZFS, то тоже вполне можно использовать. Так-то у нас сервера есть с 1 Гб оперативы, стоящие на ZFS, и вполне нормально себя чувствуют.
    Ответ написан
  • Почему точка монтирования в 2 раза меньше ZFS пула?

    athacker
    @athacker
    А огласите результат команд zfs list и zfs get all data/data

    Возможно, FreeNAS выставляет квоту сразу, чтобы файловой системе не было мучительно больно, если места на датасете останется меньше определённого лимита. ZFS в таких случаях испытывает затруднения.
    Ответ написан