Vai al paragrafo

Cos'è la virtualizzazione?

Copia URL

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.

utilizzo server

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.

utilizzo server: virtualizzazione server

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.

Benché la tecnologia di virtualizzazione risalga agli anni '60, si è diffusa soltanto all'inizio degli anni 2000. 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 fornitore, che non consentivano l'esecuzione delle applicazioni esistenti sull'hardware di altri fornitori. Le aziende iniziarono ad aggiornare i propri ambienti IT con "commodity server", sistemi operativi e applicazioni meno costosi di vari fornitori. Tuttavia, erano vincolate ad hardware fisici scarsamente utilizzati, poiché ciascun server poteva eseguire soltanto un'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.

Cos'è un hypervisor?

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), che rappresenta la modalità di virtualizzazione utilizzata da gran parte delle aziende. Gli hypervisor ripartiscono le risorse fisiche in modo che gli ambienti virtuali possano utilizzarle.

come funziona la virtualizzazione

Ambienti virtuali e virtual machine (VM)

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 le modifiche, che vengono applicate in tempo pressoché reale (in particolare se la richiesta viene inviata attraverso un hypervisor open source basato su KVM, la Kernel-based Virtual Machine).

Virtualizzazione dei dati

data virtualization

I dati distribuiti su più ambienti possono essere consolidati in un'unica sorgente. In questo modo, è possibile gestirli in modo dinamico. Ciò permette di raggrupparli anche se provenienti da più sorgenti, di gestire rapidamente nuove sorgenti di dati e di trasformare i dati in base alle necessità dei consumatori. La virtualizzazione dei dati permette di raggruppare più sorgenti di dati e di trattarle come un'unica sorgente, fornendo al momento giusto i dati necessari, nel formato richiesto, a qualsiasi applicazione o utente.

Virtualizzazione dei desktop

desktop virtualization

Facilmente confusa con la virtualizzazione del sistema operativo, che consente di eseguire il deployment di più sistemi operativi su un'unica macchina, la virtualizzazione dei desktop consente invece a un amministratore centrale, o a uno strumento di amministrazione centralizzato, di distribuire ambienti desktop simulati su centinaia di macchine fisiche, simultaneamente. A differenza di quanto accade con gli ambienti desktop convenzionali, installati, configurati e aggiornati fisicamente su ogni macchina, la virtualizzazione dei desktop consente agli amministratori di eseguire configurazioni, aggiornamenti e controlli di sicurezza in blocco, su tutti i desktop virtuali.

Virtualizzazione dei server

Server virtualization

I server sono computer progettati per elaborare in modo ottimale un volume elevato di attività specifiche, in modo che altri computer, come i portatili e i desktop, possano eseguire altre attività. La virtualizzazione di un server consente di eseguire più funzioni specifiche e prevede il partizionamento, in modo che i componenti possano essere utilizzati per assolvere varie funzioni.

Virtualizzazione dei sistemi operativi

virtualizzazione sistemi operativi

La virtualizzazione del sistema operativo si verifica nel kernel, il sistema di gestione centrale delle attività dei sistemi operativi. È un modo utile per eseguire in modo affiancato gli ambienti Linux e Windows. Le aziende possono inoltre distribuire i sistemi operativi virtuali nei computer, in modo da:

  • ridurre il costo complessivo dell'hardware, poiché i computer non richiedono un livello elevato di funzionalità predefinite;
  • incrementare la sicurezza, dato che tutte le istanze virtuali possono essere monitorate e isolate;
  • limitare il tempo impiegato per servizi IT, come gli aggiornamenti software.

Virtualizzazione delle funzioni di rete

virtualizzazione delle funzioni di rete (NFV)

La virtualizzazione delle funzioni di rete (NFV) separa le funzioni chiave di una rete (come i servizi directory, la condivisione file e la configurazione IP) in modo da poterle distribuire tra gli ambienti. Disponendo di funzioni software indipendenti dalle macchine fisiche su cui venivano precedentemente eseguite, è possibile riunire funzioni specifiche in una nuova rete e assegnarle ad un ambiente. La virtualizzazione delle reti riduce il numero di componenti fisici, come switch, router, server, cavi e hub, necessari per creare reti multiple e indipendenti. Inoltre, la NFV risulta particolarmente diffusa nel settore delle telecomunicazioni.

Il passaggio alle soluzioni Red Hat non riguarda solo l'infrastruttura, ma anche le capacità che queste soluzioni possono offrire o meno al fine di supportare le tecnologie sottostanti. Il vincolo contrattuale a un fornitore sempre meno conveniente limita le tue possibilità di investire in tecnologie moderne come cloud, container e sistemi automatizzati.

Le tecnologie di virtualizzazione open source, al contrario, non sono vincolate a contratti di licenza aziendali sempre più esosi e offrono a tutti un accesso a 360° allo stesso codice sorgente utilizzato da più del 90% delle aziende Fortune 500. Potrai rendere agili i tuoi servizi e processi, eseguendo il deployment di un cloud ibrido o adottando le tecnologie di automazione.

*Dati sui clienti Red Hat e classifica Fortune 500, giugno 2018

Keep reading

ARTICOLO

Container e VM

I container Linux e le macchine virtuali (VM) sono entrambi pacchetti di ambienti di elaborazione che combinano vari componenti IT e li isolano dal resto del sistema.

ARTICOLO

Cos'è una macchina virtuale (VM)?

Una macchina virtuale (VM) è un ambiente di elaborazione isolato creato astraendo le risorse da una macchina fisica.

ARTICOLO

La tecnologia KVM

KVM (Kernel-based Virtual Machine) è una tecnologia di virtualizzazione open source che trasforma Linux in un hypervisor.