A seconda delle esigenze di utilizzo e delle pre­sta­zio­ni de­si­de­ra­te, può avere senso optare per un hy­per­vi­sor al­ter­na­ti­vo a Xen. Di seguito ri­por­tia­mo cinque in­te­res­san­ti al­ter­na­ti­ve a Xen, ana­liz­zan­do­ne i relativi vantaggi e svantaggi.

Compute Engine
La soluzione IaaS ideale per i tuoi carichi di lavoro
  • vCPU estre­ma­men­te van­tag­gio­se e potenti core dedicati
  • Massima fles­si­bi­li­tà senza periodo con­trat­tua­le minimo
  • Servizio di as­si­sten­za tecnica 24 ore su 24, 7 giorni su 7

Le migliori al­ter­na­ti­ve a Xen a confronto

Tipo di hy­per­vi­sor Ar­chi­tet­tu­ra Sistema operativo host Sistema operativo guest
Xen Tipo 1 x86, x86_64, ARM Linux, Windows Windows, Linux
KVM Tipo 1/Tipo 2 ibrido x86, x86_64, System-z Linux Windows, BSD, Linux
Vir­tual­Box Tipo 2 x86, x86_64 Linux, Windows, macOS, Solaris Windows, Linux, BSD, Solaris
Xvisor Tipo 1 x86, x86_64, ARM, RISC-V Linux Windows, Linux, BSD, Solaris e molti altri
QEMU Tipo 2 x86, x86_64, ARM, RISC-V Linux, Windows Windows, Linux, BSD, Solaris e molti altri
UTM Tipo 2 x86, x86_64, ARM, RISC-V macOS, iOS Windows, Linux, BSD, Solaris e molti altri
N.B.

Le al­ter­na­ti­ve a Xen messe a confronto sono tutte di­spo­ni­bi­li con licenza gratuita, per cui sono par­ti­co­lar­men­te ap­prez­za­te sia da chi lavora come am­mi­ni­stra­to­re o am­mi­ni­stra­tri­ce che nell’ambito dello sviluppo. Una delle prin­ci­pa­li ca­rat­te­ri­sti­che di­stin­ti­ve è il tipo di hy­per­vi­sor uti­liz­za­to per la vir­tua­liz­za­zio­ne:

  • Hy­per­vi­sor di tipo 1, definiti anche bare-metal hy­per­vi­sor, vengono eseguiti di­ret­ta­men­te sull’hardware del sistema host.
  • Hy­per­vi­sor di tipo 2 vengono eseguiti come livello software o ap­pli­ca­zio­ne sul ri­spet­ti­vo sistema host, motivo per cui sono noti anche come hy­per­vi­sor ospitati.

KVM

KVM (Kernel-based Virtual Machine) è un software di vir­tua­liz­za­zio­ne basato su Linux che fa parte del kernel Linux dalla versione 2.6.20. Allo stesso modo di Xen, il software di Red Hat può essere uti­liz­za­to come hy­per­vi­sor di tipo 1 tramite in­stal­la­zio­ne definita dall’utente. In questo caso, però, il fun­zio­na­men­to è previsto come ap­pli­ca­zio­ne astratta (di tipo 2) per im­po­sta­zio­ne pre­de­fi­ni­ta. Per questo motivo KVM viene spesso clas­si­fi­ca­to come una soluzione hy­per­vi­sor ibrida. I possibili sistemi guest ese­gui­bi­li per mezzo di questa al­ter­na­ti­va a Xen includono BSD (Berkeley Software Di­stri­bu­tion), Solaris, Windows, ReactOS e macOS.

Immagine: Screenshot del sito web di KVM
Screen­shot del sito web ufficiale di KVM; fonte: https://linux-kvm.org/page/Main_Page

Grazie all’in­te­gra­zio­ne diretta nel kernel Linux, KVM riceve re­go­lar­men­te ag­gior­na­men­ti sulla sicurezza e sulle pre­sta­zio­ni. Nel complesso, questo hy­per­vi­sor si distingue per un ec­cel­len­te pacchetto di sicurezza: la sua com­bi­na­zio­ne di SELinux e sVirt (vir­tua­liz­za­zio­ne sicura) ga­ran­ti­sce la sicurezza e l’iso­la­men­to delle macchine virtuali. Im­ple­men­tan­do KVM su una delle di­stri­bu­zio­ni Linux com­pa­ti­bi­li, come RHEL, è possibile estendere la gamma di funzioni. Ad esempio, è possibile mi­glio­ra­re le pre­sta­zio­ni del sistema e scambiare risorse tra i sistemi guest.

