Артур Хайбуллин
Артур Хайбуллин 01 сен 2026, 20:35
exec-bc322c90-5a8a-4666-ab04-cca1c825d6a4.jpg

Привет! До недавнего времени для хранения резервных копий контейнеров и виртуальных машин из своей Proxmox-лабы я использовал NFS. Сама NFS-шара находилась на Synology NAS, доступ к которому был организован через сайт в Pangolin.
В целом такая схема работала без проблем, но по мере увеличения количества контейнеров время выполнения резервного копирования стало заметно расти. При этом создание снимка и синхронизация выполнялись достаточно быстро, а основным узким местом оказалась запись готового архива в NFS. Со временем этот этап начал едва укладываться в отведённое для бэкапа окно, хотя общий объём данных практически не изменился.
Тогда появилась идея: а что, если отказаться от NFS и попробовать S3-совместимое хранилище? Тем более что на том же NAS у меня уже был развёрнут RustFS — оставалось только подключить его и проверить на практике.
Ниже расскажу, как я это настроил, с какими нюансами столкнулся и что в итоге получилось.

Читать далее..

28
Артур Хайбуллин
Артур Хайбуллин 20 авг 2026, 23:49
iac-opentofu.jpg

Лето - это не только сезон отпусков, но и период, когда высокая температура становится дополнительным фактором риска для инфраструктуры. В моём случае жара, вероятно, внесла свой вклад в отказ одной из нод домашнего Proxmox-кластера: купленный несколько лет назад Minisforum UM890 Pro перестал подавать признаки жизни. Вместо замены вышедшей из строя ноды я решил воспользоваться ситуацией и реализовать давно откладываемую задачу - перенести домашнюю лабораторию в Облако.

Для новой инфраструктуры была выбрана площадка Hostkey и выделенный сервер с предустановленным Proxmox VE 9.*. После развертывания хоста я восстановил из резервных копий основные сервисы и получил рабочую среду. Поскольку инфраструктуру фактически приходилось собирать заново, это оказался подходящий момент для следующего шага - перехода к Infrastructure as Code (IaC).

В предыдущем посте я разбирал автоматическое формирование Ansible Inventory на основе данных из Proxmox API. По расписанию скрипт получал актуальное состояние виртуальной инфраструктуры и генерировал inventory, благодаря чему Ansible всегда работал с актуальным списком серверов. Однако это решение закрывало только одну конкретную проблему: inventory соответствовал тому, что уже существует в Proxmox.

При этом оставался более фундаментальный вопрос: где описано то, что вообще должно существовать?

Количество контейнеров, их параметры, выделенные CPU и RAM, диски, сетевые настройки и другие характеристики инфраструктуры по-прежнему существовали преимущественно в моей голове, отдельных командах и истории bash.

Скрипт синхронизации мог ответить на вопрос:

«Что сейчас запущено в Proxmox?»

Но не мог ответить на другой, гораздо более важный:

«Как должна выглядеть инфраструктура и как воспроизвести её с нуля?»

Именно эту задачу я решил закрыть с помощью OpenTofu - open-source форка Terraform.

В этом посте разберу, как я перевёл домашнюю инфраструктуру под управление OpenTofu, связал её с self-hosted GitLab CI/CD и Proxmox, организовал хранение и применение конфигурации через pipeline, а также расскажу о проблемах, с которыми столкнулся в процессе миграции.

Читать далее..

59
Артур Хайбуллин
Артур Хайбуллин 15 июн 2026, 12:30
298
Артур Хайбуллин
Артур Хайбуллин 14 мая 2026, 17:56
298
Артур Хайбуллин
Артур Хайбуллин 08 апр 2026, 13:39
261