Virtualisation

What is OpenVZ?

Also known as: Virtuozzo
Definition

OpenVZ is container-based virtualisation in which every instance shares the host kernel, so guests cannot load kernel modules or run a different operating system. OpenVZ is why unusually cheap virtual servers exist: density is much higher and memory is routinely oversold.

Why OpenVZ matters

OpenVZ is why unusually cheap virtual servers exist: density is much higher and memory is routinely oversold. It is also why Docker, WireGuard on older hosts and custom kernels frequently fail on budget providers.

OpenVZ in practice

When you run an OpenVZ VPS, you live inside the host's kernel. You see this in `/proc` and in the modules you cannot load: try `modprobe wireguard` and it fails with a message about permissions, not a missing file. Changing the kernel is out of the question, so you adapt the workload, not the host. Memory is shared and often oversold, so a neighbour's spike can pressure yours. A mistake here is costly: pick an OpenVZ box for a task that needs kernel control, and you face rebuilding on KVM or replacing the plan entirely.

What people get wrong about OpenVZ

A common error is assuming OpenVZ is just an older or cheaper kind of KVM. It is not. OpenVZ containers cannot load kernel modules, run a different OS, or use features like WireGuard on older hosts. The correction: treat OpenVZ as a distinct constraint, not a subset. If you need kernel-level control, choose a KVM plan from the start.

OpenVZ — common questions

Can I run Docker on OpenVZ?

Often not directly. Because OpenVZ shares the host kernel and may restrict kernel features, Docker's usual container runtime may fail, especially on older hosts. You might use workarounds like lxc or run containers in a VM, but it's not guaranteed. Check your host's capabilities before relying on Docker.

What is OpenVZ good for?

OpenVZ is good for high-density environments where many instances run on one host, making it cheap. It suits typical web servers, lightweight applications, and any workload that doesn't need kernel modifications. Just avoid tasks requiring custom kernels, nested virtualisation, or exotic network features.

More from virtualisation

KVM
KVM is full hardware virtualisation built into the Linux kernel, giving each guest its own kernel and hardware-enforced isolation from other tenants.
LXC
LXC is Linux-native containerisation that isolates processes with namespaces and cgroups while sharing the host kernel.
Hypervisor
A hypervisor is the software layer that creates and runs virtual machines, allocating physical CPU, memory and IO between them.
Nested virtualisation
Nested virtualisation lets a virtual machine itself run virtual machines, by exposing the processor virtualisation extensions to the guest.
vCPU
A vCPU is a virtual processor presented to a guest, backed by scheduling time on a physical core or thread.
cloud-init
cloud-init is the standard mechanism for configuring a virtual machine on first boot, using metadata supplied by the platform.