Vantaggi Svantaggi
Cor­re­zio­ni di bug e ag­gior­na­men­ti diretti da Linux Processo di con­fi­gu­ra­zio­ne com­pli­ca­to
Pacchetto sicurezza ec­ce­zio­na­le Richiede sistemi con supporto hardware per la vir­tua­liz­za­zio­ne
Consiglio

Nel nostro articolo “Xen e KVM a confronto” esa­mi­nia­mo in dettaglio le so­mi­glian­ze e le dif­fe­ren­ze tra i due hy­per­vi­sor.

Vir­tual­Box

Vir­tual­Box è gestito dall’azienda sta­tu­ni­ten­se Oracle dal 2008. Il software di vir­tua­liz­za­zio­ne è stato ori­gi­na­ria­men­te svi­lup­pa­to dall’azienda tedesca InnoTek Sy­stem­be­ra­tung GmbH nel Baden-Würt­tem­berg, in Germania. A dif­fe­ren­za di Xen, si tratta di un hy­per­vi­sor di tipo 2 ese­gui­bi­le sulle piat­ta­for­me Windows, Linux, macOS e Solaris. Per quanto riguarda i sistemi guest, l’ap­pli­ca­zio­ne non ha pra­ti­ca­men­te li­mi­ta­zio­ni: oltre ai sistemi Windows e Linux, supporta anche varie edizioni di Solaris e BSD come host. In questo senso, Vir­tual­Box si rivela essere una soluzione par­ti­co­lar­men­te fles­si­bi­le, che offre inoltre l’opzione di vir­tua­liz­za­zio­ne desktop, non di­spo­ni­bi­le su Xen.

Immagine: Screenshot del sito web di VirtualBox
Screen­shot del sito web ufficiale di Oracle Vir­tual­Box; fonte: https://www.vir­tual­box.org/

Non risulta però al­tret­tan­to fles­si­bi­le quando si tratta di migrare una delle macchine virtuali create: il software non permette infatti di spostare le macchine virtuali da un host fisico all’altro senza tempi di inat­ti­vi­tà. La mi­gra­zio­ne implica un processo manuale, ragion per cui l’ap­pli­ca­zio­ne di vir­tua­liz­za­zio­ne è meno adatta a progetti che ri­chie­do­no una di­spo­ni­bi­li­tà molto elevata. Un evidente vantaggio di Vir­tual­Box rispetto a Xen è la sua facilità di utilizzo per chi è agli inizi: la sua in­ter­fac­cia grafica facilita la gestione delle macchine virtuali anche per chi ha poca con­fi­den­za con la riga di comando.

Vantaggi Svantaggi
Ottimo per la vir­tua­liz­za­zio­ne dei desktop Non è possibile accedere di­ret­ta­men­te alle risorse hardware
Elevata facilità d’uso La mi­gra­zio­ne in tempo reale delle macchine virtuali non è con­sen­ti­ta

Xvisor

Ana­lo­ga­men­te a Xen, Xvisor (eX­ten­si­ble Versatile hy­per­vI­SOR) è un hy­per­vi­sor open source di tipo 1 con­trad­di­stin­to da fles­si­bi­li­tà e por­ta­bi­li­tà elevate. Lo dimostra il gran numero di ar­chi­tet­tu­re sup­por­ta­te: oltre a x86 e x86_64, le ar­chi­tet­tu­re di CPU com­pa­ti­bi­li includono ARM e RISC-V. Il codice sorgente di Xvisor può essere portato su qualsiasi piat­ta­for­ma a 32 e 64 bit, a con­di­zio­ne che siano di­spo­ni­bi­li una Paged Memory Ma­na­ge­ment Unit (PMMU) e una porta del com­pi­la­to­re GNU C (GCC). Questa al­ter­na­ti­va a Xen si basa prin­ci­pal­men­te sulla vir­tua­liz­za­zio­ne completa e consente quindi un gran numero di sistemi operativi guest non mo­di­fi­ca­ti. Il sistema host, tuttavia, è legato a una di­stri­bu­zio­ne Linux.

Immagine: Screenshot del sito web di Xvisor
Screen­shot del sito web ufficiale dell’al­ter­na­ti­va a Xen Xvisor; fonte: https://xhy­per­vi­sor.org/

