VMware

VMware VMware, Incorporated è l’azienda di Palo Alto, California, fondata nel 1998, che ha introdotto nel mondo dell’informatica distribuita il concetto di virtualizzazione di una macchina, già presente da decenni nel mondo mainframe.

Nella sua forma più avanzata, il prodotto alla base di tutta l’architettura si chiama VMware ESX. Esso è un software che si installa sul ‘nudo metallo’ (bare-metal) e fornisce un cosiddetto ambiente di virtualizzazione, trasformando il server su cui è installato in un host, in grado di accogliere più macchine virtuali (virtual machine). Compito di VMware ESX è quello di simulare lo strato hardware sottostante (che, va da sé, deve rispondere a criteri di standardizzazione, ESX non può emulare qualunque hardware), per far credere alle macchine virtuali di stare lavorando, cioè di essere state installate, direttamente su tale hardware. Non solo le macchine virtuali, ma anche gli altri computer e gli utenti della rete che vi accedono, sono ingannati; una macchina virtuale è assolutamente indistinguibile da una macchina vera (chiamata ‘fisica’ per contrapposizione). Una VM (Virtual Machine) che, precisiamo, può essere sia un server ma anche una workstation, può venir creata direttamente virtuale, attraverso i tools di VMware, oppure può essere resa tale partendo da una macchina fisica, secondo un procedimento di conversione noto come physical-to-virtual.

Altre linee di prodotti, che hanno costituito l’offerta iniziale dell’azienda, come il prodotto attualmente noto come VMware Server, operano invece sopra un Sistema operativo che li ospita, e forniscono dunque, necessariamente, prestazioni inferiori rispetto alla soluzione bare-metal, perché il Sistema operativo ospitante introduce un ovvio carico aggiuntivo di lavoro. Queste soluzioni, tuttavia, mantengono una loro posizione di nicchia, soprattutto in ambito di test, dato anche il fatto che sono state rese gratuite.

Inizialmente, il focus della soluzione era sul consolidamento dei server aziendali: partendo dalla considerazione che spesso un server fisico viene utilizzato in media intorno al 10 % delle proprie capacità, risultava molto interessante poter consolidare in un unico server fisico una decina di server virtuali, senza perdere nulla in termini di potenza elaborativa. Il risultato netto era un minor costo globale dell’hardware, un minor costo energetico, minor spazio CED occupato ma anche, e soprattutto, una facilità nell’approvvigionamento dei server mai vista prima: richiesto di un nuovo server per esigenze aziendali, il personale EDP poteva provvedere nel giro di alcune ore, contro la settimana o i dieci giorni abbondanti, come minimo, necessari per effettuare la richiesta all’ufficio acquisti, perfezionare l’ordine al fornitore ed attendere la consegna. A quest ultimo aspetto si ricollega anche l’ambito del test: così come occorrono poche ore per disporre di un nuovo server di produzione, a maggior ragione diventa una caratteristica fantastica quella di poter disporre in brevissimo tempo di un server di test, sul quale effettuare tutte le operazioni necessarie prima di metterlo in produzione. Dovessero sorgere dei problemi, si può ripartire da una macchina nuova di zecca in pochi minuti.

Ma, col tempo, ci si rese conto che il vero aspetto rivoluzionario della virtualizzazione, quello in grado di rivoltare da cima a fondo l’informatica, facendo pensare a quella dell’IT come a una storia pre e post-virtualizzazione, era quello legato a due parole chiave: incapsulamento e indipendenza (dall’hardware). Col termine ‘incapsulamento’ si intende che una VM è, in realtà, rappresentata da un insieme di files, ed è dunque piuttosto semplice da maneggiare e, quando necessario, spostare da un host all’altro. Con ‘indipendenza dall’hardware’ si intende il fatto che una VM che opera su un host ESX, vedendo di fatto l’immagine dell’hardware propostale dallo stesso ESX, che è di fatto un’immagine standardizzata ed uguale per tutti gli host su cui si installa ESX, risulta di fatto indipendente dall’hardware su cui gira. Un modo forse più semplice di dire questa cosa è il seguente: si sa quanto sia delicata l’installazione di un Sistema operativo su un server, in quanto occorre disporre delle corrette versioni dei driver, in particolare quelli relativi a dischi e controller RAID; bene, nel caso di ESX è l’ESX stesso a curarsi preventivamente di tutti questi problemi, disponendo di tutti i driver corretti per le piattaforme hardware per le quali è certificato, ed è dunque in grado di presentare alla VM, nella fase di installazione del suo Sistema operativo, dei dispositivi hardware ‘virtuali’ e ‘standardizzati’, e che non creeranno problemi. Non solo ma, e questo è il punto, nel caso la VM venga spostata su un altro hardware, diverso dal precedente, essa continuerà a funzionare senza problemi, perché l’immagine hardware presentatagli dall’ESX del nuovo host è identica alla precedente. Sarà stato l’ESX, nella fase della sua installazione, a montare driver diversi sulle diverse piattaforme, e così facendo libera le VM ospitate da ogni analoga incombenza. L’unione di questi due fattori, la facilità nel maneggiare una VM e la sua indipendenza dall’hardware, rende VMware la piattaforma ideale per raggiungere livelli di efficacia nell’offrire alta affidabilità e capacità di disaster recovery difficili da raggiungere con soluzioni a budget equivalente. Per questo motivo è ragionevole supporre che la virtualizzazione diventerà entro tempi relativamente brevi lo standard operativo di riferimento, partendo dall’enterprise, dove di fatto quasi lo è già, fino ad arrivare alle realtà medie e medio-piccole.

