6.3 KiB
status, type, tags, created, updated, title, source
| status | type | tags | created | updated | title | source | |||
|---|---|---|---|---|---|---|---|---|---|
| seed | concept |
|
2026-05-18 | 2026-05-18 | Infrastructure — ada-dev | Infrastructure |
Infrastructure — ada-dev
Заметка фиксирует текущую схему homelab-инфраструктуры ada-dev: публичный VPS, домашние узлы, reverse proxy, overlay-сеть и пользовательские сервисы.
!infra.excalidraw.md.md
Общая схема
Инфраструктура состоит из трех ключевых зон:
Internet— внешний доступ пользователей.ru-vpsс белым IP — публичная точка входа.- локальные узлы
mini-pcиcloud-pc, связанные с VPS через ZeroTier overlay network.
VPS принимает внешний трафик и проксирует его дальше. Домашние сервисы не обязаны напрямую светиться в интернет: доступ к ним можно строить через публичный CA и NGINX/NPM и приватную overlay-сеть.
Узлы
ru-vps
ru-vps — публичный сервер с белым IP. На схеме он выполняет роль внешнего шлюза:
NPM (публичный)— reverse proxy для публичных доменов и маршрутов;Nginx (80, 443)— входная точка HTTP/HTTPS;ufw— базовый firewall;ZeroTier— связь с домашним сегментом;Portainer Agent— управление контейнерной средой через Portainer.
Практический смысл VPS — держать наружу только минимальный набор портов и не раскрывать домашнюю сеть напрямую.
mini-pc
mini-pc описан как N150 / 12 GB / 256 GB. По схеме это небольшой домашний узел для инфраструктурных сервисов:
AdGuard Home;NPM (локальный);Vaultwarden;ZeroTier;Portainer Agent.
Логика узла: локальная инфраструктура и сервисы, которым полезно быть рядом с домашней сетью.
cloud-pc
cloud-pc описан как i5 / 16 GB / 256 GB + 5 TB. Это более крупный узел для сервисов и хранения:
Portainer Server;Cockpit;Gitea + Registry;Gitea Actions Runner;Nextcloud;SMB/BU/Files (5 TB HDD);ZeroTier.
Логика узла: сервисы разработки, файлы, backup/storage и управление контейнерами.
Сетевой слой
ZeroTier используется как overlay-сеть между VPS и домашними узлами. Это позволяет:
- проксировать трафик с публичного VPS на локальные сервисы;
- не открывать сервисные порты домашней сети наружу;
- держать управление и межузловые соединения в приватном сегменте;
- упростить маршрутизацию между VPS,
mini-pcиcloud-pc.
ufw на VPS должен ограничивать внешний периметр. Базовая модель: наружу открыты только необходимые публичные порты, а внутренние сервисы доступны через ZeroTier и reverse proxy.
Reverse proxy
На схеме есть два уровня NPM:
NPM (публичный)на VPS — отвечает за публичный доступ;NPM (локальный)наmini-pc— может обслуживать локальные маршруты и внутренние сервисы.
Такой подход полезен, если нужно разделить внешний и внутренний контуры. Публичный NPM принимает домены из интернета, локальный NPM может маршрутизировать сервисы внутри homelab.
Смежная заметка: Nginx Proxy Manager под path.
Сервисы
Ключевые пользовательские сервисы:
Vaultwarden— self-hosted password manager;Gitea + Registry— Git-сервер и container registry;Gitea Actions Runner— CI runner;Nextcloud— файловая синхронизация;SMB/BU/Files— файловое хранилище и backup на 5 TB HDD;AdGuard Home— DNS/ad blocking;Cockpit— web-управление сервером;Portainer Server/Agent— управление контейнерами.
Замечания по устойчивости
- Публичный VPS — критическая точка входа. Если он падает, внешний доступ к сервисам пропадает, даже если домашние узлы живы.
- ZeroTier — критическая зависимость для связности между VPS и домашними узлами.
cloud-pcнесет сразу несколько ролей: Git, registry, runner, Nextcloud и storage. Для важных данных нужен отдельный backup-контур.Vaultwardenстоит держать максимально изолированным: отдельный volume, backup, HTTPS, минимальный доступ к админке.
Связанные заметки
- CA и NGINX — TLS-сертификаты и Nginx как входной HTTP/HTTPS-слой.
- VPN — близкая идея приватного сетевого контура.
- Docker - Дополнительные знания — контейнерная эксплуатация сервисов.
- Основы - Docker — базовая модель контейнеризации.
- DevOps - основы — инфраструктура, автоматизация и эксплуатация.