Xvisor offre una vir­tua­liz­za­zio­ne potente e un risparmio in termini di spazio di ar­chi­via­zio­ne, sebbene ciò sia dovuto anche al fatto che il software non utilizza alcuna esten­sio­ne di sicurezza. Op­zio­nal­men­te è possibile attivare la pa­ra­vir­tua­liz­za­zio­ne come in Xen, a con­di­zio­ne che la ri­spet­ti­va ar­chi­tet­tu­ra lo consenta.

Vantaggi Svantaggi
Supporta una varietà di ar­chi­tet­tu­re Nessuna esten­sio­ne di sicurezza
Vir­tua­liz­za­zio­ne che occupa poca memoria

QEMU

QEMU, ab­bre­via­zio­ne di Quick EMUlator, è un’al­ter­na­ti­va a Xen uti­liz­za­bi­le sia come emulatore che come hy­per­vi­sor di tipo 2. Se uti­liz­za­to come hy­per­vi­sor, QUEMU raggiunge pre­sta­zio­ni vicine a quelle native grazie all’ese­cu­zio­ne del codice guest di­ret­ta­men­te sulla CPU host. A questo scopo, tuttavia, il software di vir­tua­liz­za­zio­ne richiede l’utilizzo dell’hy­per­vi­sor Xen o del modulo kernel KVM di Linux. A dif­fe­ren­za di Xen, QEMU offre un eco­si­ste­ma molto più ampio e supporta un numero si­gni­fi­ca­ti­va­men­te maggiore di ar­chi­tet­tu­re e sistemi operativi. Pertanto, il programma è adatto a un’ampia gamma di ap­pli­ca­zio­ni, tra cui sviluppo, test e gestione di software legacy.

Immagine: Screenshot del sito web di QEMU
Screen­shot del sito web ufficiale di QEMU; fonte: https://www.qemu.org/

In quanto hy­per­vi­sor di tipo 2, QEMU non ha accesso diretto alle risorse hardware, il che spiega perché non può competere con Xen in termini di pre­sta­zio­ni. Per contro, lo strumento offre un’in­ter­fac­cia molto più semplice da usare grazie a una in­ter­fac­cia utente grafica. È presente un’ampia e attiva community che provvede agli ag­gior­na­men­ti regolari. La soluzione di vir­tua­liz­za­zio­ne è stata inoltre integrata in molte altre soluzioni di vir­tua­liz­za­zio­ne e piat­ta­for­me cloud.

Vantaggi Svantaggi
Supporta una varietà di ar­chi­tet­tu­re Dipende dall’hy­per­vi­sor Xen o KVM
Adatto a vari progetti Manca l’iso­la­men­to delle macchine virtuali

UTM

UTM è una soluzione di vir­tua­liz­za­zio­ne che può essere uti­liz­za­ta per emulare vari sistemi operativi su Mac, iPhone e iPad (a partire da iOS 11). Il software si serve del framework di vir­tua­liz­za­zio­ne hy­per­vi­sor di Apple per eseguire sistemi operativi ARM64 su di­spo­si­ti­vi con pro­ces­so­ri Apple Silicon con pre­sta­zio­ni quasi native. Nei vecchi Mac con pro­ces­so­ri Intel è possibile vir­tua­liz­za­re sistemi guest con ar­chi­tet­tu­ra x86 e x86_64. Questo hy­per­vi­sor supporta anche diverse altre ar­chi­tet­tu­re come ARM32, MIPS, PPC e RISC-V ed è quindi una scelta ec­cel­len­te per eseguire sistemi Windows su Mac e anche su di­spo­si­ti­vi mobili iOS.

Immagine: Screenshot del sito web di UTM
Screen­shot del sito web dell’al­ter­na­ti­va a Xen per macOS UTM; fonte: https://mac.getutm.app/

UTM si basa sulla soluzione QEMU che abbiamo il­lu­stra­to sopra. Benché questa sia di per sé molto fles­si­bi­le e potente, in modo analogo a Xen non è una scelta facile da pa­dro­neg­gia­re per le persone inesperte: a causa dell’ab­bon­dan­za di opzioni e flag della riga di comando, le due opzioni sono difficili da impostare e con­fi­gu­ra­re rispetto a UTM. UTM nasce quindi con l’obiettivo di offrire all’utente la fles­si­bi­li­tà di QEMU e allo stesso tempo un utilizzo il più possibile user-friendly.

Vantaggi Svantaggi
Supporta una varietà di ar­chi­tet­tu­re Pre­sta­zio­ni inferiori con la maggior parte dei sistemi guest
Elevata facilità d’uso
Vai al menu prin­ci­pa­le