Pull to refresh

Домашнее облако

Reading time4 min
Views46K

Зачем?

Со временем пришло осознание 2х моментов:

  • удобно использовать такие облачные сервисы как Google Docs и DropBox

  • не хочется при этом зависеть от облачных провайдеров (дорого, проблемы сохранности данных, проблемы неожиданности отключений и изменений и тп)

При этом в интернетах любят термин Home Lab, но не хочется экспериментировать. Это должно быть что-то вроде wifi-роутера: просто работает и на саму систему особо внимания не обращаешь. При этом должно масштабироваться (как добавление новых wifi-точек в mesh-сеть): поэтому облако.

Какой софт?

Для домашних целей:

  1. NextCloud -- основная система. Как раз заменяет Google Docs, DropBox и другое.

  2. BitWarden -- хранение паролей.

  3. PhotoPrism -- попробовать, может там фотки удобнее хранить, чем в NextCloud.

  4. Outline -- аналог Notion, попробовать.

  5. Кому-то могут быть еще интересны программы для торрентов и просмотра, но я как-то этим не увлекаюсь.

Умный дом:

  1. Home Assistant -- основная система умного дома.

Хобби по разработке:

  1. Gitea -- git-репозитарий.

  2. Drone -- CICD для Gitea.

  3. Docker registry.

  4. Uptime Kuma -- проверяет, что сервисы онлайн.

При этом решил не переносить почтовый сервер домой: уж больно с ним много мороки, а из писем там только транзакционные и реклама. Оставил на своем домене на стороннем сервисе.

Так же статичный сайт сделал на VPS для копии моих публикаций на других сайтах. В теории, можно было бы и дома, но лучше VPS -- не дорого и никакого vendor lock.

Коробочные решения

Как ни странно, коробочные решения существуют. Почему-то они называются NAS-сервер или сетевое хранилище. По анализу больше всего понравились устройства Synology, но купил почему-то ZyXEL NAS326 (не рекомендую).

Из программных есть:

  1. CasaOS v0.3.6 -- примерно, что хочется, но версия реально еще очень сырая.

  2. Umbrel v0.5.1 -- похожая штука от крипто-фанатов для крипто-фанатов, тоже очень сырая, не отключается tor-нода (что само по себе может быть опасно, не уверен).

  3. Portainer v2.15 -- вроде бы хорошая система, но слишком гиковская.

  4. Системы виртуализации (ProxMox и другие варианты) исключил, т.к. хочется коробочное решение, а не конструктор.

Конечно, захотелось не просто домашние вещи, но еще и что-то для программирования (git, cicd, ...). Это, в принципе, есть в CasaOS/Umbrel, но ждать несколько лет не хочется. Поэтому подобную систему потихоньку пишу. Как будет что показать -- выложу.

Дом как дата-центр

Есть устойчивое мнение, что это как-то ненадежно. У меня сложилось обратное мнение:

  1. Электричество -- перебои бывают, но весьма редко (не чаще раза в год и то на несколько минут). Как-то раз отключили на несколько часов (перегорел трансформатор) -- замечательно провели время. В связи с этим, не вижу смысла в источниках бесперебойного питания: вероятность что-то сломать низкая, как восстановить понятно, если что. Да и большинство пользовательских устройств на своих батарейках (ноутбуки и телефоны).

  2. Интернет -- проблемы бывают почаще, но обычно на несколько минут после 12 часов. Такое не очень подходит для сайта, но для остальных систем более чем. Дополнительно есть автоматическое переключение на 4G и можно вручную получить интернет с телефона -- 3 вполне независимых источника.

  3. Физическая безопасность -- мне прежде всего интересует потеря данных. Да, нужно делать резервные копии в другие местах. При этом те же аналоги DropBox и git синхронизируются на множество устройств даже без этого.

На практике, когда путешествовал, довольно часто подключался к дому и ни разу не заметил проблем с доступностью.

Отдельно скажу, что в процессе понял одно из критичных требований: нулевой шум. Просто так повелось, что ноутбуки у меня обычно работают бесшумно, а отдельного помещения под домашнее облако не предполагается. Оно располагается где-то рядом с рабочим местом на полке. Это налагает ограничения на железо и софт, но вполне реально.

Железо

Сетевой уровень:

  1. Kinetic Lite -- одна из основных железок: принимает интернет по проводу, переключает на запасной wifi (другой роутер с 4г модемом), DCHP, DNS, NTP, VPN-сервер (подключение мобильных клиентов), проброс портов наружу, межсетевой экран. Wifi отключен, т.к. mesh делают другие устройства (уже были куплены). Не нравится как DNS настраивается (записи для своих сервисов) -- возможно будет другое устройство реализовывать.

  2. Tenda AC1200, несколько штук, только 1 проводом подключен в основной роутер -- реализует "бесшовную" Wifi-сеть. Работает, да и ладно.

  3. TP-Link TL-SG108E -- гигабитный свитч домашнего облака, понравился (дешево и даже есть возможность что-то настроить при желании).

Сервера:

  1. Beelink U59 (4x2.9, 16Гб ОЗУ, 512Гб ССД), 3шт -- основные машинки. Брал для Kubernetes, но с ним включают вентиляторы свои.

  2. Raspberry Pi 4 (8Гб ОЗУ, 64Гб карточка) -- было и не использовалось. Сейчас выполняет роль KVM. Потом, скорее всего, будет в роли NAS (есть внешняя коробка на 2 диска с дисками). Возможно, еще будет Zigbee-свисток для умного дома на этой машинке.

  3. ZyXEL NAS326 с 2 дисками по 4Тб -- пока что выключен, скорее всего продам.

Негативный опыт

  1. ZyXEL NAS326 -- устаревшее железо, устаревший софт, всегда аппаратно работает вентилятор.

  2. MikroTik RB941-2nD (hAP lite) -- слишком сложная и необычная ОС (не хочется становиться админом именно MikroTik для даже довольно простых сценариев), нестабильная ОС (в частности, у меня бекап настроек виснет и поддержка не помогла), требует Windows (нужно использовать десктопную программу довольно часто), слабое железо (openwrt не поставишь современный, а старый непонятно безопасно ставить или его уже не поддерживают).

  3. Raspberry Pi 4 -- своих денег не стоит, лучше брать какие-нибудь китайские x86 машинки.

  4. Одно время оборудование стояло отдельно без проводной связи с основным роутером. Дополнительный роутер выступал в качестве wifi-клиента и в свитч домашнего облака отдавал интернет. В большинстве случаев работало нормально, но иногда терялось соединение, затем сервера теряли DHCP и приходилось на это все обращать внимание. При этом все домашние клиенты беспроводные и это хорошо работает.

  5. Kubernetes -- мне нравится для работы, но для дома он в простое делает слишком много вещей из-за которых включаются вентиляторы.

  6. Prometheus -- аналогично Kubernetes.

  7. Time Machine -- как-то очень сильно нагружает ноутбук и каждый день много копирует. В итоге, не понравилось. Лучше условный DropBox и git, а не пытаться всю OC копировать.

Что дальше?

У меня есть серия видео где примерно это же самое рассказано, но более подробно. Через какое-то время опубликую как в итоге поставил и настроил софт.

Only registered users can participate in poll. Log in, please.
Домашнее облако?
35.36% У меня уже есть93
49.81% Еще нет, но хочу131
11.41% Нет и не хочу30
3.42% Было и больше не хочу9
263 users voted. 29 users abstained.
Tags:
Hubs:
Total votes 17: ↑10 and ↓7+6
Comments68

Articles