Dall’avvento di internet e con lo sviluppo esponenziale dell’accesso alla rete, la sempre maggiore dipendenza degli utenti dalla connettività al network, la nascita di applicazioni online sempre più richieste, l’aumento gigantesco della quantità di informazioni depositate in rete, la crescente potenza dei linguaggi di programmazione web-oriented, la nascita e l’esponenziale sviluppo dei portali di social networking, l’esigenza di mobilità delle persone.
Tutto questo ha creato negli anni la necessità di sviluppare infrastrutture hardware sempre più potenti, ha fatto crescere a dismisura il numero e la dimensione dei datacenter nel mondo, è cresciuta notevolmente la capacità della rete di trasmettere dati, sono cresciute le interconnessioni, le tecnologie di gestione della rete, la potenza delle CPU, e tanto altro.
Allo stesso modo sono cresciute le esigenze di personale altamente qualificato per progettare le infrastrutture HW, per manutenerle, per progettare le applicazioni, i portali, i database, insomma il mercato attorno ad Internet è divenuto una economia a se.
In questi ultimi due-tre anni le fusioni tra i giganti delle tecnologie informatiche hanno in parte determinato gli indici di Wall Street, riuscendo a trattenere la caduta dei mercati.

L’avvento e lo sviluppo esponenziale della virtualizzazione che ormai si è diffusa a tutte le Fortune500, ma che stenta ancora a penetrare nelle PMI solo a causa del necessario investimento iniziale, ci ha abituato a nuovi paradigmi d’uso della infrastruttura HW di un datacenter, portando vantaggi amministrativi ed automatismi sempre più semplici da implementare, oltre ai noti vantaggi economici di riduzione del TCO.

Negli ultimi due anni l’affermarsi della “moda” del Cloud Computing, che fa penetrare la virtualizzazione del datacenter nelle PMI sotto forma di utilizzo a consumo della potenza computazionale, ha ulteriormente modificato il paradigma d’uso dell’infrastruttura HW, rendendolo ancora più semplice, più maneggevole, più elastico e più economico.

Queste rivoluzioni ancora in atto, che trasformeranno tutte le attuali realtà dei datacenter per i prossimi 5 anni (dati IDC e Gartner), se da un lato porteranno enormi benefici di sviluppo di innovazione a tutte le imprese più piccole, dall’altro creeranno un vuoto nel personale amministrativo che prima operava sulle infrastrutture, in quanto non più necessario come prima. Tutto il know how dei system administrator,degli sviluppatori,degli architetti di soluzioni, tutte le certificazioni, iniziano a perdere valore, tutti gli insegnamenti universitari della maggior parte delle università non servirà più a nulla. Gli ingegneri informatici che non sono stati seguiti da professori al passo con i tempi si troveranno a doversi aggiornare prima di entrare nel mondo del lavoro.

Pensiamo a realtà come wikipedia con le seguenti statistiche:

  • 50,000 http requests per second
  • 80,000 SQL queries per second
  • 7 million registered users
  • 18 million page objects in the English version
  • 250 million page links
  • 220 million revisions
  • 1.5 terabytes of compressed data

E’ sostenuta da

  • 200 application servers
  • 20 database servers
  • 70 cache servers
  • circa 4 system administrator

Oppure facebook:

  • Number of MySQL servers – 1,800
  • Number of MySQL DBAs – 2
  • Number of Web servers – 10,000
  • Number of Memcached servers – 805

Con 900 dipendenti di cui non si sa la distribuzione in system administators.

In molti di questi casi estremi dove l’amministrazione, ampliamento e manutenzione del parco macchine metterebbe in crisi il più navigato dei team, si è riusciti a rendere snelle ed automatizzate tutte le procedure legate alla gestione della crescita di potenza richiesta.

Per esempio il caso Amazon, riportato in un vecchio post, l’ enorme crescita dell’ecommerce ha fatto nascere l’esigenza di maggiore manegevolezza nell’amministrazione dei sistemi creando internamente l’infrastruttura di cloud computing che è poi risultata un ottimo prodotto di vendita.

HumanLess Computing

A breve la prova di una maggiore efficienza delle infrastrutture di fault tolerant sarà quella di misurare il fattore umano nella sua gestione o, eventualmente, la mancanza di esso. Il prossimo futuro vedrà i computer e le infrastrutture che non avranno più bisogno dell’uomo per la gestione e lo sviluppo. Ecco il titolo humanless computing .

Ovviamente l’umano interviene nella progettazione ed implentazione della infrastruttura capace di gestirsi e crescere da sola.

Ma vediamo meglio cosa significano questi termini, iniziando con una presentazione di Lew Tucker vicepresidente e CTO di SUN Cloud Computing Initiative.

Autonomic Computing

Ora diamo un occhio all’ IBM research center dove da anni si fa ricerca nell’ambito dell’autonomic computing. Occorre dire che teorizzare fa bene, ma lasciarsi superare da chi ha iniziato a fare ricerca molto dopo direttamente sul campo è triste.

Voglio riportare qui una parte di tutte le soluzioni che abbiamo valutato o solo studiato o solo seguito lo sviluppo da molto tempo ormai.

VMWare : vCloud. Un ampliamento delle soluzioni di virtualizzazione dell’infrastruttura vCenter, che con elementi quali l’ Orchestrator, è possibile tramite definizione di workflows programmare azioni ad eventi, come citato in un vecchio post

Citrix : Citrix Cloud Center. Una soluzione HW SW a tutto tondo gestibile tramite strumenti quali il workflow studio adatto a programmare le azioni ad eventi registrati sull’infrastruttura

Novell : PlateSpin Orchestrate (recente nome nato dall’acquisizione di PlateSpin) . Un sistema capace di automatizzare l’approvvigionamento di risorse mediante workflows disegnati caso per caso.

Cisco : Unified Computing. Una infrastruttura già citata in altri vecchi post (1,2), capace di gestire facilmente ed elasticamente un intero datacenter

Amazon : Autoscalabilty. Una serie di webService che una volta programmati correttamente consente ad una applicazione di incrementare e diminuire le risorse computazionali in base al traffico registrato.

Questi esempi commerciali (esistono molte altre soluzioni opensource), nascono dal concetto chiave di poter programmare le azioni da eseguire in base ad eventi registrati (Orchestration,WorkFlow), esempio un sovraccarico di richieste su un webserver richiede un secondo webserver ed un bilanciatore di carico, un sovraccarico su un db server richiederebbe l’attivazione di un secondo db server con una sincronizzazione della replica dei dati, etc etc.

Ma l’autonomic computing prevede delle altre funzionalità che vedremo nel prossimo futuro, l’intelligenza artificiale, capace di prevedere il crescere o decrescere del carico in base all’esperienza registrata dal sistema; rilasciare o aggiungere risorse quando non sono ancora necessarie, perchè è previsto che lo saranno.