Virtualizzazione

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.

Server usage

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.

Server usage: virtualization

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 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 app 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 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 gettato 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.

How virtualization works

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).


Tipi di virtualizzazione

Virtualizzazione dei dati

I dati disseminati ovunque possono essere consolidati in un'unica origine. In questo modo, è possibile gestirli in modo dinamico. Ciò permette di raggrupparli anche se provenienti da più origini, di gestire rapidamente nuove origini di dati e di trasformare i dati in base alle necessità dei consumatori. Soluzioni come Red Hat® JBoss® Data Virtualization permettono 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

Spesso e 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 fisica, 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

Operating system virtualization

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

Network function virtualization

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 a 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.

Cosa occorre per adottare la virtualizzazione

Infrastruttura

Non ti serve altro. Davvero. È una soluzione installabile ovunque, dall'hardware bare-metal, ai sistemi open source e proprietari. Potrai effettuare il deployment di decine o centinaia di macchine virtuali con un hypervisor efficiente e una piattaforma di gestione che rende tutto più semplice.

Infrastruttura

Distribuisci insieme storage e virtualizzazione, anche quando le risorse sono limitate. Utilizza lo stesso hardware per server sia come hypervisor sia come controller, per ottenere un pool di cluster composto da risorse integrate di elaborazione e storage.


Middleware

Virtualizza i dati ovunque essi siano: on-premise, in un data warehouse o nel cloud: finalmente un'unica origine da cui erogare le informazioni nella forma e nella posizione che preferisci.


Scopri altri vantaggi di Red Hat Virtualization