
Комментарии 24
Рядом пишется манифест с sha256 каждого файла.
Вы не используете возможности ZFS в части процерки целостности данных - она вполне способна закрыть две фичи, которые вы реализуете в своих слоях.
Ну и zfs send/receive нельзя недооценить.
Спасибо, справедливо — но ZFS здесь закрывает одно звено из трёх. Копия тома MinIO живёт в трёх местах: каталог подготовки на основном сервере, restic-репозиторий на GPU-ноде и копия на NAS. Первые два — ext4, ZFS там нет.
Манифест — сквозная проверка: «то, что я восстановил из restic, байт в байт совпадает с тем, что лежало в живом томе ночью». ZFS гарантирует, что блоки на дисках NAS не сгнили. Но если файл испортился раньше — при копировании, в restic, по дороге, — ZFS честно сохранит испорченный файл с правильной контрольной суммой.
Сами механизмы ZFS при этом работают: scrub раз в месяц (последний — 11 октября, 0 ошибок на всех четырёх пулах), алерты на здоровье пулов и на scrub, автоснапшоты.
send/receive — согласен, лучший кандидат для офсайта: второй ZFS-ящик вне квартиры и репликация снапшотов. Для пути «прод → NAS» он не подходит: источники не на ZFS.
Еще хочется сравнить ваш набор дисков (цена приобретения / стоимость обслуживания, ЭЭ) с парой-тройкой серверных SAS 4-8 терабайтников.
Такие диски сейчас очень недороги и SAS контроллер стоит очень дешево.
Посчитал ) Двухтерабайтники обошлись в 6 000 и 3 500 ₽ — 9 500 за зеркало 2+2, около 4,7 тыс. за полезный терабайт. Зеркало 3+3 — бесплатно: диски переехали из умершего QNAP. Больше всего в покупке стоили не диски, а SSD — 28 из 48,5 тысячи.
Самое смешное: в том же лоте продавец предлагал 6-терабайтный SAS с контроллером. Я отказался — SATA-портов хватало: плата M.2 → 6 SATA за тысячу рублей закрыла вопрос.
Дальше SAS я не смотрю по двум причинам:
Плата Mini-ITX, слот PCIe x16 один, и на него уже есть планы — видеокарта под локальные модели.
Корпус настольный, без серверного продува. HBA греется и просит обдув, а NAS живёт в квартире — кривые вентиляторов я уже переделывал из-за шума.
В чём вы правы: по ваттам и по слотам на терабайт пара больших дисков лучше двух моих мелких зеркал. Когда двухтерабайтники начнут сыпаться, буду менять их на одну пару покрупнее — скорее всего SATA, из-за слота.
Зачем вам для NAS 64G RAM? Чем она занята сейчас? Или это не NAS, а сервер приложений совмещенный с хранилищем?
К сожалению, не нашел в статье начального ТЗ..
Мне для 4TB MIRRORZ2 без deduplication хватает 8Gb. Никак не найду повод для upgrade.
Отдельные NAS и compute nodes дают кое-какие преимущества.
Вы правы: это не чистый NAS, и ТЗ в статье не хватает. Сформулирую здесь. Задачи ноды:
Хранить ночные бэкапы двух других серверов и семейные фото с избыточностью.
Раз в месяц самой восстанавливаться из этих бэкапов в изолированных контейнерах: база, MinIO, Gitea.
Держать мониторинг, который переживёт падение основного сервера.
Плюс CI-раннер, фото и медиасервер. Правило одно: на ней не живёт ничего, без чего ляжет прод. Пока что..)
По памяти — цифры с ноды прямо сейчас: из 62 ГиБ занято 30, из них 24 — ARC (потолок выставлен руками, попаданий ~97%). 24 контейнера используют 6,5 ГиБ, но сумма их лимитов — 31,6 ГиБ: один раннер CI может взять 8. Пик за 30 дней — 36 ГиБ вместе с ARC, свободно было минимум 26.
Для 4 ТБ зеркал без дедупликации 8 ГБ действительно хватит — для хранения. 64 здесь не «потому что ZFS», а потому что нода совмещает роли, и потому что 2×32 достались частично обменом на старые планки. Честно: сейчас примерно половина простаивает.
Про отдельные NAS и compute согласен, так чище. Мой компромисс — делить по критичности, а не по типу: прод живёт на двух других нодах, а здесь только то, что может упасть без последствий для пользователей. Отдельный ящик под compute — это ещё розетка, ещё место на ИБП и ещё один разговор с семейным бюджетом.
WD Black выкиньте вот прямщас - они горячие и ломучие.
А в чём была проблема с напечатанной корзиной для HDD? Могли бы, кстати, и ссылку на неё кинуть сразу - https://www.printables.com/model/1207998-hdd-holder-for-thermaltake-core-v1
P.S. забудь все старые установки и напечатай рецепт яичницы с помидорами