VMware ESX è quello che in termini tecnici viene chiamato hypervisor, ed è il software che gestisce la vita delle VM su ciascun singolo host. Per gestire alta affidabilità e disaster recovery, tuttavia, c’è bisogno di almeno due host ESX, e per gestire una batteria di host ESX c’è bisogno di quella che nella terminologia VMware è definita come VMware Virtual Infrastructure (VI). Avendo introdotto la VI, siamo ora in grado di definire l’offerta di prodotti ‘gerarchica’ di VMware.

Alla base di tutto c’è VMware ESX, l’hypervisor, il quale, pur svolgendo il prezioso lavoro di base, si trova al livello più basso della gerarchia. Questa situazione trova riscontro nel fatto che, da qualche tempo, VMware ha reso gratuito l’hypervisor, forse per controbattere alcune mosse in tal senso della concorrenza, e nella relativa tranquillità che, per poter sviluppare una piattaforma più efficace, il cliente deve acquisire comunque un prodotto infrastrutturale.

Al livello gerarchico superiore, i prodotti sono tre, corrispondenti a tre distinti pacchetti della VI:

VI Foundation

VI Foundation propone in realtà una versione piuttosto semplice a livello infrastrutturale, consentendo, con la funzione di Consolidated Backup, una forma efficace di backup delle VM presenti sui vari server ESX.

VI Standard

Con la VI Standard disponiamo di una prima versione con funzionalità di alta affidabilità relativamente avanzate. Il modulo HA (High Availability), riavvia automaticamente su altri server ESX le VM ospitate da un server ESX che va in crash. Ciò riduce al minimo, pochi minuti, ma non elimina completamente, i tempi di inattività non programmata.

VI Enterprise

La VI Enterprise, infine, consente, attraverso il modulo DRS (Distributed Resource Scheduling), di distribuire il carico in modo bilanciato tra più server ESX. Consente inoltre, attraverso il modulo vMotion, di spostare automaticamente le VM che operano su un server ESX che si intende mettere in manutenzione, eliminando totalmente i tempi di inattività legati ad operazioni pianificate.

Al livello più alto della gerarchia vi sono i cosiddetti prodotti di automazione, cioè quei prodotti che consentono di automatizzare e rendere più fluide di quanto già non siano le operazioni di gestione delle VM. Il più famoso, poiché presente in ogni installazione VMware, è il vCenter, che è la console di comando dalla quale è possibile effettuare tutte le operazioni sui server ESX e sulle VM. Un altro esempio di prodotto di automazione è il Lifecycle Manager, la cui utilità si apprezza tenendo conto, che, pur essendo l’infrastruttura virtuale uno strumento formidabile di razionalizzazione informatica, molti aspetti rimangono di gestione relativamente complessa per gli amministratori. Uno di questi è la gestione del ciclo di vita delle VM, la quale viene gestite, normalmente, in modo manuale. Col Lifecycle Manager richiesta, creazione, distribuzione, aggiornamento, tracciamento e disattivazione di una VM sono gestibili attraverso una console che rende il compito dell’amministratore di sistema molto più semplice. Altri prodotti di automazione, pur importantissimi, come Site Recovery Manager, Lab Manager e Stage Manager, non vengono qui approfonditi per non far diventare un trattato questa semplice pagina di presentazione.

Un prodotto se vogliamo separato dal mainstream dei prodotti VMware è ThinApp, frutto dell’acquisizione dell’azienda Thinstall. Questo prodotto consente di far girare un applicativo su server e client senza doverlo previamente installare. Questo ‘miracolo’ avviene perché l’applicativo in questione viene preventivamente preparato e rilasciato sotto forma di eseguibile, che racchiude al proprio interno tutto quanto necessita per la propria esecuzione (chiavi di Registry, dll, ecc.). Quindi, quando viene scaricato su una macchina per l’esecuzione, pur interagendo normalmente con gli altri applicativi presenti (copia e incolla) non va a toccare minimamente la configurazione del sistema. Questa soluzione ha due grossi vantaggi. Il primo è che l’applicativo non lascia traccia del suo passaggio: dovesse non essere più utile, basta cancellare l’eseguibile, e nessuna chiave di registry o dll sarà mai stata modificata; per la stabilità di un sistema, ciò è molto utile. Il secondo vantaggio è che è possibile far convivere più versioni di uno stesso applicativo sulla stessa macchina, cosa notoriamente impossibile in quasi tutti i casi.

VMware, Incorporated, che nel 2004 è stata acquisita da EMC Corporation, è una delle software house che ha tenuto negli ultimi anni, e costantemente, i più elevati tassi di crescita nel settore ICT mondiale, fino ad entrare, nel 2007 nella classifica delle prime 10 software house del mondo. Attualmente conta 120.000 clienti e 6.300 addetti in oltre 40 paesi.