Всем привет! Делюсь опытом сборки NAS сервера на базе очень интересной (на мой взгляд) материнской платы.
Введение
Гуляя по просторам алиэкспресса наткнулся на специфическую материнскую плату, специализированную под построение NAS сервера. Решено было приобрести и собрать решение на замену старому.
Сама плата зацепила тем, что на ней уже 12(!!!) разъемов SATA3, что более чем покрывает текущие и будущие мои потребности по подключенным дискам. Также на плате уже есть 2 порта Gigabit Ethernet, и встроен процессор Celeron Jasper Lake N5095 (что более чем для нужд чисто файлового сервера). И все это в формате MINI-ITX, что позволит собрать достаточно компактное решение за, примерно, 10 тыс рублей на момент написания статьи. Саму плату можно найти путем поиска на али по слову "N5095 Nas Motherboard". Судя по фото от разных продавцов, есть несколько ревизий. Как минимум, отличаются наличием порта MSATA.
Сетевая схема домашней сети такова, что есть основной компьютер-потребитель данных с NAS и он же источник загрузок. И есть остальные клиенты потребители, они получают данные через wifi роутера. Итого NAS должен быть подключен к двум сетям - сети роутера и прямой линк до PC. На PC сетевые шары смонтированы как сетевые диски. Мне так удобнее :)Немного про то, зачем мне 2 сетевых адаптера
Обзор платы
Основные характеристики (взято с али):
12*7 Pin SATA3.0, широко используется в безопасности хранения данных, жесткий диск K машина, NAS сетевое хранилище; Для процессора Celeron Jasper Lake N5095, 2,0 ~ 2,9 ГГц, 4 м кэш TDP15W; 1 * DDR4 2933MHZ SODIMM, до 16G;
2 * для адаптивной сетевой карты WGI211AT 1000M, поддержка пробуждения на LAN, бездисковой загрузки.
1 * MSATA (Выберите один из MSATA и SATA1), максимальная скорость передачи составляет 6 ГБ/сек., 1 * M2 SSD NVME/PCIE3.0 2X; TPM,
GPIO/обеспечивает 8 GPIO контроль, 1 * RS232; Название продукта: материнская плата N5095; ЦП: для Celeron N5095; BIOS: AMI 128MB BIOS, ACPI поддерживается, поддерживает питание при запуске;
Техническая Архитектура: Поддержка одноканального SO-DDR4 s, максимальная поддержка 2933 МГц, SODIMMЕмкость: максимальная поддержка 16G; Слот: 1 * DDR4 SODIMM;
Графический контроллер: поддержка s & HD Graphics; VGA: 1 * VGA, наивысшее разрешение-1920*1080 @ 60 Гц, 1*12 Pin J-VGA расширительный штыревой разъем; HDMI-Совместимость: 1 * HDMI-совместимый интерфейс. Максимальное разрешение 4096*2160 @ 60 ГцПоддержка нескольких дисплеев: Поддержка синхронного или Асинхронного двойного вывода дисплея
MSATA: интерфейс 1 * M-SATA, максимальная скорость передачи составляет 6 ГБ/сек. (выберите MSATA или SATA1)
-
SATA: 12*7 Pin SATA3.0 интерфейс, максимальная скорость передачи составляет 6 ГБ/сек. (Выберите один из MSATA и SATA1)
-
M2-SSD: 1 * Интерфейс PCIE3.0 2X M.2, высокоскоростной протокол NVME, характеристики устройства опционально: 2280, 2260
-
RJ45: 2 * для WGI211AT 10M/100M1000M Адаптивная сетевая карта, поддержка LAN wake-up, бездисковая загрузка
-
Линейный выход: чип ALC662, поддерживает интерфейс переднего F-AUDIO
-
USB3.0: внешний 2 * USB3.0
-
USB2.0: внешний 2 * USB2.0, встроенный 4 * USB2.0
-
RS232: Встроенный 1 * RS232
-
GPIO: Поддержка 8 GPIO
-
TPM: TPM2.0 аппаратное шифрование (опционально)
-
Сторожевая собака: Поддержка 4 ~ 255 секунд сторожевой таймер
Напряжение: Поддержка + 12V, 3,3 V, 5V, Процессор Vcore, DDR, Мощность Напряжение обнаружения -
Температура: Поддержка определения температуры ЦП
-
Вентилятор: Поддержка определения скорости вентилятора процессора и интеллектуального управления вентилятором
-
PWR SW: PWR BTN кнопка (кнопка питания)
-
ATX: 24Pin + 8 Pin ATX источник питания
-
Размер изделия: 17х17см
-
Цвет: зеленый
-
Материал: PCB + металл
Плата приходит в картонной коробке, обернутой пупыркой с большими ячейками
По комплектации:
-
Сама плата
-
Заглушка на заднюю стенку
Иии... Все!
Ни инструкций, ни буклетов, ни наклеек, ни кабелей и болтов! Возможно, кому то это будет критично, но подробного мануала по плате, как я понял по переписке с продавцом, не существует! При запросе скинуть мануал по почте он с радостью отправил файл pdf, внутри которого была та же спецификация, но на китайском:)
Фото мануала
Продолжаем unboxing
По отзывам и описаниям были комментарии, что на плате вместо контроллеров сети Intel ставят Realtek, но на полученной мной версии вроде как Intel (но, судя по фото, на другом чипе). Возможно, есть несколько ревизий таких плат.
Еще комментариях указывали на шумность бипера. Да, при включении он издает громкий пик, решено было просто закрыть его заглушкой https://www.thingiverse.com/thing:2943218, напечатанной на 3d-принтере.
Из особенностей платы хотел бы отметить, что внутри самой платы расположены 2 порта USB. Такое я встречал только на материнских платах HP Microserver, что позволяет установить флешку с ОС внутри корпуса (TrueNAS и другие).
Также в тех же комментариях жаловались на шум стокового вентилятора, я решил заранее заказать большего размера, выбор пал на Gembird 80x80x25 (D8025HM-4), гидродинамический, 4 pin (стоковый 3 pin). После запуска в стоке шум есть, но субъективно, небольшой. Если вам не критично, можно оставить стоковый, но я решил поменять. Возможно, под нагрузкой шум был бы, но я практически сразу заменил вентилятор.
Сначала хотел заморочится с каким-нибудь креплением-переходником, но решил закрепить на существующий корпус радиатора, протянув пластиковые стяжки 2.5/2 мм под радиатором и притянув к нему.
На плате всего один разъем под память, но, опять же, для моих нужд это не было ограничением, и одной планки в 8Гб было бы более чем достаточно. В одном из отзывов указывалась модель Apacer DDR4 2666 Мгц 8 ГБ CL 19, решено было ее же и взять. Стоимость ~1500р на момент написания статьи.
В качестве системного жесткого диска решено было приобрести SSD диск AMD Radeon R5 NVMe Series M.2 PCI-E 3.0 (R5MP256G8). Стоимость ~1600р на момент написания статьи.
Резюмируя по плате (мое субъективное мнение):
Плюсы:
-
Встроенный процессор, по мощности под простое решение (кому критично ZFS, мощности может недостаточно. Но я не из таких :) )
-
12 потов SATA
-
Есть разъем m2 под системный диск (не лишает одного разъема SATA)
-
2 порта Gigabit Ethernet
-
Форм фактор mini-itx
-
Есть встроенный hdmi и VGA (не нужна видеокарта)
-
Цена
Минусы:
-
Мощность встроенного процессора может быть недостаточна под нужды более универсального сервера под решение ресурсоемких задач
-
Нет дополнительных разъемов (PCI-E), расширить платами не получится.
-
Отсутствие внятного подробного мануала и поддержки
-
Непонятный китайский бренд
Немного фото BIOS
Кастомизация корпуса
Сам NAS сервер у меня живет в нише/комбинации ikea БЕСТО, новый сервер будет жить там же. Ниша хоть и достаточно большая, но полноценный ATX корпус туда влазит с трудом. Поэтому под новый корпус были сформулированы следующие требования:
-
Сам внешний вид не важен, сервер будет стоять внутри шкафа
-
Компактность, желательно корпус microATX (хочу иметь возможность поставить в нишу еще что-то, например ИБП)
-
Должна быть возможность установки полноразмерного БП (у меня он был)
-
Возможность простой и быстрой установки 8-10 дисков 3.5
-
Установка дисков через пластиковые направляющие (в предыдущем корпусе было именно так, очень понравилось, но там было только 6 таких посадочных мест, хотелось бы больше)
-
Боковая установка дисков (упрощает, как по мне, их обслуживание и улучшает обдув)
Поискав готовые корпуса не нашел ничего компактного под 10 дисков и решено было пойти другим путем.
Приобрести на али корзины под диски, как на фото ниже (2 шт). Поиск по ключевым словам "hard drive cage". Я выбрал те корзины, которые рассчитаны на 5 дисков. Цена 3500р за 2 шт с учетом стоимости доставки.
И вставить их в microATX корпус. Забегая вперед, я заказывал комплектацию корзин с вентиляторами, но по шумности они меня не устроили. Даже при подключении к 5в они достаточно сильно шумели, поэтому решено было их заменить на более тихие DeepCool UF 120. Цена 890р за шт. Также т.к. сервер будет стоять в нише, было решено снять с корзин защитные решетки для упрощения доступа к вентиляторам. В конкретно моей модели сами вентиляторы крепились к корзине, а не к решетке.
Данный формат корзин предполагает их фронтальную установку в нишу 5.25, но я хотел:
-
Горизонтально расположить диски
-
Иметь доступ сбоку корпуса для снятия/установки дисков
Такое расположение, как я считаю, оптимизирует конечный размер и сохраняет возможность нормального охлаждения дисков в корзинах. Потокам воздуха для охлаждения дисков ничего не мешает, они перпендикулярны корпусу.
В качестве корпуса был выбран microATX Exegate BAA-106 Без БП чёрный EX283056RUS. Цена 1390р.
Фото из интернета
Тк корпуса в формате microATX по длине достаточно короткие, было решено просто срезать переднюю часть и как-то прикрутить корзины.
После снятия фронтальной крышки получаем:
Фронтальная часть корпуса соединена через заклепки, их можно легко снять просто высверлив сверлом 5-6 мм. Также фронтальная часть была загнута и соединена с пластиной под материнскую плату, тут я просто разрезал ее дремелем с абразивным диском.
Получаем такой результат:
Ход размышлений был следующий:
-
Нужны какие-то проставки для соединения корзин между собой и меджу корзинами и корпусом
-
Т.к. на корзинах уже были отверстия с резьбой под стандартные корпусные болты 3.5х6 решено использовать их для крепления проставок
-
Высота корзины 146 мм, корпуса 350 мм. Проставки 3, и хотел сохранить симметричность, итого высота проставки ~19 мм
-
Проставка может состоять из двух деталей и скрепляться по соединению ласточкин хвост. Фиксировать положение можно через отдельные болты
-
У меня есть 3d принтер, поэтому будем проектировать детали под печать
По итогу размышлений и проектирования во Fusion360 родилась такая модель https://www.thingiverse.com/thing:5848585
Печать PETG AbsMaker, температура 240/60, 3 слоя стенки, заполнение 50% сетка, высота слоя 0.16
Крепление к корзине
Между собой закрепляем с помощью болтов 3х20 с потайной головкой (тут еще старая модель, подвинул отверстия для скрепления между собой)
К корпусу деталь крепится болтами с гайками (я решил использовать болты диаметром 5 мм). Сверлим корпус, прикручиваем деталь. Тут есть лайвхак. Можно отметить только одно отверстие и просверлить. Далее деталь закрепляется, выравнивается и затягивается этот один болт гайкой. Сами отверстия в детали можно использовать как направляющие для сверления остальных отверстий (я ограничился 4). Загнутые части на передней части сверху и снизу я предварительно просто спилил дремелем. По расстоянию между корзинами и блоком питания под провода из блока питания заложил примерно 35 мм.
Финальный вид после сборки:
Итоговый размер получился 32 см в длину, 35 см в высоту и 17 в глубину (без учета проводов под диски). Более чем компактно для сервера на 10 дисков, на мой взгляд.
Из дополнений было решено сохранить возможность включения через кнопку и светодиоды состояния. Их решил поставить на сам корпус сверху, между БП и корзинами. Модель данного крепления (под штатные кнопки 8.5х8х5) https://www.thingiverse.com/thing:5848598. К нему в итоге допроектировал крышечку, чтобы можно было закрыть (случайные нажатия, яркий свет светодиодов).
Еще из дополнений для снижения вибрации и шума было решено весь корпус поставить на полиуретановый туристический коврик. Нашел на wilberries идеально подходящий под размеры (нужно было подрезать немного по ширине). Крепил ее просто на двухсторонний скотч. Цена 250р.
Итоговое сравнение после установки в нишу
Установка ОС
Кратко опишу некоторые особенности, с которыми я столкнулся при установке операционной системы для сервера. Я уже использовал в предыдущем сервере openmediavault, сама ос даже в базовом функционале меня более чем устраивала, решил на новый сервер ставить ее же.
От ос мне нужно:
-
Веб интерфейс
-
Уметь через него монтировать и форматировать диски
-
Создавать софтверные массивы
-
Создавать шары samba
-
Ну и мониторинг (в который я смотрю очень редко)
Последняя (на момент написания статьи) версия уже готовой ос openmediavault (6.0) при установке не могла определить сетевые адаптеры, поэтому решено было устанавливать omv через установку его пакетов на ванильный debian (подробнее процесс описан тут https://docs.openmediavault.org/en/stable/installation/on_debian.html).
Версия debian-11.6.0-amd64-netinst встала без проблем и сразу при установке определила адаптеры.
Самого пользователя в рамках установки я назвал omv, хотя, наверное, это не столь важно. Сами пакеты openmediavault я ставил под root.
Из важного, на что стоит обратить внимание - это выбор GUI. И в рекомендациях самого openmediavault и логически для сервера gui не нужен, поэтому на шаге Software selection оставляем только ssh и стандартные утилиты.
После установки дополнительно выдал возможность подключения под root через ssh (пример настройки) и далее уже сами пакеты ставил копи-пастой из мануала.
После установки подключаемся через веб интерфейс с указанием логина/пароля admin:openmediavault
Также столкнулся с проблемой, что через соединение через роутер шары samba открывались без проблем, а при соединении напрямую нет. Поставив уровень логирования самбы на максимум с syslog было обнаружена строка smbd[7182]: No protocol supported !
Решение нашлось не сразу и было связано связано с тем, что на машине windows была включена версия протокола SMB1. Подробнее можно почитать про это в статье.
Отключается поддержка командой в PowerShell, запущенной от имени администратора: Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol
Видимо старый сервер (я как-то и не замечал:) ) работал еще на протоколе SMB1, и после отключения на windows машине подключение к новому серверу напрямую по smb заработало. Почему-то при подключении через роутер ошибки не было.
На этом все! Спасибо за внимание!
Автор:
Dkstr