Определение простыми словами
OpenVZ — это контейнерная виртуализация: на одном физическом сервере крутится одно ядро Linux, а внутри него изолированы десятки или сотни «гостей». Каждому контейнеру выделяется своя файловая система, сетевые интерфейсы, лимиты CPU и памяти. Снаружи это выглядит как самостоятельный VPS с root-доступом, но на самом деле все контейнеры используют общее ядро.
Главный плюс — экономия ресурсов: нет накладных расходов на отдельное ядро и эмуляцию железа, как у KVM. Главный минус — гость ограничен только Linux, не может загрузить свой kernel-модуль и не запустит Windows или FreeBSD.
Сравнение (таблица)
| Параметр | OpenVZ | KVM | LXC/LXD |
|---|---|---|---|
| Тип | контейнер | полноценная виртуализация | контейнер |
| Своё ядро гостя | нет | да | нет |
| ОС гостя | Linux | любая | Linux |
| Накладные расходы | минимальные | 5–10 % | минимальные |
| Плотность на ноде | очень высокая | средняя | очень высокая |
| Поддержка swap | через vSwap | полная | cgroups |
| Tun/Tap, VPN | зависит от настроек ноды | без ограничений | зависит от профиля |
Кейсы использования
- Бюджетные VPS под Telegram-боты, парсеры, лёгкие веб-сайты — там, где не нужно менять ядро.
- Учебные стенды и dev-окружения: контейнер поднимается за пару секунд из готового шаблона.
- Reseller-хостинг: одна нода вмещает в разы больше клиентов, чем при KVM.
- Кэширующие прокси, DNS-серверы, мониторинг — лёгкие сервисы, где важна плотность.
- Негативный сценарий: попытка поднять WireGuard, IPsec или Docker внутри OpenVZ-контейнера может упасть — нужный модуль не загружен на ноде, а гость не имеет прав вмешиваться в ядро. Перед покупкой надо уточнять у хостера, какие модули доступны.
Технические детали
OpenVZ управляется утилитами vzctl и prlctl. Команды показывают создание контейнера из шаблона, настройку лимитов и базовую диагностику.
vzctl create 101 --ostemplate ubuntu-22.04-x86_64
--hostname web1.example.com --ipadd 10.0.0.101
vzctl set 101 --ram 2G --swap 1G --cpus 2 --save
vzctl start 101
vzctl enter 101
# изнутри контейнера привычные команды Linux
uname -r # ядро всегда хост-системы
cat /proc/user_beancounters
vzlist -a
vzctl stop 101
OpenVZ 7 на современных ядрах использует cgroups и namespaces — фактически приближаясь к LXC, но с историческим управлением через vzctl и шаблонами Virtuozzo. Поддержка свежих фич ядра зависит от версии Virtuozzo, которую установил провайдер.
🔥 Где это применяется
Частые вопросы
Можно ли поставить Windows на OpenVZ-VPS?
Нет, OpenVZ работает только с Linux-гостями. Для Windows нужен KVM, Hyper-V или VMware.
Запустится ли Docker внутри OpenVZ?
Иногда да — при правильной настройке ядра ноды. На многих старых OpenVZ-нодах Docker не работает или работает с ограничениями. Уточняйте у провайдера.
Чем OpenVZ отличается от LXC?
Концептуально близки: оба — контейнерные технологии без своего ядра. OpenVZ — коммерческое решение Virtuozzo с проприетарными утилитами, LXC/LXD — open source с интеграцией в обычные дистрибутивы Linux.