Con il termine “virtualizzazione” ci si riferisce all’astrazione delle risorse del computer mediante una piattaforma operativa integrata unificata per utenti e applicazioni, basata sull’aggregazione di risorse eterogenee e autonome.
Poiché l’ambiente di elaborazione virtuale migliora l’utilizzo delle risorse, dalla sua ideazione è rapidamente diventata una tecnologia di riferimento in favore dell’aumento di efficienza nel data center.
Con il tempo la virtualizzazione è stata estesa a tutti i livelli (sistema, archiviazione e rete, dati, desktop eccetera), migliorando la sicurezza, l’affidabilità e la disponibilità dei sistemi coinvolti, garantendo la riduzione dei costi e una maggiore flessibilità.
Indice degli argomenti
La tecnologia di virtualizzazione
La virtualizzazione è una tecnica per nascondere le caratteristiche fisiche delle risorse di elaborazione dal modo in cui altri sistemi, applicazioni o utenti finali interagiscono con tali risorse.
Introduce uno strato di astrazione software tra l’hardware, il sistema operativo e le applicazioni in esecuzione su di esso. Tale strato di astrazione è chiamato monitor della Macchina virtuale (VMM) o hypervisor e sostanzialmente nasconde le risorse fisiche del sistema di elaborazione dal sistema operativo (SO).
La VM riorganizza le risorse del computer in più ambienti operativi, mediante partizionamento hardware e software, time-sharing, emulazione hardware parziale o completa, para-virtualizzazione e altre tecniche di condivisione risorse.
Oltre all’approccio di virtualizzazione, basato su hypervisor, l’altro moderno approccio alla virtualizzazione è quella virtualizzazione che si basa su container.
La virtualizzazione è utilizzata in diversi ambienti tecnologici: cloud computing (CC), Internet of Things, sistemi cyber-fisici e big data.
Nel cloud computing in particolare, la virtualizzazione è un abilitante cruciale, se non la tecnologia di base, fulcro del corretto funzionamento del cloud che dipende principalmente dalla sofisticatezza della sua progettazione e implementazione.
Affinché possa essere strategica per il business è cruciale garantire un buon livello di qualità della virtualizzazione (quality of service, QoS).
La QoS rappresenta livelli garantiti di prestazioni e disponibilità di un servizio fornito agli utenti ed è influenzata da molti fattori, fra i quali, secondo researchgate, i più importanti sono: elaborazione, archiviazione e prestazioni di rete.
Tipi di virtualizzazione
La virtualizzazione si divide in tipi diversi, ovvero ambiti, in cui può essere applicata:
- la virtualizzazione mobile (MVP): un sottile strato di software incorporato in un telefono cellulare per separare le applicazioni e i dati dall’hardware sottostante;
- virtualizzazione dei dati: astrae la fonte di singoli elementi di dati, inclusi interi file, contenuti di database, metadati di documenti, informazioni di messaggistica e altro ancora e fornisce un livello di accesso ai dati comune per diversi metodi di accesso ai dati (SQL, XML, JDBC, accesso ai file, MQ, JMS, ecc);
- virtualizzazione della memoria: fornisce a ogni VM questa astrazione, virtualizzando la memoria fisica mediante aggiunta di un livello extra di traduzione degli indirizzi;
- virtualizzazione del desktop: capacità di visualizzare un desktop grafico da un sistema informatico a un altro (o ad altro dispositivo di visualizzazione intelligente);
- la virtualizzazione dello storage: rappresenta la tecnologia emergente capace di astrarre logiche di sistemi di storage fisici. Semplifica l’amministrazione dello storage e riduce i costi di gestione di diverse risorse;
- virtualizzazione di rete: fornisce un livello di astrazione in grado di disaccoppiare l’apparecchiatura di rete fisica dai servizi aziendali forniti sulla rete, per produrre comunicazioni più reattive e ben organizzate;
- la virtualizzazione delle applicazioni: all’utente consente di eseguire l’applicazione utilizzando risorse locali senza installare l’applicazione nel suo sistema;
- Grid: una griglia offre un modo per astrarre più server fisici dall’applicazione che stanno eseguendo (come un cluster, ma diversamente da esso, le risorse di elaborazione sono normalmente distribuite su un’ampia rete, potenzialmente su Internet, e i server fisici che compongono una griglia non devono essere identici quindi possono essere eterogenei);
- clustering: un cluster è una forma di virtualizzazione che fa sì che diversi sistemi fisici collegati localmente appaiano all’applicazione e agli utenti finali come un’unica risorsa di elaborazione. Ciò differisce in modo significativo da altre tecnologie di virtualizzazione, che normalmente fanno il contrario ovvero permettono a un singolo sistema fisico di apparire come più ambienti operativi indipendenti;
- i termini “virtualizzazione del server“, “virtualizzazione della macchina” e “virtualizzazione della CPU”: descrivono la capacità di eseguire un’intera macchina virtuale, incluso il proprio sistema operativo, su un altro sistema operativo. La virtualizzazione più comune conosciuta in generale è la virtualizzazione del server. La virtualizzazione del server crea “ambienti virtuali” che consentono a più applicazioni carichi di lavoro del server di essere eseguiti su un computer, come se ognuno avesse il proprio “computer privato”.
Le sfide
Quale che sia ambito in cui sono attuate le tecniche di virtualizzazione (rete, memoria, dati, applicazioni eccetera) bisogna tenere in debito conto alcuni elementi che possono costituire una sfida:
- costi iniziali di configurazione: legati principalmente al costo delle licenze per tecnologie abilitanti e alla loro iniziale configurazione;
- complessità intrinseca della nuova tecnologia che quindi richiede conoscenze e competenze specifiche che potrebbero richiedere formazione e servizi esterni;
- pianificazione delle capacità e prestazioni: affinché la virtualizzazione funzioni bene la condivisione di risorse deve essere configurata in modo appropriato e monitorata per intervenire in caso di picchi;
- sicurezza informatica: la virtualizzazione come ogni nuova tecnologia comporta conseguenze nella protezione che deve essere misurata e mitigata con aggiornamenti e monitoraggio regolari.
Vantaggi trasversali della virtualizzazione
Alcuni vantaggi sono legati alla virtualizzazione indipendentemente dagli ambiti rispetto a cui la tecnologia è applicata e sono quindi vantaggi trasversali rispetto alle operazioni di business:
- risparmio sui costi grazie al risparmio nell’acquisto di risorse fisiche e di manutenzione ad esse associata e grazie al contenimento della spesa elettrica e di quella dei sistemi secondari (condizionamento/raffreddamento eccetera) necessari;
- maggiore efficienza e produttività: grazie alla virtualizzazione si utilizzano risorse in modo più efficiente, semplificando la gestione delle risorse, dei backup, dei ripristini eventualmente necessari;
- ottimizzazione della gestione IT: la semplificazione del punto precedente libera anche risorse umane dalle attività di manutenzione solitamente molto elevate rispetto a quando l’IT è solo basato su risorse fisiche;
- scalabilità e flessibilità: l’adattamento ai cambiamenti è più rapido sia al crescere delle esigenze di elaborazione sia in caso di diminuzione. Questo aiuta alla reattività rispetto ai cambiamenti delle operation. Grazie alla virtualizzazione, le operazioni di configurazione sono ridotte e si ha un miglioramento dei tempi di performance;
- continuità aziendale e DR: l’approccio alla virtualizzazione può supportare bene le situazioni di emergenza caratterizzate da esigenze di rapida disponibilità di nuove risorse con tempi di inattività ridotti realizzando di fatto un piano di backup che si attiva automaticamente per mantenere tutto in funzione senza intoppi per la continuità aziendale.