Вместо корзины купил такой сервер с чудной корзиной и охлаждением за 50 евро. Выкинул начинку, установил новую плату и теперь думаю куда такой классный сервер применить (старые справляются).
Про WD Black - согласен что горячие. Но надежные - у меня есть несколько с наработкой уже несколько десятков тысяч часов. И ноль relocated.
Я с башен на 4U стоечные перешел. БП можно обычный пихать, большие серверные матери, корзины какие хочешь.
Завидую, я в квартире упираюсь не в БП, а в место и шум — пока всё живёт на этажерке рядом со столом 🙂 Если когда-нибудь дойду до стойки, приду к вам за советом по корпусам) Если вы не против, конечно))
У меня эти гуделки на лоджии поселились, так что про шум особо не беспокоюсь.
В родительской квартире осталась старая стойка 42U, в своей ограничился металлическим стеллажом.
Корпуса могу посоветовать сразу - смотрите Procase EB410L-B-0 и аналоги. На авите периодически всплывают за адекватные деньги.
Был бы частный дом - я бы наверное себе отдельную серверную отгрохал...
Лоджия — хорошее решение, у меня бы шум как раз туда и уехал, если бы не съёмная квартира и связанные с этим трудности в прокладке кабелей.) А как зимой — диски не мёрзнут? Боюсь холода и конденсата при перепадах больше, чем шума. За Procase спасибо, записал. А серверная в частном доме (как и сам дом))) — общая мечта, судя по всему 🙂
Лоджия застеклённая, плюс я параноидально промазал герметиком всё.
Там скорее летом может быть проблема, чем зимой (если лоджия маленькая). Зимой наоборот хорошо - сервак цветы комнатные греет ))
Кабели да, на съёме с этим может быть плохо. Себе же на стадии ремонта завёл 5 UTPшек и 2.5 квадрата от щитка. Сейчас, правда, жалею - нужно было на какую-нибудь седьмую категорию раскошелиться. Хрен знает как потом туда 10G прокидывать...
Сервак, греющий цветы, — лучший аргумент за лоджию, что я слышал 🙂
Про 10G не отчаивайтесь. 2.5G по 802.3bz рассчитан на Cat5e на все сто метров, 5G — на Cat6, а на хорошей «пятёрке» тоже часто работает. 10GBASE-T по 5e не по стандарту, но на коротких квартирных линиях бывает, что взлетает — проверяется парой карт и iperf. У меня сейчас ровно так: до нод 2.5G по меди, а 10G — только DAC между свитчем и роутером.
А «седьмую» я бы как монтажник всё равно не советовал: честная Cat7 — это вообще не RJ45, а под RJ45 она по сути работает как 6a, только толще и дороже.
Ну вот и у меня 2.5G по 5e.
По 10G чисто два сервака DAC-ом соединены, по нему бекапы виртуалок сливаются.
Поднять 10GBASE-T по 5e я не надеюсь - даже если заработает, то можно потом огрести каких-нибудь невнятных проблем со стабильностью от близкой прокладки с электричеством, старением самого кабеля и фазами луны. Ну его. Если мне уж прям офигенно приспичит кинуть 10G через квартиру - позову потолочников, которые тут ПВХашку натягивали. Снимут пару углов - брошу оптические пачкорды.
В доме в гараже 42" стоит. Иногда выйду вечером в гараж посмотреть как индикаторы за стеклом мигают - сердце радуется ))
Ну и, конечно, шума в доме никакого, с кабелями порядок. UPS любой можно поставить. Габариты - не вопрос.
Отличная находка за 50 евро — корзина с нормальным продувом как раз то, чего мне не хватило. А применение вы сами подсказали в первом комментарии: офсайт-ящик для zfs send/receive у родственников или друзей. У меня внешняя копия — главный долг схемы, и такой корпус под неё просится. По WD Black — у меня то же самое: 40 тысяч часов и ноль переназначенных)
Спасибо!
Друзья - это много хлопот с железкой. Я купил M-disk дисковод на 100Гб для холодных бакапов.
Вот пару дисков друзьям на хранение легко можно отдать.
Спасибо, интересная мысль — по сути, ответ на мой первый вопрос из статьи. Посчитал: бэкапы платформы со всей историей и Gitea — около 7 ГБ, это один стогигабайтный M-DISC с огромным запасом(на текущем этапе))). С семейными фото сложнее — их под 550 ГБ, это шесть дисков. Зато фото почти не меняются: архив по годам пишется один раз, дальше только докладываешь новое. Шифровальщика не боится, и от друзей не требует ничего, кроме полки. Похоже, офсайт выходит проще, чем я думал.)
WD Black у меня пока ведёт себя прилично: сейчас 30 °C, максимум за неделю — те же 30, наработка 40 тысяч часов, ноль переназначенных и ожидающих секторов, ноль CRC-ошибок. Стоит в зеркале с почти новым Toshiba (2,5 тысячи часов), так что если сломается — будет ресильвер, а не потеря данных. На SMART и на температуру выше 45 °C есть алерты. Но учту: первый же переназначенный сектор — и он на выход.
Корзина — да, это она и есть. В статье я написал «не влезла», но точнее так: встать она встаёт, но полностью перекрывает приток воздуха к кулеру процессора. А кулер у меня низкопрофильный, на i7, ему каждый кубометр важен. Поэтому диски уехали во внешнюю корзину. Если процессор холоднее или продув в корпусе устроен иначе — наверное, вполне рабочий вариант. Ссылку не дал, потому что у меня её и не было, да и печать собственно не на чем(корзина досталась вместе с корпусом) =) Яичница с помидорами - это вкусно)
Моя статистика не статистика, конечно, но первыми почему-то отмирали чёрные WD и Тошибы. Остальные WD живут хорошо.
По корзине понял. Просто мне сейчас едет точно такая же коробка под бекап-онли NAS на 3-5 HDD, но там ЦПУшка будет с TPD ватт на 30 в прыжке.
Тогда у меня в основном пуле полный комплект из вашей статистики: зеркало 2+2 — это ровно WD Black плюс Toshiba, а во втором зеркале ещё одна Toshiba на 3 ТБ. Единственный «не из списка» — Seagate на 58 тысяч часов 🙂 Будем считать это стресс-тестом: если начнут сыпаться парами — отпишусь. Пока страхуют зеркала, scrub раз в месяц и то, что бэкапы платформы на NAS — лишь одна копия из трёх.
Для коробки на 30 Вт печатная корзина, думаю, подойдёт отлично — у меня проблема была именно в горячем i7 под низким кулером.
Как NAS умер вовремя: ZFS-хранилище из б/у железа и бэкапы, которые проверяют себя сами