Прежде всего сформировался список программ:

  • NextCloud – по сути заменяет Google Docs и Dropbox, центр домашнего облака
  • Vaultwarden – хранение паролей
  • Dushy – стартовая страница со списком запущенных локально приложений
  • Gitea – центр домашней разработки (Git + CICD)
  • Sonarqube – проверка качества кода
  • Docker registry – хранить свои собранные приложения
  • Uptime Kuma – следит работают ли указанные сайты или нет
  • icloudpd – загрузка фоток с iPhone для бекапа
  • metube – загрузка видое с Youtube для бекапа
  • minidlna – просмотр загруженных видео на ТВ
  • pyload / qbit – загрузка больших файлов, часто со своего компьютера неудобно на ночь оставлять
  • LB (любой, сейчас Traefik) – получение https сертификатов и открытие сервиса вовне (чтобы работало и без входа в домашний VPN извне).

Остались требования:

  • данные должны быть локальны, чтобы не зависеть от внешних обстоятельств
  • данные и их сохранность – главный приоритет
  • должно быть бесшумно, при этом иногда может быть шумно (когда идет работа и резервные копии). Шумные сервера (все где есть вентилятор и он полностью не выключается, а это все с вентилятором) должны ночью сами выключаться.
  • минимальные требования к обслуживанию
  • никаких внешних облаков (ни для установки системы и регистрации, ни для чего другого) – иначе непонятно зачем все локально ставить
  • ничего страшного, если денек что-то работать не будет – это все-таки дом, а не транснациональная корпорация (если вдуматься, то сервера играют вспомогательную функцию, основное на ноутбуках/мобильных устройствах). Так что те же перезагрузки или выключения по расписанию – нормально.

Это все распределяется на следующие устройства:

  • backup – хранилище с доступом по sftp и синхронизацией по rsync, локально есть снепшоты файловой системы для истории бекапов. Плюс, запущены приложения для скачивания: metube, minidlna, pyload / qbit. На базе TrueNAS и Beelink U59 (16Гб ОЗУ, N5095 4 cores, 1x 4Tb HDD для данных, ZFS). Включается по требованию, обычно где-то раз в неделю для резервных копий.
  • backup2 – хранилище с доступом по sftp и синхронизацией по rsync, копия backup, находится физически в другом месте для надежности хранения резервных копий. Коробочка Zyxel NAS326 + 2 x 4Tb HDD (в зеркале) – саму коробку не рекомендую, но уж что есть.
  • router – машинка на базе Orange Pi R1 Plus LTS (RK3328, 1Gb RAM) заменяет часть функций WiFi роутера (DNS, VPN, домашняя страничка (Dashy), LB (Traefik), Uptime Kuma) – в целом, если бы WiFi-роутер был хороший, то этого бы не потребовалось.
  • vpe – сервер виртуальных машин для экспериментов на базе Proxmox и GK3 Pro (16Gb RAM, N5105 4 cores). Он не бекапится. Обычно выключен, включается под эксперименты, потом выключается. Есть идея, что можно систему перенести на внешний жесткий диск и не занимать компьютер, но пока что смысла нет, т.к. компьютеров сейчас больше, чем нужно оказалось. Тут же можно и с Kubernetes поиграться, если нужно. Потенциально можно переставить на чистый MicroOS + Cockpit, но Cockpit пока что немного неудобнее, так что смысла нет.
  • cloud – основные приложения для дома (NextCloud, Vaultwarden, icloudpd). MicroOS на BMax B1 Plus (N3350, 6Gb RAM) + 512Гб SSD. Безвентиляторный, постоянно работает.
  • dev – основные приложения для разработки (Gitea, Sonarqube, Docker registry, тестовое окружение своих приложений). MicroOS на U59 (16Гб ОЗУ, N5095 4 cores). Включается под задачи: и не каждый день что-то дома программирую, а тем более не всегда нужен еще и сервер для этого.