domenica set 14, 2008

Vino, virtualizzazione e xVM

Ricordo, alcuni anni fa, un'occasione in cui mi trovai con un gruppo di clienti a discutere di vino e virtualizzazione (un'accoppiata perfetta). Vino perché ci trovavamo a un evento Sun nella Napa Valley, cuore dell'industria vinicola californiana; virtualizzazione perché i partecipanti erano esperti di data center, riunitisi per discutere le prospettive future.

Tutti i clienti presenti all'evento possedevano data center di valore e capacità elevati e non avrebbero esitato a rispondere "E con ciò?" all'accusa di un'eccessiva protezione dei loro server. Erano coloro che mantenevano attivi,con straordinaria affidabilità, alcuni dei più importanti sistemi del mondo.

Tutti avevano però la stessa preoccupazione riguardo all'esecuzione di applicazioni su infrastrutture grid "virtualizzate" in rete (l'espressione "cloud computing" ancora non era di moda, altrimenti sono certo che qualcuno l'avrebbe usata).

La virtualizzazione è un concetto semplice con un nome sofisticato (abbreviato in "v12n" dagli intenditori, principio per cui io sarei "j14z"). Significa semplicemente segmentare computer fisici in computer "virtuali" di dimensioni più piccole, ognuno dei quali può essere dotato di un proprio Sistema Operativo (SO) e set di applicazioni.

Per cui, non solo un computer virtualizzato si assume il compito di eseguire più SO (eseguiti su un hypervisor, descritto più avanti), ma gli stessi SO possono cambiare nel tempo, a seconda del carico o della pianificazione. Il concetto tradizionale secondo cui il computer A esegue il SO o l'applicazione B lascia quindi posto a computer che sono disponibili per attività con priorità elevata, a prescindere dal sistema operativo o dall'architettura. Uno spike per lo shopping online potrebbe assegnare più macchine "virtuali" all'elaborazione delle transazioni durante i periodi di picco, tornando a SO e applicazioni diverse quando la situazione si normalizza. La capacità da fissa diventa variabile, in funzione delle necessità..

Sebbene la virtualizzazione del desktop non fosse una priorità per questi clienti, molti conoscono una realtà in cui coesistono più SO desktop. Non tutti fanno coesistere cinque SO diversi sui loro desktop (come me), ma possiedono diverse versioni di Windows o non hanno più il codice sorgente delle applicazioni in uso, condizione che obbliga a tenere a portata di mano i vecchi SO (e hardware). La virtualizzazione dei desktop consente agli utenti di eseguire più SO contemporaneamente su un unico desktop e svincola gli upgrade del software da quelli dell'hardware (un'innovazione che fa felici CIO e sviluppatori).

Tornando ai data center, la virtualizzazione può consentire un consolidamento estremo dell'infrastruttura, poiché, svincolando le applicazioni dall'hardware, si favoriscono pianificazioni di capacità e acquisti di sistemi più efficienti. E per quanto ciò possa sembrare entusiasmante, in caso di problemi si può sempre rimetterci un trimestre, metter mano ai risparmi e terminare la propria carriera. Quindi perché tante preoccupazioni?

In breve, questi clienti temevano che la virtualizzazione eliminasse il controllo che avevano faticosamente raggiunto nella gestione di un'affidabilità assoluta. In pratica, mentre erano in grado di tutelare un mainframe virtualizzato o un E25K (per tutelare si intende prestare un'attenzione particolare a una singola macchina), si trovavano in difficoltà davanti a un insieme di risorse. Né si può chiedere a un insieme di risorse perché sia lento, irritabile o incostante, domande a cui invece è più semplice rispondere nel caso di un'unica grande macchina.

Mentre il vino contribuiva a placarne i timori, alcuni clienti iniziarono a pianificare il loro ambiente ideale di cloud computing (mentre noi prendevamo nota sui nostri laptop). In sintesi, ecco quali erano le loro richieste.

Estrema diagnosticabilità. Chi conosce i data center sa che molto di rado le cose vanno come previsto. Per questo, calcolare sin dall'inizio la possibilità di problemi, rallentamenti e opportunità di ottimizzazione è un'alternativa migliore al presumere che tutto filerà liscio come l'olio. Per non rischiare di mettere a repentaglio il posto di lavoro, tutti volevano la totale certezza di essere protetti in caso di problemi.

In secondo luogo, volevano estrema scalabilità. Sapevano che il trend verso grid a scalabilità orizzontale (molti sistemi di piccole dimensioni) avrebbe lasciato il posto (come sempre accade) a un numero inferiore di sistemi più grandi (scalabilità verticale). E già ce ne stiamo accorgendo, poiché il passaggio a CPU multi-core crea sistemi a 16, 32, 64 e persino 128 vie in un elemento unico, tenuti insieme mediante una rete a prestazioni molto elevate.

