Зачем?
Со временем пришло осознание 2х моментов:
-
удобно использовать такие облачные сервисы как Google Docs и DropBox
-
не хочется при этом зависеть от облачных провайдеров (дорого, проблемы сохранности данных, проблемы неожиданности отключений и изменений и тп)
При этом в интернетах любят термин Home Lab, но не хочется экспериментировать. Это должно быть что-то вроде wifi-роутера: просто работает и на саму систему особо внимания не обращаешь. При этом должно масштабироваться (как добавление новых wifi-точек в mesh-сеть): поэтому облако.
Какой софт?
Для домашних целей:
-
NextCloud — основная система. Как раз заменяет Google Docs, DropBox и другое
-
BitWarden — хранение паролей
-
PhotoPrism — попробовать, может там фотки удобнее хранить, чем в NextCloud
-
Outline — аналог Notion, попробовать
-
Кому-то могут быть еще интересны программы для торрентов и просмотра, но я как-то этим не увлекаюсь
Умный дом:
-
Home Assistant — основная система умного дома
Хобби по разработке:
-
Gitea — git-репозитарий
-
Drone — CICD для Gitea
-
Docker registry
-
Uptime Kuma — проверяет, что сервисы онлайн
При этом решил не переносить почтовый сервер домой: уж больно с ним много мороки, а из писем там только транзакционные и реклама. Оставил на своем домене на стороннем сервисе.
Так же статичный сайт сделал на VPS для копии моих публикаций на других сайтах. В теории, можно было бы и дома, но лучше VPS — не дорого и никакого vendor lock.
Коробочные решения
Как ни странно, коробочные решения существуют. Почему-то они называются NAS-сервер или сетевое хранилище. По анализу больше всего понравились устройства Synology, но купил почему-то ZyXEL NAS326 (не рекомендую).
Из программных есть:
-
CasaOS v0.3.6 — примерно, что хочется, но версия реально еще очень сырая
-
Umbrel v0.5.1 — похожая штука от крипто-фанатов для крипто-фанатов, тоже очень сырая, не отключается tor-нода (что само по себе может быть опасно, не уверен)
-
Portainer v2.15 — вроде бы хорошая система, но слишком гиковская
-
Системы виртуализации (ProxMox и другие варианты) исключил, т.к. хочется коробочное решение, а не конструктор
Конечно, захотелось не просто домашние вещи, но еще и что-то для программирования (git, cicd, …). Это, в принципе, есть в CasaOS/Umbrel, но ждать несколько лет не хочется. Поэтому подобную систему потихоньку пишу. Как будет что показать — выложу.
Дом как дата-центр
Есть устойчивое мнение, что это как-то ненадежно. У меня сложилось обратное мнение:
-
Электричество — перебои бывают, но весьма редко (не чаще раза в год и то на несколько минут). Как-то раз отключили на несколько часов (перегорел трансформатор) — замечательно провели время. В связи с этим, не вижу смысла в источниках бесперебойного питания: вероятность что-то сломать низкая, как восстановить понятно, если что. Да и большинство пользовательских устройств на своих батарейках (ноутбуки и телефоны).
-
Интернет — проблемы бывают почаще, но обычно на несколько минут после 12 часов. Такое не очень подходит для сайта, но для остальных систем более чем. Дополнительно есть автоматическое переключение на 4G и можно вручную получить интернет с телефона — 3 вполне независимых источника.
-
Физическая безопасность — мне прежде всего интересует потеря данных. Да, нужно делать резервные копии в другие местах. При этом те же аналоги DropBox и git синхронизируются на множество устройств даже без этого.
На практике, когда путешествовал, довольно часто подключался к дому и ни разу не заметил проблем с доступностью.
Отдельно скажу, что в процессе понял одно из критичных требований: нулевой шум. Просто так повелось, что ноутбуки у меня обычно работают бесшумно, а отдельного помещения под домашнее облако не предполагается. Оно располагается где-то рядом с рабочим местом на полке. Это налагает ограничения на железо и софт, но вполне реально.
Железо
Сетевой уровень:
-
Kinetic Lite — одна из основных железок: принимает интернет по проводу, переключает на запасной wifi (другой роутер с 4г модемом), DCHP, DNS, NTP, VPN-сервер (подключение мобильных клиентов), проброс портов наружу, межсетевой экран. Wifi отключен, т.к. mesh делают другие устройства (уже были куплены). Не нравится как DNS настраивается (записи для своих сервисов) — возможно будет другое устройство реализовывать.
-
Tenda AC1200, несколько штук, только 1 проводом подключен в основной роутер — реализует «бесшовную» Wifi-сеть. Работает, да и ладно.
-
TP-Link TL-SG108E — гигабитный свитч домашнего облака, понравился (дешево и даже есть возможность что-то настроить при желании).
Сервера:
-
Beelink U59 (4×2.9, 16Гб ОЗУ, 512Гб ССД), 3шт — основные машинки. Брал для Kubernetes, но с ним включают вентиляторы свои.
-
Raspberry Pi 4 (8Гб ОЗУ, 64Гб карточка) — было и не использовалось. Сейчас выполняет роль KVM. Потом, скорее всего, будет в роли NAS (есть внешняя коробка на 2 диска с дисками). Возможно, еще будет Zigbee-свисток для умного дома на этой машинке.
-
ZyXEL NAS326 с 2 дисками по 4Тб — пока что выключен, скорее всего продам.
Негативный опыт
-
ZyXEL NAS326 — устаревшее железо, устаревший софт, всегда аппаратно работает вентилятор
-
MikroTik RB941-2nD (hAP lite) — слишком сложная и необычная ОС (не хочется становиться админом именно MikroTik для даже довольно простых сценариев), нестабильная ОС (в частности, у меня бекап настроек виснет и поддержка не помогла), требует Windows (нужно использовать десктопную программу довольно часто), слабое железо (openwrt не поставишь современный, а старый непонятно безопасно ставить или его уже не поддерживают)
-
Raspberry Pi 4 — своих денег не стоит, лучше брать какие-нибудь китайские x86 машинки
-
Одно время оборудование стояло отдельно без проводной связи с основным роутером. Дополнительный роутер выступал в качестве wifi-клиента и в свитч домашнего облака отдавал интернет. В большинстве случаев работало нормально, но иногда терялось соединение, затем сервера теряли DHCP и приходилось на это все обращать внимание. При этом все домашние клиенты беспроводные и это хорошо работает.
-
Kubernetes — мне нравится для работы, но для дома он в простое делает слишком много вещей из-за которых включаются вентиляторы
-
Prometheus — аналогично Kubernetes
-
Time Machine — как-то очень сильно нагружает ноутбук и каждый день много копирует. В итоге, не понравилось. Лучше условный DropBox и git, а не пытаться всю OC копировать.
Что дальше?
У меня есть серия видео где примерно это же самое рассказано, но более подробно. Через какое-то время опубликую как в итоге поставил и настроил софт.
ссылка на оригинал статьи https://habr.com/ru/post/692008/
Добавить комментарий