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