В маркетинге хостеров пишут «VPS» — но за этими тремя буквами могут стоять разные технологии. KVM, OpenVZ, LXC — три архитектуры с очень разными свойствами. Знание разницы экономит деньги и нервы.
Разбираемся, что реально скрывается за каждой аббревиатурой, и в каком сценарии какая технология оптимальна.
KVM — честная виртуализация
KVM (Kernel-based Virtual Machine) — полноценный гипервизор в ядре Linux. Каждый VPS — самостоятельная виртуальная машина со своим ядром, своими драйверами, своим адресным пространством.
Плюсы: любое ядро (можно ставить свой Linux/BSD/Windows), максимальная изоляция от соседей, честные ресурсы (CPU/RAM жёстко закреплены). Возможен nested-virt для собственных виртуальных машин, работают IOMMU/GPU-passthrough.
Минусы: больше overhead (~5-10% CPU, +100 MB RAM на VM). Медленный старт — 10-30 секунд.
Кому: production, требующий root-доступа к ядру (docker без учебных велосипедов, VPN-сервер, ML с CUDA passthrough), Windows-VPS.
OpenVZ — общая ОС, старая школа
OpenVZ — контейнерная виртуализация. Одно ядро на всех VPS хоста, разделяются user-space, файловые системы, сеть. Все VPS видят одно ядро, свои контейнеры.
Плюсы: плотнее упаковка (100+ VPS на одну машину), поэтому дешевле. Быстрый старт — 1-2 секунды.
Минусы: нельзя менять ядро (fixed на хосте). Иногда не работают Docker/K8s (нужны cgroups v2 и правильный namespace-config, а хостер часто не даёт). CPU-лимиты «мягкие» — соседи могут утянуть больше своей доли.
Кому: dev/staging, простые LAMP-сайты, тестовые окружения. Не берите OpenVZ для production, если планируете Docker.
OpenVZ 7 научился Docker, но требует cgroups v1 legacy-mode. Если хостер не разрешает включать — Docker работать не будет. Спрашивайте перед покупкой.
LXC — современные контейнеры
LXC / LXD — системные контейнеры Linux. Общая нить: как OpenVZ, но на современном ядре 5.x/6.x, с cgroups v2, user namespaces. Активно используется Proxmox и Canonical.
Плюсы: быстрый старт, плотная упаковка, изоляция через namespaces, Docker работает нативно.
Минусы: одно ядро на всех — если у соседа crash в kernel-module, вся нода падает. Нельзя менять ядро.
Кому: современная альтернатива OpenVZ. У некоторых хостеров — под маркой «Cloud VPS».
Как отличить, что вам продают
На тарифе часто указано «KVM», «OpenVZ», иногда «Cloud VPS» (что может значить всё что угодно). Быстрая проверка изнутри VPS:
# KVM: virt-what вернёт 'kvm'
apt install virt-what -y
virt-what
# LXC/OpenVZ: /proc/1/status покажет tgid=1 но систему видно через:
cat /proc/1/cgroup
# Если /lxc/... или /machine.slice/... — контейнер
# Проверка своего ядра:
uname -r
# Если можете сменить через apt install linux-image-6.x — KVM
# Если не даёт — контейнерСравнение по метрикам
Практические характеристики в цифрах:
KVM OpenVZ LXC
───────────────────────────────────────────────
CPU overhead 3-8% 1-2% 1-2%
RAM overhead 100 MB ~0 ~0
Старт VM 10-30s 1-2s 2-3s
Смена ядра ✅ ❌ ❌
Docker ✅ ⚠️ ✅
Windows ✅ ❌ ❌
GPU passthrough ✅ ❌ ⚠️
Цена (относит.) ×1 ×0.5 ×0.7
Плотность на ноду 40-80 150+ 100+Наш подход
У нас все VPS — KVM. Мы принципиально не продаём OpenVZ или LXC, чтобы не было двусмысленности с Docker, ядром и производительностью. Дороже на €1-2 в тарифе — но никаких сюрпризов «Docker не запускается» или «сосед забрал CPU».