====== Unraid ====== Unraid — это платный дистрибутив домашнего файлового сервера с обязательной для всех поддержкой контейнеров и виртуализации. Основное отличие этого дистрибутива в проприетарной технологии защиты от выхода из строя дисков (вместо RAID). В данной ОС не предусмотрено использование RAID поэтому видимо и было выбрано название unRAID. {{:blog:2022:09:25:20220925-205802.png}} Список возможностей на словах выглядит внушающее: * Многоуровневое хранение с поддержкой двух уровней (об этом подробнее ниже); * Загрузка с USB (это единственный вариант запуска системы); * Встроенный магазин приложений; * Встроенная поддержка виртуальных машин и Docker движок; * Встроенная поддержка WireGuard; Основное хранилище в данной системе представлено группой, назовем её unRAID группа, потому что именно она реализует фирменный функционал. Наличие данного уровня хранения хоть и можно обойти, но именно по нему лицензируется продукт и именно на нем создаются файловые шары. Основные характеристики: * Объединять в одну unRAID группу до 30 дисков; * Поддержка уровня защиты от одновременного выхода из строя до двух дисков; * Диски в группе могут быть любого объема и любых характеристик (если это HDD). ОС поддерживает следующие дополнительные к unRAID группе способы хранения: * до 35 пулов по 30 дисков каждый, которые могут быть объединены в Stripe или Mirror (средствами BTRFS); * подключение внешних дисков и файловых шар; * плагин для поддержки ZFS; ===== Лицензирование ===== Лицензируется **только количество дисков в unRAID группе**. На 2022 год существует 3 вида лицензий: - Basic - 6 дисков, $59; - Plus - 12 дисков, $89; - Pro - без ограничений (30 дисков) - $129; Лицензия приобретается одноразово, подписки нет, техподдержка сообществом. Лицензия привязывается к GUID флеш-диска с которого система загружается, поддерживается смена GUID лицензии при гибели флешки. Есть пробный период, и возможность докупить лицензию до более высокого уровня за разницу в цене. ===== Многоуровневое хранение ===== Функционал многоуровневого хранения поддерживает использование выделенных пулов для ускорения операций записи (подразумевается, что это будут быстрые диски, хотя никто вас не ограничивает в выборе) и фиксации определенных папок в данном пуле. В системе данный функционал называется "Cache Pool" и реализован он достаточно просто: - Новые данные пишутся на SSD диски; - По расписанию запускается команда ''mover'' - модифицированная версия rsync которая прозрачно переносит файлы с SSD на HDD; {{:blog:2022:09:25:20220925-214906.png}} Основные характеристики пула в таблице, в Enterprise-терминах: ^ Параметр ^ Значение ^ | Уровни хранения | 2 | | Тип кэш-дисков | Любой | | Емкость кэш-дисков добавляется к хранилищу | Да | | Кол-во кэш-дисков на шару | до 30 | | Уровень RAID кэш-дисков | RAID0 / RAID1 | | Как данные попадают в кэш | При записи в шару | | Какие данные покидают кэш | По расписанию | Система поддерживает до 35 именных пулов, каждый из которых может состоять из 30 дисков. В пуле работает файловая система BTRFS и штатно поддерживается либо Stripe либо Mirror. {{:blog:2022:09:25:20220925-212438.png}} Для каждой шары (так тут называются системные папки, даже если к ним нет общего доступа) поддерживается установка трёх режимов работы с пулом: - "No" - данные записываются сразу в unRAID группу, минуя Cache Pool; - "Yes" - данные записываются в Cache Pool, по расписанию все данные этой шары из Cache Pool копируются в unRAID группу; - "Prefer"- данные записываются в Cache Pool, по расписанию все данные этой шары из unRAID группы (если они там есть) копируются в Cache Pool, если там достаточно места. Если в Cache Pool недостаточно места данные записываются в unRAID группу. - "Only" - данные записываются в Cache Pool и, если там недостаточно места - выдается ошибка. {{:blog:2022:09:25:20220925-212957.png}} Существуют плагины-надстройки, которые позволяют тонко настраивать параметры команды ''mover'' но они вносят нестабильность в процесс работы и достаточно топорно выполнены, хотя позволяют перемещать, например только файлы старше определенного возраста или размера. ==== Разметка дисков с использованием ZFS ==== {{page>wiki:nas:unraid:zfs&noheader&permalink}}