Introduzione al Cloud Computing

Il concetto di Cloud Computing.

L’origine dell’espressione Cloud Computing (nuvola informatica) non è chiara ma sembra derivare dalla pratica di disegnare nuvole stilizzate per rappresentare le reti nei diagrammi informatici e di telecomunicazioni. Da qui il passo verso la rappresentazione di un gruppo di risorse non ben identificato è stato breve.

Come Cloud Computing (Cloud) si intende:

  • il metodo di esecuzione di applicazioni software e la memorizzazione dei relativi dati in sistemi di elaborazione informatica centralizzati, fornendo l’accesso ad essi attraverso Internet. (Encyclopaedia Britannica, 2009)
  • il paradigma di erogazione di servizi (come l’archiviazione, l’elaborazione o la trasmissione dati) offerti su richiesta (on demand) da un fornitore (service provider) ad un cliente finale attraverso la rete Internet, a partire da un insieme di risorse preesistenti, configurabili e disponibili in remoto sotto forma di architettura distribuita. (Wikipedia, 2019)
  • il modello che permette l’accesso su richiesta, in qualunque momento e da qualunque luogo attraverso la rete, a un insieme di risorse condivise di elaborazione o memorizzazione, configurabili e disponibili velocemente, con il minimo sforzo di gestione e la minima interazione con il fornitore. (NIST, 2011)
  • il sistema per erogare potenza di elaborazione, storage di database, applicazioni e altre risorse IT on demand tramite una piattaforma di servizi remota via Internet con tariffe a consumo. (Amazon Web Services, 2019)
Elementi che compongono una struttura Cloud.

Da notare come nelle definizioni più datate non sia citato il modello di costo per utilizzo, che però è fondamentale in un modello di Cloud reale, in quanto fa parte della flessibilità e scalabilità lineare dello stesso.

In sintesi, il modello Cloud permette il facile accesso attraverso Internet, a risorse remote pre-esistenti e variabili, per eseguire applicazioni, memorizzare, trasmettere/ricevere dati, e usufruire di servizi aggiuntivi su richiesta, in modo pressoché immediato, in autoservizio e con un costo variabile legato all’uso.

Caratteristiche del modello.

Dalle definizioni precedenti si possono evincere le principali caratteristiche.

Risorse condivise.

Assenza di una relazione 1:1 statica tra il carico (applicazione, archiviazione, database) e la struttura fisica che lo ospita (server).

Elasticità e scalabilità.

Essendo risorse virtualizzate, è possibile configurarle secondo le esigenze di performance e costi in ogni momento, in crescita o decrescita, senza livelli di soglia minimi a scaglioni.

Modalità di accesso ampia.

I servizi sono accessibili da qualsiasi dispositivo, in qualunque momento e da qualsiasi posto (fatti salvi i limiti tecnologici evidenti)

Costi variabili in funzione dell’uso. (pay-per-use)

Costi esclusivamente legati all’utilizzo del servizio erogato in un dato periodo (capacità elaborativa, spazio di archiviazione, transazioni database, traffico dati)

Erogazione self-service su richiesta.

L’utente finale può auto-configurarsi l’ambiente necessario mediante pannelli di gestione a lui destinati. Non è necessario coinvolgere il fornitore nel farlo.

Esempi.

Al giorno d’oggi, il Cloud è presente in diversi aspetti della nostra vita “informatica” sebbene sia totalmente trasparente per noi.

Quando si fruisce di spazi di archiviazione remota (Google Drive, Dropbox, OneDrive, iCloud, ecc.), stiamo affidando i nostri dati a strutture che non conosciamo, non sappiamo dove siano, né dobbiamo preoccuparci di gestirle tecnicamente. Solo sottoscriviamo un abbonamento (anche gratuito) e abbiamo a disposizione lo spazio concordato, a cui possiamo accedere semplicemente usando gli stessi metodi usati per il disco locale del nostro dispositivo (PC, tablet, smartphone).

Lo stesso vale per i servizi di posta elettronica, sia che li si usi via browser (webmail) o con applicazione specifica (client email). Nel primo caso abbiamo remotamente sia l’applicazione sia i dati, nel secondo la applicazione è sul ns. dispositivo ma i dati sono nel Cloud (prima di eventualmente scaricarli). Anche in questo caso, non dobbiamo gestire la struttura per usufruire del servizio.

Da un punto di vista aziendale, oltre agli esempi sopra citati di condivisione di applicazioni e aree di memorizzazione, il Cloud Computing può essere l’infrastruttura informatica aziendale, temporanea o definitiva. Oltre all’uso di applicazioni fornite da terze parti (HR, CRM, ecc.) il modello può essere adottato per eseguire applicazioni proprie in una struttura condivisa e remotizzata (ERP, applicazioni specifiche di disegno o calcolo).

Il Cloud permette il facile accesso attraverso Internet, a risorse remote pre-esistenti e variabili, per eseguire applicazioni, memorizzare, trasmettere/ricevere dati, e usufruire di servizi aggiuntivi su richiesta, in modo pressoché immediato, in autoservizio e con un costo variabile legato all’uso.

Vantaggi.

