I livelli di un datacenter moderno
Lasciamoci aiutare da una grafica per analizzare i singoli elementi che compongono le sezioni hardware e software di un datacenter moderno.
I livelli di funzionalità di un moderno Cloud OS
L’architettura di un tale tipo di datacenter ha alle sue basi, come abbiamo avuto più volte modo di ripetere, la virtualizzazione. Attraverso la virtualizzazione possiamo astrarre tutte le risorse fisiche del nostro datacenter (i server, i dispositivi di storage, le reti) e gestirle come un organismo unico. Ciò permette di costruire, al di sopra del livello di virtualizzazione, un ulteriore livello che, per semplificare, abbiamo chiamato “di gestione” che, da un lato, rende più semplice gestire il nostro datacenter e, dall’altro, consente di abilitare una serie di servizi come l’automazione, il monitoraggio o l’orchestrazione del datacenter, servizi che, a loro volta, aprono le porte alle più complete tecnologie di cloud computing. Solo unendo alla virtualizzazione un completo sistema di gestione del datacenter possiamo, ad esempio, gestire in un unico sistema macchine virtuali eterogenee, sostenere processi automatici di sostituzione di macchine virtuali, scalare, verso l’alto o verso il basso, le risorse in base ai carichi di lavoro. Analizziamo dunque in dettaglio questi ulteriori livelli.
Automazione
Il livello di automazione è il livello che permette di rendere automatiche le attività IT nel tempo. I servizi che fano parte di questo livello devono, ad esempio, essere in grado di gestire in modo automatico gli incidenti che possono verificarsi all’interno di un datacenter. Immaginiamo che siano le due di notte e il datacenter ha un problema in un servizio critico. Il primo livello di intervento deve essere creato, senza occupare fisicamente il team IT, dal livello di automazione: un software, opportunamente preimpostato, deve essere in grado, ricevuto l’allarme, di eseguire i classici task di ripristino del servizio che vengono eseguiti normalmente a mano dal team IT. Il software dunque riavvia il servizio, riavvia il server, verifica se il servizio è di nuovo online e, se i tentativi automatici non dovessero andare a buon fine, invia un alert urgente all’amministratore IT. Questa è naturalmente solo una delle attività che dovrebbe essere gestita dal livello di automazione: un software di questo tipo dovrebbe essere in grado di creare e configurare virtual machine senza l’intervento umano, gestire database, eseguire le procedure di aggiornamento, aggiungere o rimuovere potenza in base alle necessità e così via.
Orchestrazione
L’automazione non sarebbe possibile se non esistesse, all’interno del datacenter, un servizio in grado di armonizzare i vari sistemi e dispositivi disponibili. L’orchestrazione in un datacenter è quel livello critico di gestione che consente di eseguire, preferibilmente da un unico software e da un’unica interfaccia, una lunga serie di attività su più sistemi, servizi o dispositivi. Proprio per questa sua funzione, il livello di orchestrazione è, in un certo senso, il ponte i tra livelli superiori e le risorse virtualizzate. In genere il livello di orchestrazione si compone di una serie di connettori che permettono di sfruttare i servizi presenti all’interno di un datacenter, siano essi hardware o hardware virtualizzato (connettori per l’hypervisor, connettori per i dispositivi di storage, connettori per gli switch di rete), siano essi software (sistemi operativi o altro software di gestione). I connettori sono in grado di eseguire azioni sui sistemi che controllano. Per organizzare le operazioni, un sistema di orchestrazione deve anche essere in grado di stabilire relazioni fra i diversi servizi. In questo caso si utilizzano processi o workflow specifici che, nei servizi a più alto valore aggiunto, sono gestibili attraverso semplici interfacce grafiche.
Monitoraggio
Altro tassello necessario nella creazione di un’infrastruttura IT moderna è il servizio di monitoraggio dell’infrastruttura. In questo caso, più che nei livelli precedenti, è un servizio che probabilmente è già presente in ogni infrastruttura IT. Ma il monitoraggio che serve in un datacenter moderno è cosa ben diversa da quello presente in un datacenter tradizionale. Nell’IT del futuro è necessario che il monitoraggio non verifichi solo il livello di funzionamento di dischi, server, cpu, ma anche la qualità del servizio che l’intera infrastruttura, nel suo insieme, riesce ad erogare. Il monitoraggio, in altre parole, si estende dal controllo delle perfomance dell’hardware, al controllo delle performance percepite dagli utenti che usano i servizi erogati da quell’hardware. In questo scenario gli elementi da monitorare crescono in numero e complessità: è necessario prevedere sensori che riescono a verificare quando un’applicazione non risponde come dovrebbe alle interazioni degli utenti, quando il database non riesce ad erogare informazioni con la qualità del servizio richiesta, quando un errore di programmazione rende indisponibile una funzionalità.
Una piattaforma consistente per il Cloud OS
Una delle necessità dell’IT è sempre stata quella di limitare i costi legati all’operatività dell’infrastruttura. Per abilitare i livelli che abbiamo delineato velocemente nei paragrafi precedenti è necessario, naturalmente, aggiungere nuovi software e nuovi servizi. Si potrebbe pensare che ciò comporti un aumento della complessità dell’infrastruttura, e dunque un aumento dei costi necessaria a gestirla. Tuttavia si pensi a come siano improduttive tutte le attività che prevedono configurazioni, installazione di aggiornamenti, interventi per la risoluzione dei problemi: sono attività che consumano tempo e che impediscono ai professionisti IT di dedicarsi ad operazioni più strategiche per l’azienda.
In questo modello diventa dunque decisiva la scelta delle giuste tecnologie utilizzate nel proprio datacenter. Quando si deve scegliere il software che gestisce un’infrastruttura IT moderna è indispensabile guardare con attenzione non solo al numero di strumenti che possono essere sfruttati, ma anche alla semplicità delle operazioni di configurazione e manutenzione necessarie a gestire questi strumenti. I software che abilitano i livelli di cui abbiamo parlato devono essere integrati fra loro, offrire interfacce coerenti, permettere integrazioni con le infrastrutture esistenti senza aggiungere complessità.