СоХабр закрыт.
С 13.05.2019 изменения постов больше не отслеживаются, и новые посты не сохраняются.
На хабре не так давно появилась серия статей о построении домашнего мини-сервера/NAS и я решил поделиться своим опытом в этом направлении. Возможно он будет кому-то полезен так как информации о unRAID в русском сегменте интернета практически нет, а поговорить есть о чем.
В этой части мы посмотрим на unRAID, его особенности и сферу использования, а уже в следующей — альтернативы, мой опыт использования и подводные камни.
Если тема вам интересна — прошу под кат.
Осторожно — под катом много ссылок на англоязычные ресурсы.
unRAID — это операционная система (на основе Slackware), созданная фирмой Lime technology, позволяющая упростить жизнь людям, которые хотят создать свой мини-сервер/NAS/VM-хост и тд.
Что же мы получаем? Примерно следующее:
Тут все просто (с некоторыми оговорками) — поддерживаются диски любого размера (для parity-диска следует выбирать наиболее ёмкий диск).
Основная идея — JBOD который защищен Parity-диском. Сам процесс пемещения данных можно проилюстрировать как-то так (картинка со страницы про nas):
Выглядит несложно, верно? Тогда давайте добавим немного cache. Зачем? Всё дело в скорости и удобстве использования.
Вот наглядный пример скорости передачи данных по сети на NAS (ссылки на youtube) без кэша и с ним.
Данные будут переносится с cache каждый день в установленное время (по умолчанию в 03:00) поэтому cache желательно делать из двух дисков (они будут в RAID 1) для большей надежности:
Объем cache-дисков следуют выбирать по формуле:
Объем данных которые вы прогоняете через NAS за день + место для дисков виртуальных машин + место для docker-образов + место для временных файлов (торренты и тд)
Я не рассказывал о том что делать если вылетает parity диск / диск с данными / один из дисков в cache pool, сколько занимает перестройка дискового массива — это всё обширные темы для отдельной статьи, но хотел бы заметить, что основное отличие unRAID от большинства RAID-систем в том, что unRAID сохраняет данные на отдельные диски и позволяет создавать пользователям свои иерархии папок, использовать любые доступные диски и тд.
Больше об этом можно почитать в секции unRAID Shares по этой ссылке.
unRAID поддерживает Docker-контейнеры что открывает двери в дивный мир контейнеризации — писать об этом много не буду — на хабре есть много публикаций, которые отлично раскрывают эту тему. Кроме того есть обширная библиотека плагинов, позволяющие настроить систему как угодно вам. Подключить любой ups, управлять подключёнными дисками вне unRAID, использовать ZFS или поднять OpenVPN сервер.
Всё как во взрослых системах — KVM с использованием QEMU, libvirt, VFIO*, VirtIO и VirtFS
Всё это в конечном счёте даёт практически полную свободу в утилизации ресурсов системы:
Продолжать можно практически бесконечно — ограничены вы только бюджетом, желанием и временем на все это.
Окей, допустим я вас заинтересовал. Что делать дальше?
О чем стоит помнить:
Для своего мини-сервера я выбрал следущие железки:
По прошествии какого-то времени могу сказать что Wi-Fi AC не нужен, а WD Red 8TB заменил бы на 6TB (по личным ощущениям восьмёрки знатно щёлкаю при парковке).
Корпус позволяет впихнуть до 12 3.5" HDD + 2 2.5" SSD, длинную видеокарту, поддерживает mATX/mITX платы, установку водяного охлаждения с двумя 120мм кулерами и хорошо обдувается.
Не хотелось бы раздувать статью — ссылок в ней уже слишком много (38). В следующей части мы посмотрим как выглядит unRAID, а так же я расскажу о некоторых трюках связанных с использованием Intel Core i7-8700K (нетривиальное пробрасывание интегрированной видеокарты и звука). Должно быть интересно.
Спасибо за уделенное время. Есть небольшая просьба — обо всех опечатках/ошибках писать в личные сообщения, спасибо.
комментарии (2)