Per un uso personale i vantaggi del modello sono tendenzialmente trasparenti all’utente perché stanno alla base del servizio che usufruisce, ma non della propria infrastruttura IT.
Ci limitiamo ad usare un servizio come Gmail, senza preoccuparci di “come” funzioni né possiamo incidere sulle sue performance.

Da un punto di vista aziendale, indipendentemente dalla dimensione (dal singolo freelance alla grande azienda), i vantaggi e i limiti devono essere parte della valutazione strategica dell’uso del modello, in particolare perché si devono considerare i costi in senso lato, compresi quelli di sicurezza e privacy, in maniera più oculata che nell’uso personale.

Il modello di Cloud Computing, introduce uno modo innovativo ed efficace nell’acquisizione, uso e gestione delle tecnologie richieste per ogni specifica esigenza perché offre evidenti vantaggi in termini di velocità di implementazione, flessibilità, e costi.

Si può paragonare questo modello a quello delle utenze (elettricità, acqua, telefono, ecc.) per ciò che riguarda la condivisione di risorse e il modello di costo, sebbene il Cloud Computing vada oltre con la possibilità di auto configurazione dei servizi secondo le proprie esigenze.

Le caratteristiche fondamentali del modello, esposte sopra, permettono di cambiare l’infrastruttura IT aziendale e adeguarla a esigenze impreviste o dovute a cambiamenti del business, ottimizzando i costi aziendali.

La flessibilità è sicuramente la caratteristica più importante perché permette di avere a disposizione l’infrastruttura per avviare nuovi sistemi, dismetterne altri, cambiare il carico temporaneamente o definitivamente. Tutto in modo veloce perché non si deve attendere la fornitura di componenti e spazi, né la loro installazione e senza costi fissi di soglia.

Il modello di costi associati all’uso, anche puntuale, permette l’accesso a potenti risorse che non sarebbero disponibili in altro modo se non per realtà aziendali di medio grande livello.

Il libero professionista, lo studente, il ricercatore e le Piccole e Medie Imprese possono avvalersi di capacità elaborative e di archiviazione per periodi cortissimi o lunghi, a costi contenuti, comunque impensabili se comparati con l’ipotesi di dotarsi fisicamente degli stessi in modo tradizionale. Si pensi all’esigenza di capacità di calcolo elevatissime (supercomputing) ma per un periodo molto ridotto, ad esempio per elaborare immagini o calcoli matematici.

Niente costi in conto capitale (o comunque fissi).

Nei modelli tradizionali, a fronte di una mutata esigenza aziendale (nuovo mercato/prodotto/canale, performance limitata, ecc.) si devono allocare risorse economiche con una pianificazione a medio termine e che comunque una volta erogate devono essere ammortizzate/pagate, incidendo sulle possibilità di ulteriori investimenti.
In altre parole, una volta che si ha un dispositivo lo si deve pagare, e questo immobilizza risorse finanziarie.

La disponibilità di risorse pre-esistenti e configurabili su richiesta, permette di avere costi solo variabili e scalarli secondo l’esigenza, ottenendo una gestione economica più efficiente e lineare.

Nessun costo fisso legato alla gestione operativa.

In modelli come l’outsourcing si libera l’azienda dai compiti operativi legati alla gestione di strutture statiche (x dispositivi e connessioni) ma comunque sotto il controllo della stessa, per cui i relativi costi non sono legati all’effettivo utilizzo.

Nel modello Cloud, questi costi sono variabili e condivisi, come la struttura stessa e associati all’utilizzo.

Focalizzazione aziendale sul proprio business.

La flessibilità dell’insieme permette maggior libertà nello sperimentare applicazioni seguendo le richieste del business. Potendo usufruire di capacità elaborativa e di archiviazione su richiesta, pagata a consumo e scalabile, la velocità di presenza sul mercato (time to market) migliora notevolmente.

Il contributo dell’area IT rimane focalizzato sulla governance e sulle strategie, evitando gli aspetti burocratici di gestione dei beni IT o la elevata specializzazione nei diversi componenti. Nessuno si immagina di avere specialisti nella creazione e gestione di centrali elettriche per fornire energia alla propria azienda, ci si specializza nel valutare strategicamente come utilizzare al meglio l’energia stessa fornita da terzi.

Economie di scala elevate indipendenti dalla dimensione aziendale dell’utente.

Con il Cloud, l’utente sostiene un costo variabile inferiore rispetto a quello richiesto per la gestione di un’infrastruttura statica su scala locale.
Condividendo l’utilizzo di risorse, anche di pregio, con molti clienti, il fornitore di servizi di Cloud ottiene economie di scala maggiori che non sarebbero accessibili agli utenti di dimensioni minori.

Nessuna ipotesi vincolante sulla capacità richiesta.

Quando si deve prendere una decisione in merito alla capacità richiesta per l’esecuzione o ampliamento di un sistema IT si rischia di dover mantenere costose risorse inattive (sovracapacità) o affrontare problemi di performance inadeguate (sottocapacità). Ogni variazione in aumento porta con se un livello di soglia che costituisce un costo innecessario. Ogni riduzione della capacità necessaria non significa una riduzione dei costi collegati perché rigidi. (vedi diagramma)

