Proxmox от А до Я: полтора года на домашнем сервере. Установка, LXC, GPU, бекапы, кластер
Год назад я поставил Proxmox на старый системник, который пылился в углу. Думал — поиграю неделю и забуду. Сейчас на этом «поиграю» крутятся 8 VM, 12 LXC-контейнеров, пара продакшен-сайтов и Home Assistant. Гипервизор не перезагружался 11 месяцев — и это на железе 2015 года.
Собрал сюда всю свою эпопею: от первой установки до кластеризации. Каждый тезис — ссылка на отдельную статью, где я расковырял тему вдоль и поперёк.
Почему Proxmox, а не VMware
С VMware я мучился года три. Сначала ESXi бесплатный, но с ограничениями — API режет, снапшоты не все, в веб-морде кнопок нет. Потом они подписки закрутили — стало совсем грустно. Proxmox дал всё то же самое, но бесплатно, и без «а вот эта фича только в платной версии». Вот тут я подробно объясняю, почему слез с VMware и не жалею.
Свою первую виртуалку я запускал ещё до того, как разобрался с термином «гипервизор». Просто хотел, чтобы несколько сервисов жили на одном железе и не дрались за ресурсы. Та история — здесь.
Установка и первая настройка
Скачал ISO, записал на флешку, загрузился. Через 15 минут система стояла и была готова к бою. Первая VM на Proxmox — как я её создавал и на какие грабли наступил.
Потом выяснил, что гостевые агенты — не баг, а фича. Без QEMU Guest Agent ты не увидишь IP адрес VM в веб-морде, не сделаешь graceful shutdown, не узнаешь, жива ли система внутри. Статья про Guest Agent и тонкости интеграции.
Контейнеры вместо VM
Долгое время я крутил всё в VM, пока не открыл для себя LXC. Один контейнер — один сервис. Никакого оверхеда, никакого дублирования ядра. Сейчас у меня 12 контейнеров на одном хосте, и они жрут меньше памяти, чем одна VM с Ubuntu. Разбор LXC-контейнеров в Proxmox. А здесь я рассказываю, как заменил 3 VM на 10 контейнеров и сэкономил 12 GB RAM.
Резервное копирование — святое
Пока я не настроил бекапы, жил как на пороховой бочке. Однажды случайно удалил VM через веб-морду — и только снапшот спас. Та история — здесь. После этого я настроил VZDump с расписанием и хранением бекапов на отдельном диске. Гайд по настройке бекапов VZDump.
Недавно столкнулся с проблемой: бекапы перестали запускаться после обновления. Полез на форум искать решение. Статья-дневник про эту историю (скоро допишу, как разрулил).
Сеть, Firewall и Nginx Proxy Manager
Proxmox — штука мощная, но без сетевой безопасности — как без замка на двери. Настройка брандмауэра в Proxmox — 3 правила, которые закрывают всё лишнее.
Все мои сервисы торчат наружу через Nginx Proxy Manager. Это прокси, который даёт HTTPS каждому контейнеру одной галочкой. 5 сервисов с HTTPS за 5 минут — NPM. А это про редиректы и Access Lists в NPM.
Мониторинг и алерты
Гипервизор работает месяцами — и ты понятия не имеешь, что там творится, пока что-то не сломается. Поэтому мониторинг я настроил сразу. CPU, RAM, диски, температура — что и как отслеживать в Proxmox.
ZFS — снапшоты и целостность
Когда я перешёл на ZFS, я понял, что жил неправильно. Снапшоты за секунду, сжатие на лету, проверка целостности данных. Диски живут дольше, данные целее. ZFS в Proxmox: снимки, целостность, отказоустойчивость.
Кластеризация и HA
До кластера у меня был один хост. Когда он падал — падало всё. Сейчас в кластере три ноды, и если одна умирает, VM переезжают на другую. Кластеризация и High Availability в Proxmox — полный разбор.
GPU и проброс устройств
Самая адовая тема. Я хотел использовать видеокарту для Stable Diffusion внутри LXC-контейнера. Проброс GPU в Proxmox — это неделя танцев с бубном, мат и внезапное озарение. Полный отчёт с командами, флагами и ошибками.
Для AI-генерации картинок я в итоге завернул ComfyUI в Docker на отдельной VM. Про ComfyUI на CPU и настройка AI-генерации без видеокарты.
Ubuntu VM в Proxmox — грабли
Казалось бы, что может пойти не так при установке Ubuntu в VM? Оказалось, много чего: драйвера, гостевые агенты, расшаренные папки. Все грабли установки Ubuntu VM в Proxmox.
Типичные ошибки
Ошибка «failed to erase LVM2_member magic string» — я с ней провозился полдня. Потом нашёл решение. Диагностика и исправление.
Почтовый сервер на Proxmox — тоже отдельная песня. Как я ставил почту и вернулся на Яндекс.
Финальные советы
Через полгода эксплуатации я собрал checklist: что отключить, что настроить, какие пакеты доставить. 10 финальных советов по Proxmox.
Мой итог. Proxmox — это гипервизор, который я хотел бы иметь лет пять назад. Он не просит денег, не требует переустановки раз в год, не прячет фичи за paywall. Если у тебя есть старый системник или сервер — поставь Proxmox и не думай. А если наступишь на грабли — у меня в блоге разобрана каждая шишка.
Расширю этот сводный разбор Proxmox практическими наблюдениями из полутора лет эксплуатации. Год назад я поставил Proxmox на старый системник, который пылился в углу. Думал — поиграю неделю и забуду. Сейчас на этом «поиграю» крутятся 8 VM, 12 LXC-контейнеров, пара продакшен-сайтов и Home Assistant. Гипервизор не перезагружался 11 месяцев — и это на железе 2015 года. Proxmox доказал мне, что стабильность не зависит от возраста железа: правильная система на старом, но надёжном «железе» работает годами. Собрал сюда всю свою эпопею: от первой установки до кластеризации.
Почему Proxmox, а не VMware. С VMware я мучился года три. Сначала ESXi бесплатный, но с ограничениями — API режет, снапшоты не все, в веб-морде кнопок нет. Потом они подписки закрутили — стало совсем грустно. Proxmox дал всё то же самое, но бесплатно, и без «а вот эта фича только в платной версии». Главное преимущество Proxmox — открытость. Всё бесплатно, всё в открытом исходнике, никаких paywall. ESXi хорош для корпораций с бюджетом, а для домашнего сервера Proxmox — идеален. За полтора года я не заплатил ни рубля и получил полный набор возможностей виртуализации.
Установка и первая настройка. Скачал ISO, записал на флешку, загрузился. Через 15 минут система стояла и была готова к бою. Установка Proxmox — одна из самых простых среди гипервизоров: загрузочный ISO, пара экранов настройки — и система готова. Первая VM создаётся за пару минут через веб-интерфейс. Я был удивлён, насколько всё интуитивно. Потом выяснил, что гостевые агенты — не баг, а фича. Без QEMU Guest Agent ты не увидишь IP адрес VM в веб-морде, не сделаешь graceful shutdown, не узнаешь, жива ли система внутри. Гостевой агент — это маленький демон внутри VM, который общается с гипервизором. Установите его на каждую VM — и вы получите контроль, без которого виртуализация превращается в гадание.
Контейнеры вместо VM. Долгое время я крутил всё в VM, пока не открыл для себя LXC. Один контейнер — один сервис. Никакого оверхеда, никакого дублирования ядра. Сейчас у меня 12 контейнеров на одном хосте, и они жрут меньше памяти, чем одна VM с Ubuntu. LXC — это контейнерная виртуализация на уровне операционной системы. Она легче полноценной VM: не нужно эмулировать железо, контейнер делит ядро с хостом. Для изолированных сервисов — nginx, MySQL, отдельные приложения — LXC идеален. Разница в потреблении памяти между VM и контейнером — в разы. Я заменил 3 VM на 10 контейнеров и сэкономил 12 GB RAM. Это лучший способ выжать максимум из ограниченного железа.
Резервное копирование — святое. Пока я не настроил бекапы, жил как на пороховой бочке. Однажды случайно удалил VM через веб-морду — и только снапшот спас. После этого я настроил VZDump с расписанием и хранением бекапов на отдельном диске. Бекапы — это то, что отличает профессионала от любителя. Настроил расписание — и система сама делает снапшоты каждый день. Хранение на отдельном диске защищает от сбоя основного массива. Мой ритуал: раз в неделю проверяю, что бекапы свежие и восстановление работает. Это занимает пять минут, но даёт спокойствие. Никогда не откладывайте настройку бекапов — одна случайность может стереть годы работы.
Сеть, Firewall и Nginx Proxy Manager. Proxmox — штука мощная, но без сетевой безопасности — как без замка на двери. Настройка брандмауэра в Proxmox — это 3 правила, которые закрывают всё лишнее. Firewall Proxmox фильтрует трафик на уровне гипервизора — это дополнительный слой защиты для всех VM. Все мои сервисы торчат наружу через Nginx Proxy Manager. Это прокси, который даёт HTTPS каждому контейнеру одной галочкой. 5 сервисов с HTTPS за 5 минут — NPM. Прокси — это ворота в вашу инфраструктуру: вместо открытых портов — один вход с SSL и редиректами. Nginx Proxy Manager автоматизирует выпуск сертификатов и проксирование. Плюс Access Lists позволяют ограничить доступ по IP. Сетевая безопасность — это не опция, а необходимость.
Мониторинг и алерты. Гипервизор работает месяцами — и ты понятия не имеешь, что там творится, пока что-то не сломается. Поэтому мониторинг я настроил сразу. CPU, RAM, диски, температура — что и как отслеживать в Proxmox. Мониторинг превращает «молчащий» сервер в прозрачную систему: вы всегда знаете нагрузку, температуру и здоровье дисков. Алерты в Telegram приходят, когда что-то выходит за пределы нормы. Я узнаю о проблеме до того, как она станет критичной. Это ключевое отличие «эксплуатации» от «работы на удачу». Полчаса на настройку мониторинга — и вы спите спокойно, зная, что система предупредит вас о проблемах.
ZFS — снапшоты и целостность. Когда я перешёл на ZFS, я понял, что жил неправильно. Снапшоты за секунду, сжатие на лету, проверка целостности данных. Диски живут дольше, данные целее. ZFS — это файловая система, которая меняет подход к хранению данных. Снапшоты за секунду: вы можете откатиться на любой момент времени. Сжатие на лету экономит место. Проверка контрольных сумм защищает от тихого повреждения данных. Плюс ZFS сам следит за здоровьем дисков. Для Proxmox ZFS — это рекомендуемый вариант хранения. Переход на ZFS стал одним из лучших решений в моей инфраструктуре: данные целее, диски живее, а снапшоты делают бэкапы почти мгновенными.
Кластеризация и HA. До кластера у меня был один хост. Когда он падал — падало всё. Сейчас в кластере три ноды, и если одна умирает, VM переезжают на другую. Кластеризация — это объединение нескольких хостов в одну систему управления. High Availability (HA) — это механизм, который автоматически перезапускает VM на живой ноде, если текущая умерла. Для домашнего сервера это может показаться избыточным, но когда у вас продакшен-сайты — надёжность критична. Настройка кластера в Proxmox занимает десятки минут, а даёт готовность инфраструктуры. Три ноды в кластере — и падение одной не замечают ваши пользователи.
GPU и проброс устройств. Самая адовая тема. Я хотел использовать видеокарту для Stable Diffusion внутри LXC-контейнера. Проброс GPU в Proxmox — это неделя танцев с бубном, мат и внезапное озарение. Проброс устройств — это передача физического железа (GPU, USB, диска) в виртуальную машину. Для GPU это сложно: нужны правильные флаги, правильные драйверы, правильная конфигурация. Для AI-генерации картинок я в итоге завернул ComfyUI в Docker на отдельной VM. Про ComfyUI на CPU — это отдельная история, которая научила меня не сдаваться. Проброс GPU — тема для продвинутых, но когда она получается — это магия. Если вы хотите использовать GPU в виртуализации — заложите неделю на настройку.
Ubuntu VM в Proxmox — грабли. Казалось бы, что может пойти не так при установке Ubuntu в VM? Оказалось, много чего: драйвера, гостевые агенты, расшаренные папки. Типичные ошибки: установка без гостевого агента (нет управления), проблемы с драйверами виртуального железа, неработающие расшаренные папки. Решения просты, если знать, где копать. Гостевой агент — ставится одной командой. Драйвера — обычно входят в стандартный образ Ubuntu. Расшаренные папки — настраиваются через VirtIO. Самая частая ошибка — «failed to erase LVM2_member magic string» — я с ней провозился полдня. Это проблема разметки диска при установке. Решение — правильно выбрать схему разметки. Каждая ошибка становится уроком, и в блоге я разобрал их все.
Почтовый сервер на Proxmox — тоже отдельная песня. Почта — один из самых сложных сервисов для самостоятельной настройки: DNS-записи SPF, DKIM, DMARC, антиспам, доставляемость. Я потратил на это много времени и в итоге вернулся на Яндекс для почты. Мой честный опыт: для домашнего сервера самостоятельная почта — это боль, которая редко окупается. Доставляемость писем с домашних IP часто плохая, почту в спам кладут. Для серьёзных рассылок лучше использовать почтовые сервисы. Но сам процесс настройки научил меня многому: SPF, DKIM, DMARC — это необходимые знания для понимания работы почты. Урок: не всё нужно делать самому, иногда готовый сервис лучше.
Финальные советы. Через полгода эксплуатации я собрал checklist: что отключить, что настроить, какие пакеты доставить. Из главного: включить автоматические обновления, настроить бекапы, установить гостевые агенты, включить мониторинг, настроить firewall. Эти простые действия превращают «работающий сервер» в «надёжную систему». Не отключайте лишнее, пока не знаете, зачем оно. Доставляйте пакеты, которые рекомендует сообщество. Мой совет — начните с малого: установите Proxmox, создайте первую VM, настройте бекап. Остальное придёт с опытом. Чек-лист сэкономит вам недели экспериментов.
Мой итог. Proxmox — это гипервизор, который я хотел бы иметь лет пять назад. Он не просит денег, не требует переустановки раз в год, не прячет фичи за paywall. Если у тебя есть старый системник или сервер — поставь Proxmox и не думай. Полтора года эксплуатации доказали: стабильность, гибкость и богатство функций — это про Proxmox. А если наступишь на грабли — у меня в блоге разобрана каждая шишка. Это лучший гипервизор для домашнего сервера и небольших инфраструктур. Начните с него — и вы не пожалеете.