Virtualizzazione

Cos'è OpenVZ?

Conosciuto anche come: Virtuozzo
Definizione

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.

Perché OpenVZ è importante

OpenVZ è il motivo per cui esistono server virtuali insolitamente economici: la densità è molto più alta e la memoria è regolarmente oversold. È anche il motivo per cui Docker, WireGuard su host più vecchi e kernel personalizzati falliscono spesso su provider economici.

OpenVZ in pratica

Quando usi un VPS OpenVZ, vivi dentro il kernel dell'host. Lo vedi in `/proc` e nei moduli che non puoi caricare: prova `modprobe wireguard` e fallisce con un messaggio sui permessi, non su un file mancante. Cambiare il kernel è fuori discussione, quindi adatti il carico di lavoro, non l'host. La memoria è condivisa e spesso oversold, quindi un picco del vicino può premere sul tuo. Un errore qui è costoso: scegli una macchina OpenVZ per un compito che richiede controllo del kernel, e ti trovi a ricostruire su KVM o a sostituire del tutto il piano.

Errori comuni su OpenVZ

Un errore comune è supporre che OpenVZ sia solo un KVM più vecchio o più economico. Non lo è. I contenitori OpenVZ non possono caricare moduli del kernel, eseguire un OS diverso, o usare funzionalità come WireGuard su host più vecchi. La correzione: tratta OpenVZ come un vincolo distinto, non un sottoinsieme. Se hai bisogno di controllo a livello di kernel, scegli un piano KVM dall'inizio.

OpenVZ — domande frequenti

Posso eseguire Docker su OpenVZ?

Spesso non direttamente. Poiché OpenVZ condivide il kernel dell'host e può limitare le funzionalità del kernel, il runtime contenitori usuale di Docker può fallire, specialmente su host più vecchi. Potresti usare soluzioni alternative come lxc o eseguire contenitori in una VM, ma non è garantito. Controlla le capacità del tuo host prima di fare affidamento su Docker.

Per cosa è buono OpenVZ?

OpenVZ è buono per ambienti ad alta densità dove molte istanze girano su un solo host, rendendolo economico. Si adatta a tipici server web, applicazioni leggere, e qualsiasi carico di lavoro che non richieda modifiche al kernel. Evita solo compiti che richiedono kernel personalizzati, virtualizzazione annidata, o funzionalità di rete esotiche.

Altro da virtualizzazione

KVM
KVM è una virtualizzazione completa dell'hardware integrata nel kernel Linux, che dà a ogni guest il proprio kernel e un isolamento dal hardware di altri tenant.
LXC
LXC è una containerizzazione nativa di Linux che isola i processi con namespace e cgroups condividendo il kernel dell'host.
Hypervisor
Un hypervisor è il livello software che crea ed esegue macchine virtuali, allocando CPU fisica, memoria e I/O tra di esse.
Virtualizzazione annidata
La virtualizzazione annidata consente a una macchina virtuale di eseguire a sua volta macchine virtuali, esponendo le estensioni di virtualizzazione del processore al guest.
vCPU
Una vCPU è un processore virtuale presentato a un guest, supportato da tempo di pianificazione su un core o thread fisico.
cloud-init
cloud-init è il meccanismo standard per configurare una macchina virtuale al primo avvio, usando metadati forniti dalla piattaforma.