Virtualizzazione basata su container: OpenVZ

Versione del 9 mar 2010 alle 18:06 di Tindal (discussione | contributi) (Nuova pagina: =Introduzione= Già da un po' di tempo si fa un gran parlare di virtualizzazione, e sono nati già parecchi prodotti software che implementano questo concetto in modi anche molto diffe...)
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

Introduzione

Già da un po' di tempo si fa un gran parlare di virtualizzazione, e sono nati già parecchi prodotti software che implementano questo concetto in modi anche molto differenti. Possiamo individuare almeno tre tipi distinti di virtualizzazione:

  • emulazione
  • paravirtualizzazione
  • virtualizzazione nativa

In emulazione, il sistema di virtualizzazione simula tutto l'hardware su cui viene installato il sistema operativo ospite, detto guest: questo sistema ha il vantaggio di poter ospitare in modo relativamente semplice molti tipi di sistemi operativi immodificati, anche differenti dal sistema operativo di base (host), a costo di un certo consumo di risorse (overhead). Software di questo tipo sono Qemu, KVM, VirtualBox, VMware.

Per migliorare le prestazioni di questi sistemi, è stato sviluppato il concetto di paravirtualizzazione, in cui il software di virtualizzazione, detto Hypervisor, offre una speciale interfaccia ai sistemi operativi guest: le prestazioni migliorano, ma si rendono necessarie delle modifiche ai sistemi guist per poter comunicare con l'hypervisor. Xen è il principale prodotto ad utilizzare questo tipo di approccio.

La virtualizzazione nativa, invece, cerca di ottenere il massimo delle prestazioni rinunciando alla possibilità di far funzionare sistemi guest di tipo differente da quello usato per l'host. In pratica, l'hypervisor è sostituito da un vero e proprio kernel in grado di far funzionare contemporaneamente diversi sistemi operativi, e i programmi di base necessari per far funzionare l'host vengono in qualche modo condivisi dai guest. OpenVZ implementa questo concetto con host e guest Linux.