Un hypervisor è uno strumento di virtualizzazione che consente a un singolo computer host di eseguire più macchine virtuali guest, condividendo risorse quali thread del processore, memoria o throughput di rete. In parole povere, un hypervisor astrae dall'hardware del computer host, consentendo a più sistemi operativi di funzionare contemporaneamente in modo efficiente su un singolo computer.
Esempi comuni di hypervisor sono VMware Workstation / VMware ESXi, Windows Virtual PC / Microsoft Hyper-V, Xen e KVM. Tutti questi strumenti hanno lo scopo di consentire l'esecuzione di più macchine virtuali guest su un singolo componente hardware. I guest possono eseguire tutti lo stesso sistema operativo o sistemi operativi diversi.
Gli hypervisor agiscono come un livello che astrae il software del computer dal suo hardware. Consentono al sistema operativo di ogni macchina virtuale di comportarsi come se fosse in esecuzione su hardware dedicato e di passare le richieste da tale sistema operativo alla macchina host.
Alcuni hypervisor sono integrati nel firmware del dispositivo host, mentre altri vengono eseguiti sul sistema operativo del computer host. L'hypervisor si occupa di gestire la comunicazione tra la macchina virtuale e l'hardware sottostante.
A titolo di esempio, si immagini uno sviluppatore di software con Mac OS X che testi le applicazioni su Windows e Linux. Utilizzando un hypervisor di tipo 2 (ospitato), puoi eseguire una macchina virtuale Linux e Windows 11 sul tuo Mac. Se il Mac è sufficientemente potente, si possono mantenere entrambe le macchine virtuali in esecuzione contemporaneamente e passare da una all'altra all'ambiente di sviluppo principale. L'hypervisor gestisce l'allocazione dei thread del processore e della memoria e crea unità virtuali che esistono come file nel file system del sistema operativo host.
Gli hypervisor possono essere suddivisi in due categorie principali: hypervisor bare metal e hypervisor ospitati.
Hypervisor bare metal
Come suggerisce il nome, gli hypervisor bare metal vengono eseguiti direttamente sul computer host. Questi sono spesso denominati hypervisor di tipo 1, che contengono tutti i componenti del sistema operativo necessari e un hypervisor. Sono l'opzione più diffusa. Con un hypervisor bare metal, non esiste un sistema operativo host. L'hypervisor traduce le richieste di accesso alle risorse di ciascuna VM guest, offrendo loro un accesso più diretto all'hardware host.
Gli hypervisor bare metal offrono alcuni vantaggi in termini di sicurezza perché la superficie di attacco è più piccola. Inoltre, i vantaggi in termini di prestazioni sono dovuti al fatto che il carico dell'esecuzione del solo hypervisor è inferiore a quello dell'esecuzione di un sistema operativo. Questo rende gli hypervisor di tipo 1 una scelta popolare per i data center e l'hosting aziendale, dove le priorità sono le alte prestazioni e la possibilità di eseguire il maggior numero possibile di VM sull'host. La tecnologia Hyper-V di Microsoft è un esempio di hypervisor bare metal che offre significativi miglioramenti delle prestazioni rispetto agli hypervisor tradizionali basati su software (tipo 2), come quelli di IBM che hanno fatto da poco il loro ingresso nello spazio della virtualizzazione.
Hypervisor ospitati
Un hypervisor ospitato, o hypervisor di tipo 2, è un hypervisor che viene eseguito sul sistema operativo del computer host. Questi hanno una latenza più elevata rispetto agli hypervisor bare metal, quindi sono meno comunemente usati negli ambienti di data center. Tuttavia, sono utili per gli sviluppatori di software, i tester e i ricercatori di sicurezza che hanno bisogno di eseguire applicazioni in una varietà di ambienti.
Gli hypervisor ospitati vengono talvolta utilizzati per distribuire un ambiente preconfigurato su più macchine. Gli sviluppatori possono configurare i computer nel modo desiderato e testare il lavoro in una macchina virtuale con una configurazione prevedibile.
Gli hypervisor sono una buona scelta per:
Talvolta, l'esecuzione di un hypervisor e di macchine virtuali complete non rappresenta la soluzione ottimale. Poiché ogni macchina virtuale esegue il proprio sistema operativo, sono piuttosto dispendiose in termini di risorse. I container stanno diventando sempre più diffusi per le situazioni in cui gli sviluppatori o gli amministratori di sistema devono implementare rapidamente ambienti sandbox più leggeri.
Prendere in considerazione i contenitori se:
Gli hypervisor sono generalmente abbastanza sicuri. Esistono tuttavia alcuni problemi che gli amministratori di sistema devono conoscere. Ad esempio, gli attacchi Spectre e Meltdown scoperti nel 2018 mirano a vulnerabilità nell'hardware sottostante. Tali vulnerabilità continuano a esistere, quindi è importante tenersi aggiornati con le patch del BIOS e del software dell'hypervisor.
Un'altra considerazione importante riguarda il modo in cui vengono gestiti gli hypervisor. Limitare l'accesso agli host dell'hypervisor e al software di gestione. Abilitare la registrazione in modo da poter controllare chi accede all'host dell'hypervisor e le modifiche apportate. Bisogna tenere presente che se una VM guest viene compromessa, i danni dovrebbero essere limitati a quella macchina e ai servizi in esecuzione su di essa. Tuttavia, se l'host dell'hypervisor è compromesso, l'utente malintenzionato può ottenere l'accesso privilegiato a qualsiasi cosa in esecuzione sull'hypervisor.
Un modo per proteggere le macchine guest consiste nel crittografarle. Questo non solo rende la vita più difficile agli aggressori esterni, limitando ciò che possono vedere se riescono ad accedere all'host dell'hypervisor, ma protegge anche dalle minacce interne. Se le unità virtuali non sono crittografate, un amministratore di sistema malintenzionato potrebbe crearne copie per leggerle a proprio piacimento. La crittografia delle unità le rende illeggibili quando non sono in uso. È ancora possibile eseguire backup di macchine virtuali crittografate, ma i backup sono leggibili solo se montati nel sistema operativo guest corretto.
Gli hypervisor sono disponibili in diverse varianti per adattarsi a diversi casi d'uso. Nella scelta di un hypervisor, tenere presente quanto segue:
Nella maggior parte dei casi, un'organizzazione più piccola che ha semplicemente bisogno di accedere alle macchine virtuali per i test farebbe bene a iniziare con un hypervisor di tipo 2. Le aziende più grandi che tentano di sfruttare al massimo le proprie infrastrutture mission-critical o che necessitano di VM ad alte prestazioni dovrebbero prendere in considerazione un hypervisor di tipo 1.
Una volta ristretto il tipo di hypervisor, la considerazione successiva riguarda il fornitore di hypervisor con cui lavorare. Questa scelta può essere guidata da considerazioni quali:
Gli hypervisor di tipo 2 tendono ad avere sistemi di gestione abbastanza flessibili e potenti, il che li rende facili da usare anche per i team con risorse IT limitate. Gli hypervisor di tipo 1 possono richiedere maggiori competenze. Quando si configurano le macchine virtuali, occorre tenere conto di quanto segue:
Per saperne di più su come Veeam può aiutarti a gestire i tuoi piani di backup e disaster recovery, dai un'occhiata a Veeam Backup & Replication. Questa suite software flessibile e potente consente di eseguire il backup delle macchine virtuali e di ripristinarle in pochi minuti, per tornare operative il più rapidamente possibile dopo un'interruzione del servizio.
2022 Data Protection Trends
Il più grande report del settore sulla protezione dei dati da parte di oltre 3.000 leader IT
Richiedi una demo
Scopri come modernizzare la tua protezione dei dati in una sessione dal vivo