Le aziende cercano costantemente nuovi modi per aumentare l’efficienza, ridurre i costi e migliorare la scalabilità soprattutto nell’attuale contesto economico, in cui proprio non si può contare su risorse cospicue di budget.
Ma se i limiti economici correlati al contenimento delle spese (elettricità e raffreddamento di server temporaneamente inattivi, sale server con adeguati sistemi secondari eccetera) possono costituire un freno alla quantità e tipo di risorse hardware e software necessarie a formare sistemi IT capaci di supportare gli obiettivi di business, si può risolvere ricorrendo alle soluzioni di virtualizzazione dei server (nelle sue diverse declinazioni tecniche abilitanti).
Questa tecnologia di astrazione rispetto alle reali risorse fisiche hardware aiuta a mantenere alte prestazioni di elaborazione e di performance, garantendo che i server funzionino sempre al massimo della capacità, adattandosi tanto ai picchi di carico, come ai momenti di scarsa esigenza elaborativa, supportando quindi al meglio le esigenze abilitanti del business aziendale nella sua trasformazione digitale.
Indice degli argomenti
Cos’è e a cosa serve la virtualizzazione dei server
La virtualizzazione del server è una tecnica di mascheramento delle risorse del server, che include l’identità e il numero di tutti i server, processori e utenti del sistema operativo esistenti. Secondo ResearchGate, l’astrazione delle risorse fisiche le fa apparire logicamente diverse rispetto all’uso da parte di applicazioni.
Ma tale mascheramento permette anche a un amministratore di riposizionare e regolare il carico di lavoro della macchina.
Molte sono le definizioni disponibili da parte dei diversi vendor che offrono sistemi virtualizzati, ma una in particolare permette di cogliere immediatamente il criterio distintivo di questa tecnologia: “La virtualizzazione del server è la capacità di eseguire molti sistemi operativi con isolamento e indipendenza, da altri sistemi operativi”.
Tipologie di virtualizzazione dei server
Esistono diversi tipi di virtualizzazione dei server ciascuno con pro e contro:
- emulazione;
- traslazione binaria;
- sistema operativo ospitato, astrazione a livello di applicazione;
- sistema operativo ospitato, astrazione a livello kernel;
- Virtualizzazione assistita da hardware (virtualizzazione completa, virtualizzazione bare-metal);
- Para-virtualizzazione;
- Virtualizzazione nativa ibrida.
Emulazione
L’emulazione è un metodo di virtualizzazione in cui un’architettura hardware completa può essere creata nel software. Questo software è in grado di replicare la funzionalità di un processore hardware designato e dei sistemi hardware associati.
Ha il grande vantaggio di flessibilità estesa in quanto il sistema operativo guest potrebbe non dover essere modificato, mentre apporta come problema, la penalizzazione delle prestazioni, poiché ogni istruzione sul sistema guest deve essere tradotta per essere compresa dal sistema host.
Traslazione binaria
In questo approccio il sistema operativo guest non è consapevole di operare su hardware virtualizzato. L’hypervisor gestisce l’accesso di ogni sistema operativo guest alle risorse hardware fisiche mascherando l’hardware dal sistema operativo guest.
Vantaggi: fornisce al sistema operativo guest l’illusione di un server fisico standard con dispositivi hardware ben definiti e non c’è bisogno di modificare il sistema operativo guest.
Per contro, si verifica una bassa efficienza delle prestazioni e una certa complessità di progettazione dovuta all’incapacità della classica virtualizzazione trap-and-emulate.
Sistema operativo ospitato
Il sistema operativo ospitato è una virtualizzazione per astrazione a livello di applicazione: un altro approccio basato solo sul software (come il primo), utilizza un livello di hypervisor ospitato da un sistema operativo sottostante.
Poiché risiede come applicazione in cima al sistema operativo host, questo tipo di astrazione eredita il suo supporto hardware e la compatibilità del dispositivo dal sistema operativo host.
A fronte dell’unico svantaggio prestazionale lento, in termini di vantaggi si riscontrano tre vantaggi: il prodotto di virtualizzazione è installato sul desktop host come qualsiasi altra applicazione; il sistema operativo desktop host può continuare a essere utilizzato; sono usati i driver del dispositivo del sistema operativo host e quindi il prodotto di virtualizzazione supporta qualsiasi hardware.
Sistema operativo ospitato, astrazione a livello kernel
Il Sistema operativo ospitato, astrazione a livello kernel (virtualizzazione dei contenitori del sistema operativo, Single Kernel Image, SKI), è la virtualizzazione a livello di sistema si basa sul concetto di modifica radice (chroot) disponibile su tutti i moderni sistemi UNIX.
Utilizza container (contenitori), o sandbox, chiamati chroot, per partizionare il sistema operativo host, in modo che più applicazioni possano essere eseguite in partizioni isolate su un singolo sistema operativo.
I vantaggi sono legati alle prestazioni e a ridotti requisiti di spazio su disco ridotti (perché i container possono utilizzare gli stessi file) a fronte della criticità per cui il sistema operativo della VM deve essere lo stesso sistema operativo dell’host.
Virtualizzazione assistita da hardware
La virtualizzazione assistita da hardware è una virtualizzazione completa (virtualizzazione bare-metal): l’hypervisor è assistito dall’hardware del processore e quindi quando il sistema operativo guest effettua una chiamata di istruzione privilegiata, il processore (Cpu) intrappola l’istruzione e la restituisce all’hypervisor per essere emulata. Una volta che l’operazione è servita tramite l’hypervisor, l’istruzione modificata viene restituita alla Cpu per l’esecuzione continua.
Come è facile immaginare, il maggior vantaggio di hardware dedicato è a livello di prestazione. Invece come criticità il fornitore pubblica un elenco di compatibilità hardware (HCL) che stabilisce quale hardware può essere utilizzato con il proprio prodotto di virtualizzazione.
Para-virtualizzazione
La para-virtualizzazione è una tecnica in cui il sistema operativo guest include driver I/O (Input/Output) modificati (para-virtualizzati) per l’hardware.
Il sistema operativo guest modificato, effettua chiamate direttamente ai servizi I/O virtualizzati e ad altre operazioni privilegiate, elemento che permette di miglioramenti significativi delle prestazioni rispetto ad altre soluzioni di virtualizzazione, a fronte dell’esigenza di modificare il sistema operativo della VM.
Virtualizzazione nativa ibrida
La virtualizzazione nativa ibrida è una tecnica di nuova concezione che rappresenta una combinazione di virtualizzazione completa e para-virtualizzazione e utilizza tecniche di accelerazione input/output (I/O).
Ancora una volta a fronte del benefico prestazionale richiede che il processore sottostante abbia estensioni di virtualizzazione (per esempio: Intel-VT, AMD-V) per funzionare e non è possibile utilizzare hardware più datato che potrebbe altrimenti essere utilizzato da altre architetture di virtualizzazione.
I vantaggi per il business nella virtualizzazione dei server
Fermo restando le peculiarità di pro e contro legate a ogni tipologia di virtualizzazione server esistente, a livello generale la lista completa dei vantaggi che apporta la virtualizzazione dei server all’interno del data center è qui riportata in una lista sintetica, ma omnicomprensiva di tutti gli aspetti peculiari:
- abilitazione delle operazioni automatizzate dei data center;
- allungamento della vita (digitale) di applicativi legacy;
- miglioramento della velocità di fornitura del servizio;
- supporto della configurazione e della disponibilità delle applicazioni;
- consolidamento (incide sulla riduzione dei costi dell’hardware);
- ottimizzazione dei consumi di elettricità;
- riduzione del Down time;
- riduzione della necessità di server fisici;
- ottimizzazione degli spazi fisici del data center;
- riduzione della manutenzione operativa del server;
- taglio delle spese operative;
- riduzione del provisioning e dell’implementazione di nuovi servizi;
- risparmio dei tempi di disaster recovery;
- riduzione dei costi associati al test e allo sviluppo di applicazioni interne;
- abilitazione di un’infrastruttura di “cloud computing” semplice, reattiva e di tipo utility;
- riduzione di vari problemi di test e migrazione in ambienti diversi;
- riduzione (TCO) del costo totale di proprietà;
- miglioramento della flessibilità, dell’elevata disponibilità e delle prestazioni;
- miglioramento della sicurezza di rete e delle applicazioni;
- velocità di deploy;
- gestione centralizzata;
- soddisfazione cliente legata alla creazione di macchine virtuali specifiche alle esigenze cliente in termini di memoria, prenotazione CPU, spazio su disco e sistema operativo supportato.
I vantaggi legati alla sicurezza informatica
Proprio l’ultimo punto dei vantaggi legati alla virtualizzazione dei server merita un approfondimento: l’infrastruttura IT è più facile da gestire anche se le macchine virtuali non sono intrinsecamente immuni alle minacce e devono essere comunque protette.
Questo significa che la sicurezza della virtualizzazione diventa necessaria per mantenere rete, dati sensibili e utenti al sicuro in un ambiente virtualizzato.
La tecnologia di virtualizzazione offre solide capacità di isolamento e segmentazione che sono fondamentali per migliorare la sicurezza informatica.
Quindi, se da un lato la virtualizzazione richiede di occuparsi della sicurezza, dall’altro l’evoluzione delle tecnologie di virtualizzazione sta supportando efficacemente le soluzioni legate alla sicurezza, che a sua volta, si arricchisce di soluzioni virtualizzate di nuova concezione.