DevOps & CI/CD

Proxmox

Открытая платформа виртуализации на базе Debian и KVM: виртуальные машины, LXC-контейнеры, кластер и бэкапы через веб-интерфейс.

Что такое Proxmox

Proxmox VE (Virtual Environment) — открытая платформа виртуализации: дистрибутив на базе Debian, который превращает обычный сервер в гипервизор с веб-интерфейсом. Ставится на голое железо, управляется из браузера, лицензируется под AGPLv3 — платить нужно только за подписку на enterprise-репозиторий и поддержку, сама платформа бесплатна и без функциональных ограничений.

Ключевая особенность — две технологии изоляции в одном продукте:

  • KVM — полноценные виртуальные машины с любой гостевой ОС, включая Windows.
  • LXC — системные контейнеры поверх ядра хоста: Linux-окружение, стартующее за секунду и потребляющее десятки мегабайт вместо гигабайтов.

Практическое позиционирование — открытая замена VMware vSphere: кластер, живая миграция, HA и бэкапы без лицензионных платежей за сокет. После смены политики лицензирования VMware это направление миграции стало массовым.

Что входит в коробку

Возможность Что даёт
Веб-интерфейс Управление всем парком, без отдельного сервера управления
Кластер До нескольких десятков узлов, единая консоль, общий кворум
Живая миграция Перенос работающей ВМ между узлами без остановки
HA Автоперезапуск ВМ на живом узле при отказе железа
Ceph Встроенное распределённое хранилище из локальных дисков
ZFS Локальное хранилище со сжатием и мгновенными снапшотами
Proxmox Backup Server Инкрементные дедуплицированные бэкапы
SDN, firewall Виртуальные сети, VLAN, правила на уровне ВМ

В отличие от vSphere отдельный сервер управления (аналог vCenter) не нужен: каждый узел кластера несёт полный веб-интерфейс, и подключаться можно к любому.

Работа из консоли

Веб-интерфейс покрывает почти всё, но автоматизация и разбор проблем идут через CLI.

# Виртуальные машины (KVM)
qm list                                   # список ВМ
qm create 101 --name web-01 --memory 8192 --cores 4 \
  --net0 virtio,bridge=vmbr0 --scsihw virtio-scsi-single
qm start 101
qm snapshot 101 before-upgrade
qm rollback 101 before-upgrade
qm migrate 101 pve-node2 --online         # живая миграция

# Контейнеры (LXC)
pct list
pct create 201 local:vztmpl/debian-12-standard_amd64.tar.zst \
  --hostname app --memory 2048 --rootfs local-lvm:8 --net0 name=eth0,bridge=vmbr0,ip=dhcp
pct enter 201

# Кластер
pvecm status
pvecm nodes

# Бэкап
vzdump 101 --storage backup --mode snapshot --compress zstd

Что стоит знать при установке

  • Три узла для кластера. HA требует кворума: на двух узлах при потере связи кластер встаёт. Третьим может быть маломощная машина в роли QDevice.
  • Enterprise-репозиторий. Без подписки он недоступен и apt update ругается ошибкой 401 — на бесплатной установке подключают pve-no-subscription.
  • ZFS ест память. ARC-кеш по умолчанию забирает до половины RAM хоста; на серверах с малым объёмом памяти его ограничивают.
  • Диски отдавайте напрямую. ZFS и Ceph должны видеть диски, а не RAID-массив контроллера: аппаратный RAID под ними мешает контролю целостности.

GPU в Proxmox

Proxmox — популярный способ построить домашнюю или небольшую корпоративную ML-лабораторию: одна машина, на ней ВМ с GPU под обучение и десяток LXC под сервисы.

Проброс карты в ВМ делается через GPU passthrough: включить IOMMU в UEFI и в загрузчике (intel_iommu=on или amd_iommu=on), занести карту в vfio-pci, запретить хосту загружать nouveau, добавить устройство в конфиг ВМ. Внутри гостя дальше работает штатный драйвер NVIDIA.

Альтернатива — LXC-контейнер с проброшенными устройствами /dev/nvidia*: карта остаётся у хоста и делится между контейнерами, накладных расходов нет, но изоляция слабее.

Где применяют

Небольшие ЦОД и хостеры, инфраструктура компаний на десятки серверов, тестовые стенды, домашние лаборатории. Типовая связка: Proxmox + Ceph или ZFS + Proxmox Backup Server + Zabbix для мониторинга; провижининг ВМ — через cloud-init, настройка гостей — Ansible.

Связанные термины

Готовы запустить GPU-задачу?

Запустить GPU-сервер