кейс 04

Инфраструктура

как код
инфраструктура
автоматическое
обнаружение нод
еженедельное
обновление образа

Задача

Разобраться в DevOps-стеке руками — собрать дома парк виртуалок, которым можно управлять как кодом: воспроизводимо, с мониторингом и секретами в порядке.

Решение

Инфраструктура разнесена на два слоя. OpenTofu создаёт виртуалки в Proxmox. Ansible настраивает ноды, а список хостов берёт напрямую из API гипервизора. Секреты шифруются через SOPS и версионируются в git, базовый образ собирает Packer, а состояние OpenTofu лежит в PostgreSQL с блокировками. Отдельно мониторинг: Prometheus находит новые ноды через service discovery Proxmox. Создал машину — она появилась на дашборде, выключил — исчезла. Проект учебный и продолжает расти, но собран по-взрослому: ровно так, как это делают в проде.

Развитие

Сейчас парк — это отдельные виртуалки под управлением OpenTofu и Ansible. Следующий шаг — Kubernetes: перенести сервисы в оркестратор, чтобы деплой, масштабирование и самовосстановление работали декларативно.

Как это работает

01OpenTofu поднимает виртуальные машины в Proxmox, состояние в PostgreSQL
02Ansible настраивает ноды, а список хостов читает прямо из API гипервизора
03Packer печёт базовый образ, SOPS шифрует секреты и версионирует их в git
04Prometheus находит новые машины через service discovery Proxmox