Первое ознакомление с TrueNAS начинается с понятия «Pool» (Пул). Дословно на русский язык его можно перевести как «Общий фонд» или «Объединение«. Без Пулов невозможно использовать хранилище данных. TrueNAS использует Пулы хранения данных ZFS для эффективного хранения и защиты данных.
Пулы носителей (Storage pools) — это подключенные диски, организованные в виртуальные устройства (vdev). ZFS и TrueNAS периодически проверяют и «лечат» всякий раз, когда в Пуле обнаруживается плохой блок. Диски расположены внутри виртуальных устройств, чтобы обеспечить различную степень избыточности и производительности. Это позволяет создавать:
- высокопроизводительные Пулы,
- Пулы, максимально увеличивающие время жизни данных,
- и все промежуточные ситуации.
Обзор потребностей в хранении
Перед созданием Пула Хранения настоятельно рекомендуется просмотреть доступные системные ресурсы и спланировать вариант использования хранилища.
- При хранении важной информации большее количество дисков, выделенных для Пула, повышает избыточность.
- Увеличение общего объема доступного хранилища за счет избыточности или производительности означает выделение дисков большого объема и настройку Пула для минимальной избыточности.
- Максимизация производительности Пула означает установку и выделение высокоскоростных SSD-накопителей в Пуле.
Определение ваших конкретных требований к хранилищу является важным шагом перед созданием Пула.
Общая схема логики работы Пула
Пулы могут состоять из множества «виртуальных устройств» (vDevs). В TrueNAS они называются vDev. Важно здесь то, что состоять эти устройства будут всегда из каких-то реальных физических дисков, которые у вас есть и которые воткнуты в сервер.

Виды виртуальных устройств для Пула в TrueNAS
И в этом месте возникает вопрос. Какие варианты виртуальных устройств для Пулов предусмотрены в TrueNAS?
Список вариантов такой:
Самым популярным видом виртуальных устройств является Data. Собственно в таких виртуальных устройствах и будут храниться наши драгоценные данные.
В результате схему строения Пула можно немного уточнить. Например так:

Из этой схемы становится понятно, что Пул — это целая система из различных виртуальных устройств, которые заняты тем, что поддерживают сохранность и доступность важных данных.
Каждый вид виртуального устройства решает какую-то свою конкретную задачу.
Какие задачи решают виртуальные устройства в Пуле хранилища в TrueNAS?
Виртуальные устройства с типом Data
Стандартный vdev для операций основного хранилища. Для каждого Пула хранения требуется по крайней мере один vdev данных. Конфигурация Data vdev обычно влияет на настройку других типов vdev.
Виртуальные устройства с типом Cache
Кэш чтения ZFS L2ARC, используемый с быстрыми устройствами для ускорения операций чтения. Вы можете добавить или удалить это после создания Пула.
Виртуальные устройства с типом Log
Устройство ZFS LOG, повышающее скорость синхронной записи. Вы можете добавить или удалить это после создания Пула.
Виртуальные устройства с типом Hot Spare
Горячий резерв — это диски, зарезервированные для вставки в Data vdev в случае сбоя активного диска. Горячие резервы временно используются в качестве замены отказавших дисков, чтобы предотвратить увеличение Пула и сценарии потери данных.
Когда неисправный диск заменяется новым диском, «горячий» резерв возвращается в неактивное состояние и снова становится доступным в качестве «горячего» резерва.
Когда отказавший диск только отсоединен от Пула, временный «горячий» резерв повышается до члена vdev с полными данными и больше не доступен в качестве «горячего» резерва.
Виртуальные устройства с типом Metadata
Специальный класс распределения, используемый для создания Fusion Pools для увеличения производительности метаданных и ввода-вывода небольших блоков.
Виртуальные устройства с типом Dedup
Дедуплицированные vdev хранят дедупликацию ZFS. Требуется выделение X ГиБ для каждого X ТиБ общего хранилища. Например, 1 ГиБ емкости дедупликации vdev на каждый 1 ТиБ доступности Data vdev.
Итог
Пул — это фундамент дальнейшего управления данными, которые будут храниться на этом сервере. Когда есть Пул и хотя бы одно устройство Data, только тогда можно создавать «Наборы Данных» (Datasets). Это ещё одна абстракция на уровне TrueNAS.
Наборами данных можно разграничивать объёмы хранения для локальных виртуальных машин самого TrueNAS.
Наборами данных можно создавать общие сетевые диски для других операционных систем в сети.
Информационные ссылки
Официальная документация TrueNAS — https://www.truenas.com/docs/core/coretutorials/storage/pools/poolcreate/