Ma la scalabilità va applicata anche alle spese di gestione: avere 16 000 computer virtualizzati è fantastico (così come avere 16 000 cuccioli), ma solo fino a quando non bisogna gestirli e manutenerli. In un data center di alto livello, spesso la sfida (e la spesa) principale non è la tecnologia, ma la vasta gamma di prodotti ad hoc e di personale che se ne occupa. Quindi, una gestione senza problemi doveva essere la nostra priorità principale, tenendo anche conto di una scalabilità estrema (Internet).

Inoltre richiedevano un approccio general purpose, indipendente da hardware e SO. Desideravano, cioè, una soluzione che funzionasse con l'hardware di qualsiasi fornitore: non solo con server e dispositivi storage Sun, ma anche con quelli di Dell, IBM e HP. E volevano una soluzione che supportasse Microsoft Windows, Linux e non solo Solaris. Preferibilmente, appoggiata e sostenuta da Microsoft, Intel, AMD e non solo da Sun.

E infine volevano l'open source. Dopo aver fatto affidamento per anni sul software open source, non volevano reintrodurre il software proprietario nello strato più fondamentale dei loro futuri data center . Alcuni desideravano la possibilità di accedere al codice per garantire la sicurezza, altri volevano la libertà di apportare modifiche in caso di carichi di lavoro o requisiti speciali.

E con un tale feedback, a uno dei partecipanti la risposta è sembrata ovvia: "Perché non usare solamente Solaris?" Tutti utilizzavano Solaris in installazioni mission critical, tutti ne apprezzavano le prestazioni, la diagnosticabilità (garantita mediante DTrace) e la capacità di adattarsi persino ai più grandi sistemi del mondo. Era la risposta perfetta finché un cliente non ha chiesto: "Ma gli utenti di Windows vogliono utilizzare Solaris? Io credo di no". Il marchio "Solaris" non esprimeva neutralità in fatto di SO e tale neutralità era il fulcro delle nostre posizioni. Ma sapevamo che tutte le innovazioni di OpenSolaris ci avrebbero di certo garantito un vantaggio straordinario.

Questa è la premessa che ha originato i nostri annunci sulla virtualizzazione della settimana scorsa: il desiderio di risolvere i problemi di sviluppatori e operatori di data center in ambienti multi-vendor. Analizzando il cuore della nostra offerta xVM vedrete come abbiamo risposto alle richieste sopra citate: abbiamo integrato DTrace per un'estrema diagnosticabilità. Abbiamo utilizzato la scalabilità delle nostre innovazioni a livello kernel per la virtualizzazione dei sistemi più grandi del mondo. Abbiamo realizzato un'interfaccia semplice e chiara per il cloud computing (chiamata xVM OpsCenter, maggiori informazioni qui) e per la gestione e il provisioning dei data center, dai più piccoli ai più grandi. Tutto è disponibile in modalità open source (e download gratuito) e vanta il sostegno dei guru del settore (guardate questi video del lancio per vedere Microsoft e Intel appoggiare xVM: sì, avete letto bene, Microsoft appoggia xVM). Abbiamo persino utilizzato ZFS per ottenere un vantaggio sulla virtualizzazione dello storage (la prossima frontiera).

Perché lo abbiamo chiamato xVM? Per chiarire che non stiamo semplicemente prendendo di mira Solaris: xVM virtualizza Microsoft Windows, Linux (Ubuntu, RHEL e tutte le altre distribuzioni) oltre che Solaris (8, 9 e 10). I clienti possono consolidare questi sistemi operativi e allo stesso tempo consolidare l'infrastruttura hardware, usando xVM OpsCenter per la gestione e il mantenimento dell'intero ambiente.

La scorsa settimana abbiamo lanciato una linea completa di prodotti per la virtualizzazione, che include virtualizzazione dei desktop (xVM VirtualBox), virtualizzazione dei data center (xVM Server), gestione di livello elevato (xVM Ops Center) e supporto di Virtual Desktop (xVM VDI e SunRay). Tutti i prodotti sono appoggiati dal mercato e vengono utilizzati da alcuni tra i clienti più importanti del mondo.

A questo proposito vorrei ringraziare i clienti presenti a quell'evento di alcuni anni fa e offrire le mie più sincere congratulazioni ai team che hanno lavorato al lancio di xVM sul mercato, all'interno di Sun e della comunità dei nostri partner.

Per festeggiare xVM come merita, forse dovremmo organizzare il nostro prossimo evento nella contea di Champagne...


Share this post  del.icio.us | digg.com | slashdot.org | technorati.com | reddit | facebook | stumbleupon

No Comments

Post a Comment:
Comments are closed for this entry.