Con il Cloud, l’ipotesi iniziale per il dimensionamento delle risorse richieste non ha impatto sul costo e sui tempi di implementazione perché è possibile accedere alle risorse necessarie in modo mirato. Il successivo aumento o diminuzione della capacità necessaria hanno costi variabili che ne seguono l’andamento.
Ad esempio si pensi a carichi puntuali dovuti a processi ricorrenti ma eseguiti in modo non continuo come le chiusure contabili di fine mese.

Maggiore velocità e agilità implementativa.

In un ambiente Cloud, le risorse IT sono più che mai a portata di mano. Il tempo necessario per rendere disponibili tali risorse è infatti notevolmente ridotto, da mesi/settimane a solo pochi minuti. Questo ha un effetto molto positivo sull’agilità dell’organizzazione poiché i tempi e i costi necessari per le attività di sperimentazione e sviluppo diminuiscono significativamente, favorendo una miglior risposta alle esigenze aziendali in ogni momento.

Disponibilità globale in pochi minuti.

È possibile implementare con facilità un’applicazione in più aree geografiche, interconnesse ma indipendenti.
Questo permette all’utenza di avere una latenza più bassa e una migliore esperienza nell’uso del sistema, indipendentemente da dove accedano.

Limiti.

Come ogni altro modello, anche il Cloud Computing ha dei rischi legati a proprietà intrinseche, alle tecnologie utilizzate e a fattori esterni, per cui è importante valutarne l’impatto in funzione delle proprie aspettative e caratteristiche di business prima di decidere.

Diamo per assodato che ogni gestione di informazioni richiede attenzione ai rischi di disponibilità, riservatezza, integrità, autenticità e non ripudiabilità.

Una valutazione più dettagliata dei rischi specifici merita un approfondimento separato. Vediamo brevemente per ora, quelli accentuati dal modello Cloud.

Niente Internet = niente applicazione né dati.

Questo è sicuramente un punto critico, tipico di questo modello.
Sebbene ad oggi la connettività sia abbastanza capillare, senza connettività di rete, ed in particolare senza Internet, non si ha accesso né alle applicazioni né ai loro dati.

Alcuni fattori mitiganti sono:

  • la distribuzione dei sistemi critici tra Cloud e “locale” (Ibrido)
  • l’implementazione di sistemi tecnologici di ridondanza della connettività e percorsi alternativi di accesso (High Availability)
  • l’implementazione di processi che garantiscano una elevata Continuità Operativa (Business Continuity).

Niente fornitore = niente applicazione né dati.

Anche se è prerogativa di un buon servizio la sua ridondanza ed elevata disponibilità, il fornitore comunque può soffrire di problemi dovuti sia a motivi tecnici (mancanza di energia elettrica, danni ai sistemi), sia ad attacchi di pirati informatici (blocco dei servizi), sia a calamità naturali (incendi, tempeste), per cui non è possibile accedere alle applicazioni e ai dati.

Nel valutare l’adozione del modello Cloud si deve quindi considerare quale sia la disponibilità garantita e come viene implementata dal fornitore (ridondanza dei sistemi, distribuzione geografica, isolamento dei servizi e firewall, ecc.).

Più grande è il parco clienti di un fornitore, più distribuite e ridondate saranno le sue risorse, più è probabile che il livello di disponibilità sia elevato.

Privacy e riservatezza.

Un tema molto attuale è la protezione e riservatezza delle informazioni che vengono condivise in Cloud.

Infatti, oltre alla indispensabile protezione nel momento in cui i dati sono trasferiti da o verso il Cloud si devono considerare altri fattori di rischio quando essi risiedono nei dispositivi di memorizzazione del fornitore:

  • chi può accedervi?
  • come si è garantiti contro intrusioni esterne o addirittura interne?
  • quali garanzie ci sono che non siano divulgati a terzi?
  • quale è la politica di riservatezza verso le autorità?
  • quali standard di riservatezza dei dati personali sono rispettati?
  • quali sono le politiche di controllo della riservatezza (audit)?

Questi rischi sono presenti anche nei modelli di elaborazione tradizionali ma l’accesso remoto attraverso una rete diffusa per sua natura e la virtualizzazione dei dispositivi e zone di memorizzazione, nonché la gestione delegata a terzi, aumentano il rischio.

Considerazioni.

Il modello Cloud è quindi un insieme di tecnologie innovative che deve essere valutato nella sua interezza, senza false aspettative né preconcetti, e a fronte di adeguate considerazioni del bilanciamento tra vantaggi (flessibilità, accesso remoto, costi) e rischi (riservatezza, sicurezza).

In quest’ottica, ci si aspettano risultati positivi per l’azienda, non solo per l’IT, ma soprattutto per la crescita controllata della stessa nell’affrontare le variazioni del mercato, rispondendo in modo efficace in tempi più brevi.

In un prossimo articolo, vedremo quali servizi sono usufruibili nel Cloud e quali tipologie di implementazione possono essere adottate.

 

Dott. Mauro Gario
Marzo 2019

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *