Начав заниматься фотографией, я быстро ощутил нехватку места на компьютере. Фотографии в RAW имеют большой вес, а про видео говорить ещё страшнее. Решение проблемы очень простое — собрать NAS.
О моём опыте сборки бюджетного NAS на 14 ТБ я напишу далее в статье.
Мои потребности:
- Цена до 400$ (вместе с дисками).
- 10+ ТБ свободного места с возможностью потери одного диска.
- Сетевое соединение на скорости 2,5–10 Гбит.
- Низкое энергопотребление.
- Низкий уровень шума.
- Желательно 1–2U корпус для установки в стойку с глубиной до 30–35 см.
- Возможность расширения дисков/оперативной памяти.
Вооружившись этим списком, я пошёл изучать доступные варианты.
Synology предлагает готовые решения, но соотношение цена/производительность просто печальное, особенно если смотреть на Rack Mount версии. Их операционка прекрасна, но большинство её плюсов можно получить в XPEnology, используя своё железо. В мой бюджет с огромным трудом можно было бы уместить пару б/у дисков и DS224, но покупать такое решение я смысла не вижу, ведь за 300 $ вам предлагают гигабитный порт, 6 ГБ оперативной памяти и Celeron из 2019 года.
Ещё из интересного отмечу Ugreen NASync серию. Это x86 коробки на свежих интелах с операционной системой от Ugreen, которую можно успешно заменить на что-то своё, оставив очень приличное железо за хорошую цену. Но в РФ их просто не купить, а Rack Mount решений у них нет. (Очень жду их появления и буду делать обзор на хабр, кажется, это идеальный конкурент синолоджи по доступным ценам)
Взвесив за и против и прибавив туда свои потребности, я решил собрать NAS сам.
Система была выбрана заранее, и это TrueNas Scale. Система очень приятная и стабильная, поддержка железа просто прекрасная, а функционал очень широк.
▍ Корпус
Началась сборка, конечно же, с корпуса. Странный первый пункт, но он диктовался моими условиями, ведь данный сервер я хочу поставить в стойку, где в данный момент свободно 2U место, поэтому желательно иметь нормальный стоечный корпус на 1–2U.
Сразу же в голове всплыл мой любимый ФСПУ-IP! Так вышло, что эти шлюзы в огромном количестве блуждали по «Авито». Пустой корпус можно было купить от 500 рублей, а уже за пару тысяч можно найти полностью собранный сервер, с хоть и старым, но вполне живым железом. Важно, что моя стойка самодельная и имеет очень малую глубину в 40 см, а это значит, что далеко не каждый корпус сюда встаёт по глубине и не торчит проводами за рамки стойки.
Стало интересно, что же есть на рынке. Может, я что-то теряю, выбирая старый б/у хлам? В поисках истины я наткнулся на ExeGate Pro 2U380-03. Корпус короткий, 2U, и вмещает в себя стандартный ATX блок питания, а также 2×3,5 диска. Но глубина оказалась на 5 см больше, чем мне нужно, а охлаждение блока очень странное, и каким-то образом БП должен забирать воздух с верхней крышки, где уже стоит следующий сервер. В общем, вариант отпал.
Второй интересный вариант — Mastero 2U300. Опять же, короткий (30 см), вмещает пару дисков на 3,5 дюйма, но имеет не самое удачное решение с охлаждением блока питания, а также очень мелкие отверстия для обдува, что плохо скажется на охлаждении дисков (спойлер — тема окажется болезненной).
Поняв, что цены аховые для моего бюджета, а внешний вид и фишки не особо интересные, я вернулся к варианту ФПСУ-IP. Как оказалось, хоумлаб сцена в РФ растёт, и эти корпуса были вычищены с «Авито» и стали редкостью, но за 2 тысячи мне удалось найти полностью собранный сервер. 100 рублей доплаты за комиссию «Авито», 239 рублей за доставку, и минус 68 рублей кэшбека.
Итого 2271 рубль за корпус в моих руках.
Если абстрагироваться от потребления энергии, то можно было бы закрывать вопрос железа на этом этапе, ведь тут стоит вполне себе неплохая материнка Intel S1200BTL с процессором на 2 ядра. 4 слота для оперативки позволяют ставить дешёвую китайскую ECC DDR3 память, а на плате стоит куча SATA портов, которые без каких-либо карт расширения позволят подключить кучу дисков и не знать проблем.
На практике у меня остро стоит вопрос потребления сетевой инфраструктуры, и эта платформа банально слишком много ест и слаба. Кроме того, корпус не располагает местом под установку дисков, а колхозинг креплений под диски на стенку будет нетривиальным. Поэтому всё ненужное (БП, плата, проц, сетевая карта) отправилось на барахолку, где успешно продалось за примерно неделю, тем самым снизив стоимость корпуса до 471 рубля.
▍ Платформа
Теперь, когда есть корпус на руках, можно начать думать о начинке. Я прикидывал разные комбинации, в которых можно установить диски в систему, и только в одном положении я мог оставить 2 вентилятора на выдув, поставить ещё один на обдув дисков. В таком виде в корпус можно поставить пару 3,5 дисков, и даже останется место на пяток 2,5 дисков.
Но под такое решение требуется короткая плата. В идеале Mini-ITX, с которой в корпус полезет буквально всё.
На практике я вообще не хотел брать ITX. Кроме малого количества слотов расширения, цены на эти платы просто неадекватные. Поэтому я пошерстил рынок и нашёл вот такие платы с интересными габаритами:
- ASRock H310CM-DVS.
- ASRock H110M-DGS.
- GIGABYTE GA-H110M-S2V.
Это такой гибрид в виде ITX платы, но с дополнительным PCIE слотом. Под мои запросы такой формат подходит просто идеально, а стоимость таких плат невысока за счёт старых платформ.
В списке нет плат на платформе AMD, а также новых Intel. Это решение банально продиктовано небольшим бюджетом, редкостью компактных плат, а также требованиями к энергопотреблению. Так вышло, что у меня есть опыт работы с AM4/AM5 платформами, и они показали хорошую производительность, но достаточно высокое потребление с розетки в режиме бездействия (примерно в 2 раза выше, чем у Intel схожей производительности в тесте на рабочем столе Windows с двумя HDD). Свежий Intel я отмёл по тем же самым причинам, банально дорого или много жрет.
Отдельный параграф я бы хотел отдать Intel N100. Это новый процессор с очень приличными показателями энергопотребления и производительности. Если вы собираете NAS и готовы потратить чуть больше, чем я, то берите N100, вы точно не пожалеете. Голые платы под NAS в Китае стоят в районе 12 тысяч рублей. Они имеют на борту сразу 4 порта 2,5GbE, 6 SATA портов, 2 NVME m.2 слота, и при этом TDP 6 Вт, а производительность в 2 раза выше, чем у старых «интелов» типа G4560 которые потребляют во много раз больше энергии. Нюансов тут, конечно же, несколько. Не самая стабильная сеть на некоторых платах, и BIOS от ноунейм китайских друзей. Практика показала, что в целом это рабочие платы.
Ну а я ушёл на барахолки, с малым бюджетом и нежеланием работать с китайским биосом.
Поиск на барахолках занял примерно 4 дня. Адекватная цена за материнку на H110–H310 сокете варьируется в рамках 1500–2000 рублей. Платить больше за этот антиквариат точно не стоит. Процессоры можно найти в рамках 500 рублей, тот же G4400 или более мощный собрат G4560. Мне удалось найти такие варианты:
- ASRock H310CM-DVS + i3 8100 + 16GB DDR4 = 6000 рублей.
- GIGABYTE GA-H110M-S2V + G4400 = 2500 рублей.
Вариант с i3 отпал сразу, продавец просил доплату в 500 рублей за «Авито Доставку», и пока я думал пару часов, этот комплект уже купили.
Поэтому пришлось брать второй за 2500 рублей, а также 13 рублей за доставку (удалось списать бонусы за прошлые покупки корпуса и т. д.) и получить 70 рублей кэшбека, итого 2443 рублей.
Материнская плата пришла в отличном состоянии, но пыльная, в сокете стоял процессор G4400, а охлаждает его сток кулер. После чистки и проверки оказалось, что всё работает отлично, особенно порадовала температура процессора в 20–25 ˚С при 24 ˚С окружающей среды и потребление в какие-то смешные 12 Вт на рабочем столе Windows.
C памятью всё просто, я изначально выбрал систему TrueNAS SCALE, и в её минимальных требованиях стоит цифра в 8 ГБ. На деле оперативная память, особенно DDR4, очень дешёвая, и она в TrueNAS используется как кэш для ZFS, было решено взять 16 ГБ с запасом под кэш и возможные приложения. Можно взять новую китайскую память за 2300 рублей/16ГБ (CUSO, Machinist, KingBank и т. д.), но у меня уже был опыт с китайскими планками, и он был не очень положительный (самые дешёвые чипы и ошибки в долговременной работе даже без разгона), поэтому было решено изучить барахолки. Там за примерно 2500 рублей можно взять качественные планки от Kingston/Crucial/Samsung.
Я нашёл локально 2 планки Crucial по 8 ГБ, после небольшого общения с продавцом мы договорились о цене в 1500 рублей за 2 штуки, и я их купил. Это самые простые и базовые планки, никаких быстрых XMP или улетных таймингов, частота всего 2666 МГц при cl19, печальное зрелище, если вы собираетесь играть на таком наборе в современные игры, но абсолютно нормальные характеристики для моих задач. В плюс же играет малое количество чипов, банально система с такими простыми планками потребляет на 1 Вт меньше, чем с тем же объёмом, но на 8 чипах/планка.
▍ Диски — системный
Гайд от TrueNAS предлагает использовать диски объёмом 8 ГБ и более для системы. Изначально я искал SATA DOM модули либо хорошие серверные SSD диски от Intel/Samsung, но ничего путного и не ушатанного так и не нашлось. Поэтому, покопавшись в закромах, я нашёл, наверное, идеальный вариант — Intel OPTANE!
Звучит громко, но на деле это самый простой OPTANE модуль на 16 ГБ, интересен он своими характеристиками, а именно 368TBW, и в целом отличными показателями скорости. При этом его цена составила примерно 643 рубля с учётом доставки.
Материнская плата, выбранная мной, не имеет слота m.2, поэтому был куплен переходник m.2 на Pcie x1 стоимостью 250 рублей.
В идеальном будущем стоит заменить его одного на пару SATA дисков в зеркале для большей надёжности, но пока имеем, что имеем.
▍ Блок питания
Выбор блока продиктован корпусом. В него нативно встаёт TFX блок, а также FlexATX, либо самосбор с picoPSU. В моём случае блок питания уже был в наличии. Это BeQuiet 300W Gold TFX. С учётом бонусов он вышел очень дёшево, и там, где его уже нет, поэтому в бюджет я бы добавил что-то типа Seasonic 300W в TFX формате. Средняя цена таких блоков на «Авито» — 2500 рублей.
▍ Диски
Выбор дисков на самом деле не стоял. Вариант брать новые с местных магазинов, можно сказать, нереален из-за неадекватных цен. Тот же 14 ТБ диск в DNS обойдётся примерно в 30 тысяч рублей! И это с гарантией в 12 месяцев вместо заводских 5 лет. А на Ozon на момент написания статьи я смог купить пару 14 ТБ дисков примерно по 12–13 тысяч рублей. Цифра 14 ТБ неслучайна, так как диски этого объёма имели лучшее соотношение цена/объём, а статистика Backblaze показала очень оптимистичные результаты для этой модели.
Источник: www.backblaze.com/blog/backblaze-drive-stats-for-2023
Но как всегда дьявол кроется в деталях, ведь диски из Китая/с «Озона» — б/у.
Если посмотреть на отзывы, то они в основном положительные с редкими сообщениями о полностью нерабочем диске, в отзывах с тестами видно, что смарт диска затёрт, но репорты виктории вполне адекватные. Я решил проверить качество этих дисков на себе и сделал тестовый заказ 14 ТБ модели.
Едет такая посылка около месяца, и всё это время с ней непонятно как обращалась доставка. Но стоит отдать должное продавцу, упаковка у диска очень достойная и включает в себя наружный слой пупырчатой плёнки + картонную коробку + массивную защиту из поролона с толщиной стенок в 2–3 см, а внутри уже сам диск в антистатическом пакете.
Диск ощущается как новый, но если приглядываться к деталям, то видно, что он всё же б/у. Есть потёртости на контактах и следы от установки диска в салазки.
Смарт, естественно, затёрт, и диск показывает всего 2 включения. Честно говоря, мне решение с затиранием смарта вообще непонятно, и я лучше бы купил б/у диск с честным набором данных о наработке, чем оставался в блаженном неведении.
Тест «Виктории» показал в целом хорошую поверхность. Всего пара зелёных блоков, но после изучения отзывов оказалось, что это вполне стандартная ситуация для этих даже в новом состоянии прямо из магазина, так что диск я решил оставить себе и заказать второй.
Второй диск в целом идентичный.
Из интересного можно отметить гарантию, ведь внезапно она есть! Проверка серийников обоих дисков рапортует о гарантии до 2026 года, но с разницей в пару месяцев (что хорошо, ведь диски из разных партий, и если будут умирать, то есть шанс, что не вместе). Но нюансы, как обычно, кроются в деталях. Скриншот ниже представлен при проверке гарантии в регионе Китай. Если выбрать, например, Казахстан, то появится сообщение «Regional warranty restrictions apply». В его описании говорится, что Seagate может отказать в гарантии, если обратиться по ней не из родного региона. России в списке, кстати, нет.
Стало интересно, откуда DNS берёт такие диски, и, найдя серийник в отзывах, получаем вот такое весёлое сообщение. Притом я проверил как заглавное фото с карточки товара, так и несколько из отзывов, и результат один и тот же. Что же там разобрал поставщик DNS, остаётся только догадываться.
В итоге покупкой дисков я в целом доволен. Дальше покажет только время, но их состояние можно отметить как отличное.
За 2 диска я отдал 26 тысяч рублей.
▍ Cборка
Начал с корпуса. Его состояние было просто ужасное. Вековая пыль, куча царапин, следы от наклеек и несколько вмятин, видимо, полученных при доставке. Корпус был освобождён от компонентов и отмыт в ванной со средством под названием «Азелит», это чудо химической промышленности позволило оттереть вообще всё, включая клей от наклеек.
Далее с корпусом были проведены мелкие модификации:
- Удалена крышка с замком, защищающая кнопку включения и ресета, ключа у меня просто нет.
- Покрашена область кнопок ресета и старта в цвет корпуса.
- Покрашены заглушки PCIE портов.
- Удалены стойки для ATX материнки, оставлены для ITX.
- Подкрашены царапины.
- Удалены оставшиеся наклейки и логотипы.
- Заменены винты ручек крепления в рэк (были ржавые).
- Удалены некоторые кабель-органайзеры.
- Порядок диодов индикации изменён.
- Заклеена часть ненужных отверстий для воздуха.
Устанавливать диски тут некуда, банально нет заводских мест. Это уже не первый такой корпус в моей стойке, и проблема крепления дисков ранее решалась простой кареткой, которую легко напечатать на принтере, но она поддерживает диски формата 2,5, а в моём NAS будут стоять 3,5, поэтому пришлось искать какое-то решение, и нашлось оно достаточно быстро.
Готовая модель каретки под 2 диска с поддержкой салазок. А также универсальные салазки.
Но после небольших расчётов я пришёл к выводу, что салазки банально не выдвинуть в рамках корпуса, отчего они бесполезны. Кроме того, вибрации от шумящих дисков будут сильно передаваться на корпус, и стоило бы их как-то гасить. В итоге было найдено простое крепление для дисков, которое было приклеено ко дну корпуса на вспененный скотч.
Тем самым удалось добиться достаточно надёжного крепления и даже небольшой изоляции вибрации.
Сюда же был установлен вентилятор. Его в бюджете нет, но во время тестов была выявлена проблема с нагревом дисков до 40+ градусов. Решение проблемы было найдено быстро в виде вентилятора Noctua, который обошёлся примерно в 550 рублей с учётом доставки.
В целом решение оказалось удачным. Диски перестали нагреваться выше 34–35 ˚C даже под продолжительными нагрузками.
Материнская плата была почищена, а её стоковый Intel кулер заменён на пассивный Arctic.
Радиатор оказался очень массивный, но без проблем влез в 2U корпус с зазором примерно в 1 мм. Неприятный момент с ним всё же есть. Его крепление не имеет бэкплейта, а винты используют очень злые пружины, из-за чего при затяжке винтов плата выгнулась в бублик. Пришлось открутить по 7 оборотов на каждом винте. В качестве прижима и охлаждения потерь не обнаружилось, а плата выровнялась.
Цена вопроса — 407 руб.
Проводка вентиляторов простая. Охлаждение дисков через удлинитель подключено в CPU FAN. Таким образом биос не ругается на отсутствие вентилятора, а его обороты регулируются в зависимости от нагрузки на процессор.
Так как охлаждением корпуса будут заниматься родные вентиляторы, я предварительно очистил и смазал их. Это очень неплохие вертушки Sunon EE80251B1-0000-G99, в их плюсы можно записать надёжный шарикоподшипник, очень приличный поток воздуха и достаточно тихую работу. В минусы же запишу 3 pin подключение, высокое энергопотребление, а также шипение шарикоподшипников и хоть и лёгкую, но вибрацию. В целом это очень надёжные вентиляторы, которые я решил оставить. Вентиляторы корпуса подключены в Chasis порт через понижающий резистор (переходник Noctua), таким образом получилось добиться более низких оборотов, чем позволял биос материнской платы по DC управлению.
Блок питания BeQuiet также встал на своё место. Провода Molex и питания видеокарты были убраны в пучок и больше не пригодятся. Провод питания SATA оказался коротким, но всё же дотянулся до дисков.
В качестве системного диска был установлен Intel OPTANE в m.2 исполнении через переходник на PCIE X1 порт.
Последние штрихи в виде SATA проводов и передней панели.
Под конец сборки я всё же решил установить 10GbE карту Mellanox ConnectX 3, которую можно было встретить в моей прошлой статье про 10Гбит сеть. Эта карта из моего основного ПК, в который переехал Mellanox ConnectX 4 lx.
После итоговой сборки сервер отправился на тестирование.
Для тестов я использовал:
- Memtest86 для теста памяти вне Windows.
- Testmem5 с пресетом ANTA777 для тестов памяти в Windows.
- OCCT в режиме CPU TEST для проверки работы процессора.
- Victoria для тестов дисков.
- Iperf клиент и тестирование сети 8 часов на полной нагрузке.
- Aida64 и тест линейной записи для SSD.
▍ Софт и настройки
Нет никакого смысла подробно описывать установку TrueNAS SCALE. Алгоритм установки очень прост и похож на ту же Windows.
- Записать образ на диск (я просто закинул на флешку с Ventoy).
- Произвести установку на SSD диск с дефолтными настройками и своим паролем, попутно запомнить IP адрес, который получит наша машина.
- Перезагрузиться после установки и удостовериться, что ошибок нет.
- Отключить всё, кроме сети и питания.
- Остальные настройки производить в браузере через WebGUI.
В WebGUI всё также просто. Заходим в админку, используя логин admin и пароль, указанный при установке.
Далее идём в Storage и создаём новый пул. В моём случае диска 2, и я добавлю их в зеркало. Таким образом можно получить 2 копии данных и уберечь себя от их потери при поломке одного из дисков, повышенные скорости чтения, но при этом общий объём будет равен одному диску, а запись ограничена скоростью одного диска.
Для работы с NAS в Windows мне понадобится SMB шара. Процесс её настройки прост и потребовал этих шагов:
- Создание датасета.
- Создание группы для юзеров с доступом к SMB шаре (дабы не добавлять каждого юзера и разрешения руками).
- Добавление юзеров для SMB шары и применение группы.
- Запуск SMB сервиса со стандартными настройками.
- Создание SMB Share, в которой будет выбран датасет с первого шага, и добавление группы в ACL список
Список большой, но в целом задача тривиальная, и её можно выполнить, копируя шаги из этого очень подробного видео.
Отдельно отмечу шары без пароля. В самом TrueNAS есть поддержка гостевого доступа, но подключиться без пароля с Windows 10 и выше не получится. Для обхода этого ограничения надо отключить гостевой доступ без защиты, как это сделать написано тут, либо создать гостевого юзера guest/guest.
Теперь, когда все настройки выполнены, можно сделать их бэкап. Это необязательный пункт, и при поломке системного диска данные на дисках с пулом останутся на месте, а пул легко восстановить (если он не шифрован), но он сэкономит много часов пустой работы, которой можно избежать, имея бэкап.
Такой бэкап можно импортировать в свежеустановленную систему, тем самым вернув все настройки.
Делается он просто. Идём в System Settings — General — Manage Configuration (синяя кнопка справа сверху) — Download File.
Соответственно, если произошёл инцидент с системным диском, то достаточно переустановить операционную систему, зайти в это же меню и нажать на Upload File. Система восстановит настройки и перезагрузится.
▍ Тестируем 2,5GbE
Тестировать гигабит бесполезно, ведь забить его может буквально один жёсткий диск без кэшей, мам, пап и кредитов, поэтому сразу перейдём к 2,5GbE соединению.
Для тестов я копировал фильм весом 24 ГБ, с ПК на NAS.
В такой нагрузке скорость в начале передачи колебалась на отметке 280 Мбайт/сек, уперевшись в лимит 2,5 Гбит порта на компьютере, но после 8–10 ГБ скорость упала до 210–240 Мбайт/сек. Падение вызвано окончанием ZFS кэша в оперативной памяти. Дальнейшего падения скорости не обнаружено.
При копировании с NAS на ПК всё опять же упёрлось в порт 2,5GbE, а скорость была стабильной.
Если посмотреть на графики загрузки дисков в TrueNAS, то видно, как запись почти полностью утилизирует все возможности дисков, а чтение загружает их лишь наполовину.
По процессору запас ещё есть, в среднем при операциях я видел загрузку от 30 до 50 %.
Решение с пассивным радиатором вкупе со слабым процессором показало себя прекрасно. Температуры просто смешные даже под нагрузкой, хотя стоит сказать, что они странные, ведь в комнате во время тестов температура была около 28–29 градусов.
Ну и тест CrystalDiskMark c файлом 64 ГБ просто ради интереса.
▍ Тестируем 10GbE
Теперь попробуем 10 гигабит сеть, раз в прошлых тестах мы успешно упёрлись в 2,5 гигабита.
Прогон CrystalDIskMark с файлом 64 ГБ был весёлым, ведь генерация тестового файла на диске идёт на скорости 2 Гбит/сек, а реальные тесты имеют заметно более высокую скорость. Тесты показывают отличную скорость, приближающуюся к SATA дискам, ура?
К сожалению, такие хорошие скорости получены за счёт качественной работы ZFS кэша.
В реальности за пределами кэша запись упирается в 2 гигабита, это как раз +- максимальная скорость записи «сигейтов» на 14 ТБ.
Скачивание с NAS идёт на скорости 2,6–3 гигабита.
Как видим, скорость отличная, но, честно говоря, апгрейд до 10 гигабит для сервера с парой жёстких дисков и без какого-либо продвинутого кеширования или больших объёмов оперативной памяти — бесполезен.
▍ Экономика
Бюджет без сетевой карты Mellanox и дисков вышел таким:
- Корпус с учетом проданного из него железа: 417 Руб.
- Блок питания: 2500 Руб.
- Платформа: 2443 Руб.
- Оперативная память: 1500 Руб.
- Системный диск: 643 Руб. + Переходник: 250 Руб.
- Пассивный радиатор: 407 Руб.
- Вентилятор Noctua 80mm: 550 Руб.
Итого: 8710 Рублей за голую платформу с поддержкой четырёх Sata и 2PCIE устройств.
2 жёстких диска вышли в 26026 Рублей, а сетевая карта Mellanox connectX3 2605 Рублей.
Итого за сервер: 37,341 Руб.
▍ Выводы
В целом я полностью доволен этой сборкой. 12 ТБ свободного места, шум минимален, производительность просто отличная, есть возможность расширения путём добавления дисков, и всё это по цене голой коробки от Synology! Собирая следующий NAS, я, скорее всего, заменил бы платформу на N100, оставив всё остальное железо.
На этой ноте я прощаюсь. Если с дисками что-то случится, то я обязательно дополню статью или напишу об этом в комментариях. А в следующей статье я раскрою тему Docker в TrueNas, установлю свой фото сервер, NFS шару для бекапов Proxmox, и многое другое!
© 2024 ООО «МТ ФИНАНС»
Автор: Tirarex