Come funziona la virtualizzazione

 

I nuovi software, dai sistemi operativi alle applicazioni, richiedono sempre più dati, più potenza di calcolo e più memoria. La virtualizzazione permette ad un’unica soluzione fisica di svolgere il lavoro di più macchine, eliminando server e workstation aggiuntivi e consentendoti di risparmiare.

Cos’è la virtualizzazione?

 

La virtualizzazione è una tecnologia che ti consente di creare servizi IT utili sfruttando risorse tradizionalmente vincolate all’hardware. Ti consente di sfruttare tutte le capacità di una macchina fisica distribuendo le funzionalità tra più utenti o ambienti.

In termini più pratici, immagina di avere 3 server fisici con singole finalità dedicate, il primo dei quali corrisponde a un mail server, il secondo a un web server, mentre l’ultimo esegue le applicazioni interne esistenti. Ciascun server viene utilizzato circa al 30% della capacità, una piccola parte del potenziale complessivo. Tuttavia, dato che le app esistenti sono ancora importanti per i tuoi processi interni, devi conservarle, insieme al terzo server che le ospita.

 

Tradizionalmente funzionava così. Spesso risultava più semplice e sicuro eseguire singole attività su singoli server: 1 server, 1 sistema operativo, 1 attività. Non era affatto semplice assegnare più attività ad un singolo server. Tuttavia, con la virtualizzazione puoi suddividere il mail server in 2 server distinti in grado di gestire attività indipendenti, consentendo la migrazione delle app esistenti. Si tratta dello stesso hardware, utilizzato in modo più efficiente.

Nel rispetto dei requisiti di sicurezza, potresti suddividere ulteriormente il primo server affinché possa gestire un’altra attività, incrementando l’uso dal 30% al 60% o al 90%. I server liberi possono essere riutilizzati per altre attività oppure del tutto disattivati, in modo da ridurre i costi di raffreddamento e manutenzione.

 


Breve storia della virtualizzazione

Benché la tecnologia di virtualizzazione risalga agli anni ’60, si è diffusa soltanto all’inizio degli anni duemila. Le tecnologie che hanno consentito la virtualizzazione, come gli hypervisor, sono state sviluppate decenni fa, al fine di fornire a più utenti l’accesso simultaneo a computer con un’elaborazione batch attiva. Molte aziende hanno adottato l’elaborazione di batch come modello di calcolo, poiché consentiva di eseguire attività di routine, come la gestione dei libri paga, migliaia di volte più rapidamente. Tuttavia, nel corso dei decenni successivi, il problema della presenza di più utenti su un unico computer è stato affrontato scegliendo soluzioni diverse dalla virtualizzazione. Tra queste, la condivisione temporale, che isolava gli utenti all’interno dei sistemi operativi e che ha portato inavvertitamente alla nascita di altri sistemi operativi, come UNIX, fino ad arrivare a Linux®. Tutto questo, mentre la virtualizzazione restava una tecnologia di nicchia scarsamente utilizzata. Facciamo un balzo in avanti, fino agli anni 90. Gran parte delle aziende utilizzava server fisici e stack IT associati a un singolo vendor, che non consentivano l’esecuzione delle app esistenti sull’hardware di altri vendor. Le aziende iniziarono ad aggiornare i propri ambienti IT con server commodity, sistemi operativi e applicazioni meno costose di vari vendor. Tuttavia, erano vincolate ad hardware fisici sottoutilizzati, poiché ciascun server poteva eseguire soltanto una attività. È a questo punto che ha iniziato a diffondersi la virtualizzazione. Era la soluzione naturale a due problemi: permetteva alle aziende di ottenere partizioni sui propri server, e di eseguire le app esistenti su più tipologie e versioni di sistemi operativi. L’utilizzo dei server è stato reso più efficiente – in alcuni casi abbandonato – riducendo così i costi associati all’acquisto, alla configurazione, al raffreddamento e alla manutenzione. L’ampia applicabilità della virtualizzazione ha contribuito a ridurre i vincoli al fornitore e ha posto le basi del cloud computing. Oggi è utilizzata da moltissime aziende, ed è spesso necessario disporre di software specifici per la gestione della virtualizzazione che consentano di monitorare l’ambiente.

 

Come funziona la virtualizzazione?

 

I software definiti hypervisor separano le risorse fisiche dagli ambienti virtuali che le richiedono. Gli hypervisor possono essere eseguiti in un sistema operativo (ad esempio, su un laptop) oppure installati direttamente su un hardware (server) – modalità di virtualizzazione utilizzata da gran parte delle aziende. Gli hypervisor ripartiscono le risorse fisiche in modo che gli ambienti virtuali possano utilizzarle.

A seconda delle esigenze, le risorse vengono suddivise e trasferite dall’ambiente fisico ai vari ambienti virtuali. Gli utenti interagiscono ed eseguono calcoli all’interno dell’ambiente virtuale (in genere definito macchina guest o macchina virtuale). La macchina virtuale funziona come un unico file dati, che, a differenza di qualsiasi file digitale, è utilizzabile anche nel momento in cui viene spostato da un computer a un altro, e aperto su più computer.

Quando l’ambiente virtuale è in funzione, e un utente o un programma emette un’istruzione che richiede risorse aggiuntive dall’ambiente fisico, l’hypervisor riporta la richiesta sul sistema fisico e memorizza nella cache i cambiamenti, che vengono applicati in tempo pressoché reale (in particolare se la richiesta viene inviata attraverso un hypervisor open source che sfrutta la macchina virtuale basata sul Kernel).

Share This