Virtualization is not cloud computing

Let’s be clear: Virtualization is not cloud computing. It is a step on the journey, but it is not the destination. (Brad Anderson - Corporate vice president, Management and Security Division, Microsoft)

L’affermazione di Brad Anderson è netta: la virtualizzazione è solo un primo passo nella direzione del Cloud Computing, ma in quest’ultimo c’è molto di più.

Le caratteristiche che differenziano un ambiente di cloud computing da una infrastruttura virtualizzata sono:

  • On-demand self-service: la possibilità per un utente di ottenere risorse di calcolo (tempo CPU, banda di rete, storage) in base alla necessità e in modo automatico, senza interazione con altre persone
  • Broad network access: le risorse di calcolo sono accessibili attraverso la rete e usando strumenti ampiamenti diffusi come thin client e thick client (telefoni, laptop, desktop,…)
  • Resource pooling: le risorse di calcolo sono riunite in pool per servire diversi clienti usando un modello multi-tenant. Le differenti risorse fisiche e virtuali sono assegnate dinamicamente, in base alle esigenze degli utenti. Questo consente di ottenere un senso di indipendenza dalla localizzazione delle risorse in quanto l’utente finale non ha un’esatta idea di dove realmente risiedano le risorse che usa, ma può indicare ad alto livello delle locazioni preferenziali
  • Rapid elasticity: le risorse possono essere rapidamente modificate, spesso in modo automatico, per consentire di adattarsi rapidamente al crescere e decrescere delle necessità. Da un punto di vista dell’utente finale questo può portare ad avere la sensazione di risorse illimitate acquistabili nella quantità necessaria per il tempo necessario.
  • Measured Service: I sistemi cloud controllano e automaticamente ottimizzano le risorse sfruttando capacità di misura implementate a diversi livelli di astrazione in base al tipo di servizio erogato. L’uso delle risorse può essere controllato, misurato e riportato consentendo all’utente finale e al fornitore di servizi di accedere in modo trasparente alle informazioni d’uso.

Questa definizione (presa dal NIST) si applica sia ad ambienti di public cloud che di private cloud.

Prendiamo in considerazione questi ultimi (private cloud) e facciamo un esercizio di mappatura tra le caratteristiche e le tecnologie Microsoft che consentono di implementarle.

Alla base dell’infrastruttura ovviamente ci sono Windows Server 2008 R2 SP1 e/o Microsoft Hyper-V Server 2008 R2 SP1 che forniscono le funzionalità di virtualizzazione, con gestione dinamica delle risorse (es. Dynamic Memory, QoS), controllo degli accessi (Active Directory), alta affidabilità (Clustering, Clusterd Shared Volume).

Per implementare le diverse caratteristiche descritte sopra possiamo fare riferimento ai diversi prodotti della famiglia System Center ed in particolare ai prodotti della “nuova wave” attualmente in beta o in RC.

Measured service: il controllo delle risorse dal punto di vista del corretto funzionamento, delle performance e dell’uso può essere implementato usando System Center Operations Manager che, specialmente nella versione 2012 (ora disponibile in Beta 2), è in grado di eseguire un controllo end-to-end dalle risorse fisiche (server, storage, apparati di rete) ai sistemi operativi (Windows ma anche Linux/UNIX) fino alle applicazioni e ai servizi anche distribuiti (monitoring di applicazioni .NET e JEE). I dati di funzionamento dell’infrastruttura possono essere esposti in SharePoint utilizzando la possibilità messa a disposizione da SCOM 2012 di costruire Widget  personalizzati o in dashboard di System Center Service Manager.

Resource pooling: System Center Virtual Manager, in particolare la versione 2012 (ora disponibile in Release Candidate) è lo strumento che consente di implementare e gestire pool di risorse da assegnare in modo dinamico agli utenti dell’infrastruttura: cluster di host di virtualizzazione, reti virtuali, pool di IP, load balancer, storage (con classificazione in base base alle caratteristiche e utilizzo in base a policy) sono completamente gestibili dalla console di amministrazione di SCVMM 2012 o via powershell.

Rapid elasticity: anche in questo caso System Center Virtual Machine Manager costituisce lo strumento di base  per implementare questa caratteristica. SCVVM 2012 consente di gestire servizi/applicazioni intesi come un insieme di macchine virtuali, connesse a reti logiche e risorse di storage, che “collaborano” nell’erogazione di un servizio/applicazione. Per ogni VM che contribuisce a definire il servizio è possibile definire un numero minimo e massimo di istanze che possono essere messe in produzione al variare delle condizioni di calcolo. Le macchine virtuali sono messe in produzione tenendo conto del carico gestito dai diversi nodi del cluster di virtualizzazione ed eventualmente spostate tra i diversi nodi del cluster a seconda del carico su questi e delle necessità delle VM (Dynamic Optimization). SCVMM 2012 può essere affiancato, nell’implementazione di questa caratteristica da System Center Orchestrator 2012. SCO2012 consente di automatizzare le operazioni nel datacenter mantenendo il controllo sulle stesse attraverso la definizione di flussi di processi automatizzati in grado di interfacciarsi e comandare altri prodotti della famiglia System Center, Acitve Directory, sistemi operativi e prodotti di terze parti.

Broad network access: l’accesso alle risorse di calcolo messe a disposizione dal private cloud può essere effettuato da diversi device per esempio sfruttando i Remote Desktop Services presenti in Windows ed eventualmente mediati dalla famiglia di prodotti Forefront come Unified Access Gateway.

On-demand self-service: SCVMM 2012 mette a disposizione un portale web che consente agli utenti abilitati di richiedere e gestire risorse di calcolo: Self Service Portal 2. Questo portale fornisce funzionalità di base. Un maggiore controllo delle risorse e una migliore integrazione con SCVMM 2012 e con il suo modello di gestione dei servizi è realizzabile con System Center App Controller 2012 (nome in codice “Concero”). SCAC 2012 è un nuovo prodotto della famiglia System Center che implementa un portale di self service per consentire agli utenti finali di gestire le proprie applicazioni/servizi in esecuzione su un private cloud aziendale (basato su SCVMM 2012) o su Windows Azure.

Nei prossimi mesi vedremo in dettaglio i vari prodotti e come si possano integrare per costruire una soluzione di Private Cloud completa.

Nel frattempo potete iniziare a scaricare le versioni trial / beta dei diversi prodotti e iniziare a provarli:

Buona giornata a tutti

| giorgio | twitter-logo-1 @pgmalusardi |full_purple