• Non ci sono risultati.

Sviluppo storico ed economico del cloud computing: Cloud foundry come esempio di platform as a service

N/A
N/A
Protected

Academic year: 2021

Condividi "Sviluppo storico ed economico del cloud computing: Cloud foundry come esempio di platform as a service"

Copied!
76
0
0

Testo completo

(1)

ALMA MATER STUDIORUM

UNIVERSIT `

A DI BOLOGNA

CAMPUS DI CESENA

SCUOLA DI INGEGNERIA E ARCHITETTURA

Corso di Laurea in Ingegneria Elettronica, Informatica e delle

Telecomunicazioni

SVILUPPO STORICO ED ECONOMICO DEL

CLOUD COMPUTING: CLOUD FOUNDRY COME

ESEMPIO DI PLATFORM AS A SERVICE

Elaborata nel corso di: Sistemi Distribuiti

Tesi di Laurea di:

JESSICA MARCANTONI

Relatore:

Prof. ANDREA OMICINI

Co-relatori:

Prof. STEFANO MARIANI

ANNO ACCADEMICO 2013–2014

SESSIONE III

(2)
(3)

PAROLE CHIAVE

Cloud Computing Platform as a Service Cloud Foundry

(4)
(5)
(6)
(7)

Indice

Introduzione ix

1 Introduzione al Cloud Computing 1

1.1 I modelli di servizio . . . 3

1.1.1 Infrastructure as a Service (IaaS) . . . 4

1.1.2 Platform as a Service (PaaS) . . . 5

1.1.3 Software as a Service (SaaS) . . . 6

1.2 I modelli di Cloud . . . 7 1.2.1 Public Cloud . . . 7 1.2.2 Private Cloud . . . 7 1.2.3 Community Cloud . . . 8 1.2.4 Hybrid Cloud . . . 8 1.3 Virtualizzazione . . . 8 1.3.1 Virtualizzazione Completa . . . 9 1.3.2 Paravirtualizzazione . . . 9

1.3.3 Virtualizzazione hardware assistita . . . 10

2 Evoluzione storica del Cloud Computing 11 2.1 Nascita del Cloud Computing . . . 11

2.2 Stato dell’arte del Cloud Computing . . . 13

2.3 Il futuro del Cloud Computing . . . 13

3 Sviluppo economico del Cloud Computing 17 3.1 Vantaggi del Cloud Computing per le aziende . . . 17

3.2 Le principali offerte Cloud . . . 24

3.2.1 Infrastructure as a Service . . . 24

(8)

3.2.3 Platform as a Service . . . 28 4 Cloud Foundry come esempio di PaaS 33 4.1 I componenti di Cloud Foundry . . . 34 4.2 Usare Cloud Foundry . . . 36 4.3 Cloud Foundry Foundation . . . 39 4.4 IBM Bluemix come servizio di Cloud Foundry Foundation . 40 4.4.1 Servizi offerti . . . 51

(9)

Introduzione

Il Cloud Computing `e una realt`a sempre pi`u diffusa e discussa nel nostro pe-riodo storico, ma probabilmente non `e ancora chiaro a tutti di cosa si tratta e le potenzialit`a che possiede. Infatti, non esiste ancora una definizione uni-voca e condivisa e questo pu`o creare confusione. Oggi le grandi compagnie nella comunit`a informatica spingono sempre di pi`u per affermare i servizi Cloud a livello mondiale, non solo per le aziende del settore, ma anche per tutte le altre. Ed `e cos`ı che le aziende di tutto il mondo si muovono per imparare e adottare questa nuova tecnologia, per spostare i loro centri dati e le loro applicazioni nel Cloud. Ma dove e quando nasce il Cloud Com-puting? Quali sono realmente i benefici per le aziende che adottano questa tecnologia? Questo `e l’obiettivo della mia tesi: cercare di far chiarezza sulla sua definizione, indagare sulla sua nascita e fare un quadro economico del suo sviluppo, analizzando i benefici per le aziende e le opportunit`a offerte. Come caso di studio ho scelto la piattaforma Cloud Foundry perch`e in questo momento `e in forte espansione e sta facendo un grosso lavoro per cercare di rendere il suo prodotto uno standard per il Cloud Computing. Come esempio particolare di piattaforma basata su Cloud Foundry si parler`a di Bluemix, la piattaforma Cloud offerta da IBM, una delle pi`u grandi aziende nel settore informatico.

La tesi sar`a cos`ı strutturata:

• nel primo capitolo viene data una spiegazione di base sul Cloud Com-puting, analizzando i modelli di servizio, i modelli di Cloud e il con-cetto di virtualizzazione. Con questo capitolo si intendono chiarire i concetti fondamentali che verranno poi richiamati spesso nei successivi capitoli.

• Il secondo capitolo illustra l’evoluzione storica del Cloud Computing. Vengono messi in evidenza la sua nascita, il suo sviluppo nel corso

(10)

degli anni e quello che si prospetta per il futuro. Nell’ultima parte vengono riportate le opinioni sul futuro del Cloud Computing da parte dei critici online.

• Il terzo capitolo tratta dell’aspetto economico del Cloud. Vengono messi in luce i benefici economici che le aziende possono ottenere adot-tando questa nuova tecnologia, sia in relazione al bilancio aziendale, che al risparmio di tempo. Per ogni modello di servizio vengono poi riportati i maggiori provider presenti ora sul mercato, con un breve elenco dei principali servizi offerti e il collegamento al sito nel quale trovarli.

• Nel quarto capitolo viene analizzata la piattaforma di esempio PaaS, Cloud Foundry. Si analizzano i suo componenti principali, l’utilizzo che se ne pu`o fare analizzando la documentazione fornita e si presenta una breve descrizione della sua comunit`a, la Cloud Foundry Founda-tion, che vede al suo interno alcune delle pi`u importanti aziende del settore. In seguito si illustra IBM Bluemix, un esempio di piattafor-ma basata su Cloud Foundry. Si riporta una descrizione di Bluemix in generale e si elencano i principali servizi offerti con qualche esempio.

(11)

Capitolo 1

Introduzione al Cloud

Computing

Il Cloud Computing pu`o essere definito come un insieme di tecnologie che permettono di fornire risorse erogabili come un servizio (as a service). Nor-malmente in quest’ottica vi `e un provider che fornisce servizi e risorse com-putazionali, spesso a pagamento, ad un pubblico di consumer i quali ac-cedono, tramite un client, ad un server contenente il servizio che hanno acquistato e che vogliono utilizzare.

Una definizione di Cloud Computing `e stata data dal NIST (National In-stitute of Standards and Technology) [20] che fornisce un’ampia descrizione delle caratteristiche principali:

Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be ra-pidly provisioned and released with minimal management effort or service provider interaction. This cloud model is composed of five essential charac-teristics, three service models, and four deployment models.

(Il Cloud Computing `e un modello per consentire ovunque (ubiquitous) un accesso su richiesta (on-demand) economicamente conveniente ad un insieme condivisibile di risorse computazionali configurabili (ad esempio: reti, server, storage, applicazioni e servizi) che possano essere rapidamente erogati e rilasciabili da parte di un provider con un minimo sforzo per la

(12)

2 CAPITOLO 1. INTRODUZIONE AL CLOUD COMPUTING

gestione o l’interazione. Questo modello di Cloud `e composto da cinque caratteristiche fondamentali, da tre modelli di servizio e da quattro modelli di distribuzione).

Le cinque caratteristiche fondamentali sono:

• Self-service a richiesta. I servizi possono essere forniti su richiesta al consumer senza dover interagire con il personale del provider di servizi.

• Ampio accesso alla rete. I servizi sono disponibili in rete e acces-sibili tramite meccanismi standard che consentono il loro utilizzo da dispositivi-piattaforme client eterogenee.

• Pool di risorse. Le risorse sono raggruppate per poter servire si-multaneamente una molteplicit`a di consumers attraverso il modello multi-tenant, con diverse risorse fisiche e virtuali dinamicamente as-segnate e riasas-segnate secondo le richieste di ciascun consumer. Si ha indipendenza dalla locazione in quanto il cliente pu`o usufruire dei ser-vizi pur non avendo il controllo e la conoscenza dell’esatta locazione delle risorse.

• Rapida elasticit`a. Le richieste di risorse extra sono gestite automa-ticamente e dinamicamente in relazione alla domanda. Al consumer la capacit`a delle risorse apparir`a illimitata ed esso potr`a acquistarle in qualsiasi momento nelle quantit`a desiderate.

• Servizi misurati. I sistemi Cloud controllano e ottimizzano automa-ticamente l’uso delle risorse facendo leva su capacit`a di misurazione1

a un livello di astrazione appropriato per il tipo di servizio richiesto.

(13)

CAPITOLO 1. INTRODUZIONE AL CLOUD COMPUTING 3

1.1

I modelli di servizio

I servizi offerti sono generalmente organizzati secondo un’architettura a livelli:

• livello inferiore (Infrastructure as a Service), si occupa di fornire una visione astratta delle risorse fisiche, quali server, memorie di massa e infrastrutture di rete;

• livello intermedio (Platform as a Service), fornisce agli sviluppatori l’ambiente e gli strumenti necessari per la realizzazione e l’esecuzione delle applicazioni, basandosi sull’infrastruttura del livello sottostante; • livello superiore (Software as a Service), `e quello che fornisce diretta-mente al consumer le applicazioni vere e proprie e i servizi richiesti.

(14)

4 CAPITOLO 1. INTRODUZIONE AL CLOUD COMPUTING

1.1.1

Infrastructure as a Service (IaaS)

Questa tipologia di servizio offre al consumer le risorse hardware sul quale egli potr`a poi installare sistemi operativi, software e applicazioni di qua-lunque tipo. Il consumer avr`a la percezione di lavorare su una macchina reale tutta per s`e, ma in realt`a ci`o che viene fornito `e una macchina virtuale basata su hardware reale. La richiesta di aumento di prestazioni da parte di un consumer non deve per`o interferire con le prestazioni delle altre macchi-ne virtuali che stanno contemporamacchi-neamente sfruttando lo stesso hardware fisico. A questo scopo occorre potenziare i componenti del sistema che si occupano della gestione delle risorse e quelli che si occupano della sicurezza del sistema stesso.

(15)

CAPITOLO 1. INTRODUZIONE AL CLOUD COMPUTING 5

1.1.2

Platform as a Service (PaaS)

Con questo tipo di servizio il consumer potr`a distribuire applicazioni da lui acquisite o realizzate tramite linguaggi di programmazione e strumenti supportati dal provider dell’infrastruttura. Ci`o significa che il consumer non ha il controllo e la gestione della sottostante infrastruttura, che include server, reti, sistemi operativi, storage, ma ha il controllo sulle applicazioni distribuite e, se possibile, sulle configurazioni dell’ambiente che le ospita. In questo caso il problema dell’isolamento `e ancora pi`u rilevante perch`e deve essere garantito anche a livello di componenti. La piattaforma deve essere in grado di gestire pi`u consumers che lavorano insieme su di essa, in modo da impedire a componenti di un determinato consumer di accedere a dati e componenti sviluppati da altri. Pu`o anche essere necessario, invece, accedere a determinati servizi di un altro componente, comunicare con esso e usare funzionalit`a di memorizzazione di massa messe a disposizione dalla piattaforma.

(16)

6 CAPITOLO 1. INTRODUZIONE AL CLOUD COMPUTING

1.1.3

Software as a Service (SaaS)

Questo tipo di servizio mette a disposizione del consumer degli applicativi software che possono essere utilizzati accedendo tramite un qualsiasi pro-gramma client. Il consumer non ha il controllo sulla sottostante infrastrut-tura, che include reti, server, sistemi operativi, storage o anche applicazioni individuali, ma pu`o al limite controllare qualche impostazione di configu-razione per applicazioni specifiche. Anche in questo caso, il consumer deve avere la percezione di essere l’unico a utilizzare l’applicazione. Per fare ci`o si possono replicare le istanze dell’applicazione per ogni consumer (scelta sconsigliata e spesso infattibile) oppure si pu`o rendere l’applicazione con-sapevole di avere pi`u consumers attivi contemporaneamente, garantendo il giusto isolamento e la corretta condivisione dei componenti.

(17)

CAPITOLO 1. INTRODUZIONE AL CLOUD COMPUTING 7

1.2

I modelli di Cloud

Vi sono diverse tipologie di sistemi Cloud, le quali si differenziano tramite caratteristiche valutabili in base all’utilizzo finale.

1.2.1

Public Cloud

In questo modello di Cloud si ha di norma un provider che gestisce risorse hardware e software e una serie di consumers che sfruttano queste risorse, spesso tramite metodi di pagamento pay-per-use. Questo modello `e adatto soprattutto a piccole o medie aziende che cos`ı pagano soltanto per quello che utilizzano senza dover affittare o acquistare cluster fisici.

Gli svantaggi consistono nel dover pagare i costi di contratto con il provider per tutta la durata di vita del prodotto, ma il problema principale riguarda la sicurezza. I consumers non sanno dove effettivamente sono allocati i loro dati e in pi`u essi non possono gestire le politiche di sicurezza, che `e compito del provider. Dal punto di vista della sicurezza `e preferibile utilizzare il modello di Cloud privato.

1.2.2

Private Cloud

Questo modello di Cloud prevede una infrastruttura dedicata interamente ad una sola azienda, quindi gestita solamente da essa senza contratti con terze parti. Un primo svantaggio di questo modello consiste nel costo che l’azienda deve sostenere per avere questo tipo di servizio perch`e tutti i costi di gestione e manutenzione sono addebitati interamente all’azienda stessa. Il vantaggio principale per`o consiste nella sicurezza. Con questo modello, infatti, `e l’azienda che si occupa di gestire le politiche di sicurezza, `e a conoscenza dell’ubicazione dei propri dati ed `e anche la sola che utilizza i servizi offerti dal Cloud. Lo svantaggio principale `e relativo alla scalabilit`a perch`e si ha un numero limitato di risorse, a differenza del Cloud pubblico nel quale il consumer ha la percezione di risorse illimitate. Questo pu`o creare problemi e fastidiosi ritardi, quindi un modo per risolvere il problema `e il private virtual Cloud. In questo modello si costruisce un Cloud privato basandosi su un Cloud pubblico e non sulle risorse dell’azienda. Con questa soluzione si risolve il problema della scalabilit`a, ma si deve tener conto del

(18)

8 CAPITOLO 1. INTRODUZIONE AL CLOUD COMPUTING

fatto che la sicurezza non sar`a massima come lo era per un Cloud privato puro.

1.2.3

Community Cloud

Una Community Cloud pu`o essere realizzata come una porzione isolata di Public Cloud o di Private Cloud oppure come un ambiente computazionale completamente isolato. In questo modello, organizzazioni che si conoscono e si fidano le une delle altre e che hanno bisogno di condividere informazioni o risorse formano una Community Cloud che conterr`a tutto ci`o che le aziende devono condividere per poter lavorare insieme.

1.2.4

Hybrid Cloud

Questo modello mette insieme i tre tipi di Cloud visti precedentemente per poter avere maggiori benefici e adeguarsi al meglio alle esigenze dei consumers, pur mantenendo le caratteristiche di ognuno ben distinte. Tipi-camente viene utilizzato quando le aziende vogliono mantenere privati certi tipi di servizi o risorse, ma allo stesso tempo condividere una parte di essi per abbattere i costi e fornire loro maggiore dinamicit`a. Un esempio pu`o essere quello di un’azienda che mantiene tutti i dati e le applicazioni su un Cloud privato, ma nel momento in cui le risorse interne finiscono va ad utilizzare i servizi offerti da un Cloud pubblico. Quindi in situazioni nor-mali si utilizzano servizi e risorse computazionali interni all’azienda, mentre in situazione di bisogno si scala su Cloud pubblico. Un altro esempio pu`o essere l’azienda che decide di utilizzare i servizi di storage di un Cloud pub-blico per memorizzare informazioni meno sensibili, oppure che espone certi servizi su Cloud pubblico proprio perch`e questi devono essere pubblici per poter essere utilizzati da altre organizzazioni.

1.3

Virtualizzazione

La virtualizzazione `e la tecnologia chiave del Cloud Computing e verranno qui elencate brevemente le sue caratteristiche e le sue componenti principali. Per virtualizzazione si intende la creazione di una versione virtuale di una risorsa fornita fisicamente. Qualsiasi risorsa hardware o software pu`o essere virtualizzata: server, memoria, sistemi operativi, programmi applicativi e

(19)

CAPITOLO 1. INTRODUZIONE AL CLOUD COMPUTING 9

anche reti di comunicazione. In questo caso, il processo di virtualizzazione che ci interessa `e la virtualizzazione di piattaforme hardware, che permette di creare risorse hardware simulate che potranno poi essere utilizzate come macchine vere e proprie dagli utenti, i quali non hanno conoscenza dei dispo-sitivi fisici che stanno effettivamente utilizzando. Viene chiamata macchina host la macchina sulla quale effettuiamo la virtualizzazione e macchina gue-st la macchina virtuale vera e propria. I componenti principali su cui si basano le tecnologie di virtualizzazione sono:

• Virtual Machine: crea un ambiente virtuale che emula un’intera macchina fisica. La macchina virtuale si comporta esattamente come un computer fisico ed `e possibile dotarla di hardware virtuale. `E pos-sibile memorizzarla come immagine del disco rigido del computer, con alcune meta-informazioni, come le risorse disponibili e le loro caratte-ristiche. Una macchina virtuale pu`o essere spostata da un server a un altro.

• Hypervisor: o Virtual Machine Manager, gestisce i sistemi operativi ospiti su un server fisico e presenta loro una vista virtualizzata delle risorse hardware fisiche.

In seguito vengono elencati i principali modi di fare virtualizzazione.

1.3.1

Virtualizzazione Completa

In questo caso l’Hypervisor provvede a simulare un sistema hardware com-pleto e standardizzato, rendendo trasparente alla Virtual Machine il fatto di trovarsi all’interno di una infrastruttura virtualizzata. L’Hypervisor inter-cetta e interpreta tutte le chiamate fatte dalla Virtual Machine e le mappa in opportune interazioni con l’hardware sottostante.

1.3.2

Paravirtualizzazione

Con questo tipo di virtualizzazione ci si appoggia direttamente all’hardware fisico, senza ricorrere alla simulazione dello stesso. L’Hypervisor avr`a il compito di controllare e regolamentare l’accesso all’hardware sottostante da parte delle Virtual Machine. In questo ambito le istruzioni vengono

(20)

10 CAPITOLO 1. INTRODUZIONE AL CLOUD COMPUTING

eseguite direttamente sul processore senza alcun tipo di intermediazione. Con questo approccio il sistema operativo ospite `e consapevole di trovarsi su un’architettura virtualizzata, per cui deve essere reso compatibile con l’ambiente. La paravirtualizzazione ha costi di manutenzione elevati perch`e spesso sono necessarie profonde modifiche al kernel del sistema operativo. Il vantaggio principale per`o si ha in termini di perfomance elevate ed `e per questo che la paravirtualizzazione risulta ampiamente utilizzata.

1.3.3

Virtualizzazione hardware assistita

Questo approccio consente la virtualizzazione supportata direttamente dal-l’hardware. `E pi`u difficile da definire perch`e ci sono opinioni contrastanti in merito: alcuni lo ritengono un vero e proprio approccio diverso dalla virtua-lizzazione, altri lo considerano un supporto tecnologico agli altri due metodi di virtualizzazione visti in precedenza. In entrambi i casi, comunque, vengo-no adottate specifiche soluzioni hardware per aumentare le performance dei sistemi virtualizzati. Un esempio pu`o essere Intel Virtualization Technolo-gy (Intel VT10) che implementa il supporto hardware alla virtualizzazione accelerando il passaggio di controllo dal sistema operativo ospitante e quello ospitato, permettendo l’assegnamento di alcuni dispositivi di input o output unicamente al sistema ospitato e ottimizzando l’uso delle reti.

(21)

Capitolo 2

Evoluzione storica del Cloud

Computing

In questo capitolo si intende creare una panoramica sul Cloud Computing in termini storici. Si vedr`a quindi come il Cloud `e nato, qual `e lo stato dell’arte e quali sono le prospettive per il futuro.

2.1

Nascita del Cloud Computing

Contrariamente a quanto si possa pensare, il Cloud Computing ha origini lontane rispetto ai giorni nostri. Gi`a dall’avvento del computer si iniziava a parlare di questa tecnologia, seppur non chiamandola con il nome che co-nosciamo oggi. Nel 1961 John McCarthy tiene un discorso per celebrare il centenario del MIT ed `e qui che si inizia a parlare di tecnologia Cloud. Nel suo discorso, McCarthy propone pubblicamente l’idea che il metodo Time Sharing1 dei computer pu`o portare a un futuro dove la potenza dei

calco-latori e specifiche applicazioni possono essere vendute secondo il modello economico dell’utilit`a.

1Il Time Sharing `e un approccio concorrente all’uso delle risorse da parte del sistema

operativo. L’attivit`a della CPU viene suddivisa in quanti (o intervalli temporali) che vengono poi assegnati sequenzialmente ai processi di uno o pi`u utenti. Non `e necessario che il sistema sia multiutente, ma se lo `e allora pi`u utenti possono interagire con il sistema centralizzato ciascuno con un proprio terminale in time-sharing. La CPU viene utilizzata per rispondere alle richieste degli utenti, passando rapidamente dall’uno all’altro (contex switch), dando a ciascuno di loro l’impressione di avere la CPU tutta per s`e.

(22)

12 CAPITOLO 2. EVOLUZIONE STORICA

Nel 1966 il professor Douglas Parkhill pubblica il libro “Challenge of the Computer Utility” nel quale mette il mondo IT2 sullo stesso piano (a livello

di consumo e fruizione) di servizi come acqua, gas o simili.

Si dovr`a per`o aspettare ancora qualche anno per poter parlare veramente di Cloud Computing perch`e all’epoca il mondo non era ancora pronto a una visione di questo tipo.

Negli anni settanta vengono create le prime network private, ma il tutto viene utilizzato soltanto dalle grandi aziende in quanto i costi per queste tecnologie sono ancora elevatissimi.

Negli anni ottanta ARPAnet3, grazie all’avvento dei personal computer,

rie-sce a diffondere la rete anche al di fuori degli ambiti istituzionali e accademici ed `e gi`a qui che si iniziano a sviluppare le prime architetture completamente distribuite. Vengono cos`ı coinvolti nella rete anche utenti comuni. `E infatti negli anni 1982 e 1983 che nasce Internet.

Nel 1989 viene ufficialmente rilasciato al CERN il nostro odierno WWW4, i computer non sono solo calcolatori fini a se stessi, ma diventano una rete collegata senza connessioni fisiche. Nel corso degli anni novanta si creano domini e si sviluppa la rete, nascono forum, servizi email e bancari. Nel 1997 Ramnath K. Chellappa introduce per la prima volta il termine Cloud Computing e lo definisce come “un paradigma informatico dove i confini dell’elaborazione dei dati vengono determinati pi`u da ragioni economiche che da limiti tecnici” [19]. Nel 1999 Salesforce `e la prima azienda a forni-re servizi di Cloud Computing alle impforni-rese e conia il termine Softwaforni-re as a Service. Un anno prima, nel 1998, nasce VMware, pilastro del Cloud e della virtualizzazione, che offre anche servizi di Infrastructure as a Service. Nel 2006 Google lancia servizi che funzionano direttamente dal browser, che sostituiranno programmi di uso corrente (ad esempio Gmail). Sempre Amazon compie un altro passo in avanti lanciando Web Services e crean-do il termine Platform as a Service, cos`ı si inizia a usare il Cloud come piattaforma di utilizzo per sistemi operativi.

2Information Technology

3Advanced Research Projects Agency NETwork - fu una rete di computer

studia-ta e realizzastudia-ta dal DARPA, agenzia del Dipartimento della Difesa degli Sstudia-tati Uniti responsabile dello sviluppo di nuove tecnologie ad uso militare

(23)

CAPITOLO 2. EVOLUZIONE STORICA 13

2.2

Stato dell’arte del Cloud Computing

A partire dal 2010 il Cloud Computing ha avuto un boom incredibile e si sta affermando sempre di pi`u nelle nostre realt`a quotidiane. Il sondaggio di Rightscale [1] sullo stato del Cloud Computing del 2014, effettuato interro-gando 1.068 professionisti tecnici sulla loro adozione di questa tecnologia, ha riscontrato che il 6% delle aziende ancora non ha fatto programmi sul-l’utilizzo o meno del Cloud, il 18% sta studiando le varie opzioni in vista di un futuro utilizzo, il 29% ha adottato questa tecnologia in azienda da poco ed `e ancora in fase di apprendimento lavorando sui primi progetti, il 25% ha gi`a qualche progetto e qualche applicazione sul Cloud e sta lavorando per espandere il proprio utilizzo di questa tecnologia, il 22% lavora gi`a in-tensamente sul Cloud e ha come obiettivo quello di perfezionarsi e ridurre al minimo i costi. Ci`o significa che il 94% degli intervistati ha adottato il Cloud per la propria azienda. `E interessante notare, per`o, che la maggiore concentrazione sta tra chi ha appena iniziato e chi ha fatto qualche proget-to. Per quanto riguarda la strategia adottata, il 74% delle aziende utilizza Cloud ibrido, il 13% solo Cloud pubblico e il 9% solo Cloud privato. Lo stesso sondaggio effettuato a gennaio 2015 mostra come gi`a in cos`ı poco tempo le cose stiano cambiando. Questo sondaggio `e stato effettuato su 930 professionisti tecnici ed `e emerso che il 93% di essi sta eseguendo ap-plicazioni o sperimentando su Cloud. Il 10% degli intervistati ancora non pianifica il Cloud per la sua azienda, il 15% `e ancora in fase di studio, il 23% `e alle prese con i primi progetti, il 26% ha gi`a applicazioni sul Cloud e il restante 26% lo usa intensamente da tempo. L’82% delle aziende ha adottato una strategia di Cloud ibrido, contro il 74% dell’anno precedente. Il 10% utilizza solo Cloud pubblico, il 5% solo Cloud privato e il 3% non ha fatto progetti. Questi numeri dimostrano come il Cloud stia diventando una realt`a quotidiana nelle vite delle aziende e come le stesse stiano sempre pi`u investendo in questa nuova tecnologia.

2.3

Il futuro del Cloud Computing

In questa sezione si parler`a di cosa ci si aspetta dal Cloud Computing nei prossimi anni e quali sono le opinioni dei vari critici.

Secondo CloudTweaks [2] entro il 2020 si avranno tra i 40 e gli 80 miliardi di dispositivi connessi nel mondo e i tipi di prodotti e servizi che ci aspettiamo

(24)

14 CAPITOLO 2. EVOLUZIONE STORICA

di vedere nel prossimo decennio saranno come fantascienza per le vecchie generazioni. Per le nuove generazioni, nate in un’adozione naturale e pi`u trasparente dei servizi di Cloud Computing, che gi`a utilizzano tecnologie di elaborazione dei dati pi`u veloci e con pi`u alte densit`a, tutto questo non sar`a niente di speciale. Per il momento Internet `e una relazione tra umano e umano (human-to-human), ma le cose stanno cambiando perch`e il futuro sar`a una comunicazione tra tutto e tutto (everything-to-everything). Con questo nuovo concetto si definiscono le persone come cose, alla pari con tutto il resto. Dal quarto sondaggio annuale fatto nel 2014 sul futuro del Cloud Computing [3] `e emerso che attualmente il 66% dei dati `e sul Cloud. Si prevede che nei prossimi due anni questo dato salir`a al 73%. Si ipotizza che il traffico personale di dati sul Cloud passer`a da 1.7 exabyte5, registrati nel 2012, a 20 exabyte nel 2017 (5 exabyte corrispondono a tutte le parole che l’essere umano pu`o pronunciare). Entro il 2017 quasi i due terzi di tutto il carico di lavoro sar`a processato nei Cloud Data Centers. Attualmente l’uso del Cloud di tipo ibrido `e pari al 42% e si prevede che crescer`a fino al 55% nei prossimi due anni. Sia tra i fornitori che tra gli utenti aziendali, l’Hybrid Cloud `e il pi`u comune e si presume che sia destinato a crescere sempre di pi`u nei prossimi cinque anni. Dal 2014 al 2019 l’adozione dell’Hybrid Cloud aumenter`a del 44% per gli utenti e del 23% per i fornitori.

Secondo Matthew Finnie, CTO6 di Interoute [4], gi`a dal 2015 non si parler`a pi`u di “cos’`e il Cloud e se `e meglio quello pubblico o privato”, ma si entrer`a nel merito di quello che `e il suo uso. Si cominceranno a valutare le diverse architetture possibili e la loro sostenibilit`a in relazione al tipo di carico e servizi che le aziende puntano a far evolvere verso il Cloud. Interoute `e con-vinta che il Cloud sia ancora in una fase embrionale della propria evoluzione e quindi vuole cercare di focalizzarsi sulla prossima fase, che sicuramente avr`a un impatto maggiore. In questa nuova fase la richiesta di avere servizi on demand sul Cloud pubblico con la sicurezza, la facilit`a e l’immediatezza del Cloud privato si avr`a con l’integrazione e l’automazione della rete con tre elementi fondamentali: CPU, RAM e storage. Si avr`a un’unica infra-struttura di rete con controllo diretto. Computing si legger`a Processing e per Network si intender`a Comunicazione tra Processi. Questo significher`a poter automatizzare le reti, con il Computing e il core routing che agiranno sempre pi`u come policy (regole) e dati (contenuti). Si operer`a e svilupper`a

51 exabyte corrisponde a 1018 byte

(25)

CAPITOLO 2. EVOLUZIONE STORICA 15

direttamente sulle reti globali e non pi`u come test in laboratorio. Il secondo punto sar`a quello di avere potenza di calcolo distribuita, sulla scia di In-ternet degli esordi, pi`u pervasiva e flessibile rispetto al modello di accesso semplificato di “un grande centro di calcolo” da “qualche parte” nel Cloud. Terzo punto `e quello di avere come norma la comunicazione M2M7. Per far

s`ı che questa si diffonda e diventi sempre pi`u smart `e necessario avere una piattaforma globale, ma anche locale, con una separazione sicura per svilup-pare al meglio la sua applicabilit`a. Come per la distribuzione di Internet, il Cloud diverr`a la soluzione pi`u veloce e agile per la comunicazione M2M. Altre ipotesi sul futuro del Cloud Computing provengono da HostingTalk [5], secondo il quale ci saranno cinque tecnologie che miglioreranno il Cloud nel futuro. Il loro obiettivo `e stato quello di indagare sulle opportunit`a offerte da alcuni prodotti che in futuro potrebbero cambiare ulteriormen-te il Cloud Computing, migliorandolo sotto molulteriormen-teplici aspetti. Il Cloud Computing offre gi`a un’incredibile flessibili`a nella gestione delle risorse, ma si iniziano a diffondere tecnologie e piattaforme che lo renderanno ancora pi`u completo e futuribile. La prima tecnologia da sviluppare `e quella che permetter`a agli utenti di impostare un ambiente Cloud automatizzato, ca-pace di effettuare il provisioning e il de-provisioning delle risorse in maniera completamente automatica, attraverso opportuni controlli sulle applicazio-ni, sugli utenti e sui carichi di lavoro. La seconda tecnologia sar`a quella di avere un Cloud agnostico, cio`e un Cloud per il quale non sar`a necessario sapere se si tratta di tipo pubblico, privato o ibrido, ossia non curandoci di conoscere la reale natura delle risorse che stiamo amministrando. Sistemi di controllo interconnessi e veicolati tramite API permetteranno di lavorare con qualsiasi Cloud Computing concentrandosi solo sulla modellazione. La terza tecnologia prevede di avere un hardware destinato ad apparire virtua-lizzato, per consentire un controllo pi`u preciso e centralizzato delle risorse del Cloud Computing indipendentemente dall’infrastruttura su cui esse si basano (tecnologie Software-Defined). Quarta tecnologia: con il Cloud si avranno pi`u risorse, migliore banda e molti pi`u utenti e gruppi che si con-netteranno all’infrastruttura. Serve un’ottimizzazione della WAN, che non potr`a per`o limitarsi a ottimizzare il traffico, ma bisogner`a creare metodo-logie di distribuzione sempre pi`u precise e puntuali. Il quinto punto sar`a quello di avere un sistema operativo con cui gestire un intero Data Center. Sar`a un’opportunit`a futura offerta agli amministratori, consentendo alle

(26)

16 CAPITOLO 2. EVOLUZIONE STORICA

sorse di un Data Center di evolversi in senso virtuale.

Le tecnologie Software-Defined raggruppano livelli virtuali di controllo delle risorse, indipendenti dall’hypervisor di competenza e dal luogo dove le risor-se sono disponibili. Alcune tecnologie astraggono completamente il livello del networking per garantire una gestione facilitata delle risorse di rete di un intero data center. Altre tecnologie astraggono il livello storage per ga-rantire l’opportunit`a di allocare capacit`a senza preoccuparsi del repository storage hardware appropriato.

Le tecnologie e le metodologie di Cloud ibrido non saranno soltanto un in-sieme delle caratteristiche di Cloud pubblico e privato, ma una variet`a di servizi esterni capaci di integrarsi perfettamente con qualsiasi piattaforma Cloud per permettere un controllo delle risorse, delle utenze, dei workload con un unico accesso e senza ulteriori preoccupazioni tecnologiche.

Tecnologie di Cloud automation: le risorse possono essere distribuite fra i differenti data center, differenti regioni e paesi senza difficol`a, con un uso intelligente delle risorse dovuto a un migliore bilanciamento e a una distri-buzione automatizzata dei carichi di lavoro e delle capacit`a computazionali. Il Cloud agnostico permetter`a alle organizzazioni di non focalizzarsi sulle infrastrutture, ma sui contenuti da distribuire in modo ottimizzato a un ambiente di utenti disperso tra una miriade di dispositivi.

(27)

Capitolo 3

Sviluppo economico del Cloud

Computing

In questo capitolo si intende evidenziare qual `e la crescita economica del Cloud Computing e come `e cambiata l’opinione delle aziende in merito alla sua adozione. Si vedranno quali sono i principali vantaggi che le aziende possono trarre dall’adozione di tecnologie Cloud e dalle varie indagini si estrapoleranno i tipi di Cloud pi`u utilizzati dalle aziende, quali sono le motivazioni per cui ancora alcune aziende non hanno preso in considerazione l’adozione di questa tecnologia e se hanno intenzione di adottarla in un futuro prossimo.

3.1

Vantaggi del Cloud Computing per le

aziende

Il Cloud Computing permette alle aziende di ridurre l’incidenza del costo di IT e di controllare meglio le spese associate ad attivit`a quali l’IT pa-gando solo per la potenza di calcolo o di archiviazione dei dati che viene effettivamente utilizzata. Al momento la maggior parte del budget dell’IT `

e destinato al mantenimento di servizi e infrastrutture esistenti, mentre con il Cloud Computing ci si potr`a dedicare ad attivit`a di ricerca e sviluppo e quei progetti che prima sembravano impossibili a causa del loro costo adesso possono essere presi in considerazione. Il Cloud Computing quindi riduce i costi di impresa in quanto semplifica significativamente il dimensionamento

(28)

18 CAPITOLO 3. SVILUPPO ECONOMICO

iniziale dei sistemi e delle applicazioni IT e permette di sostenere gradual-mente lo sforzo di investimento richiesto per gli opportuni adeguamenti tecnologici e l’erogazione di nuovi servizi. Questa tecnologia consente alle imprese di ridurre il numero dei server, standardizza, raggruppa le risorse e automatizza molte delle attivit`a di manutenzione attualmente eseguite ma-nualmente. Le architetture Cloud abbattono contemporaneamente le spese di manutenzione delle apparecchiature, quelle per le licenze e l’aggiorna-mento dei software, per l’immagazzinal’aggiorna-mento dei dati, per la sicurezza e per l’energia. Il Cloud Computing consente ai clienti di espandere o contrarre la potenza informatica in funzione delle reali esigenze, permette di gestire i picchi di potenza di calcolo con aumento di capacit`a ed evita investimenti destinati a diventare obsoleti dopo pochi anni. Si favorisce pertanto un uso flessibile, a self-service, e forme di pagamento a consumo, trasformando l’IT in una vera e propria utility. Le imprese non hanno quindi bisogno di pa-gare per servizi che non sono utilizzati, a differenza dei sistemi tradizionali in cui le risorse elaborative sono sovradimensionate ex ante per far fronte al caso peggiore in cui la domanda di energia computazionale raggiunge i picchi pi`u elevati. Mentre la virtualizzazione ha permesso alle imprese di aumentare l’utilizzo dei server, il Cloud Computing fa un passo ulteriore per assumere la gestione di utilizzo dei server, riducendo lo spreco nella potenza di calcolo.

Secondo Cloud Industry Forum [6], le soluzioni Cloud Computing sono mol-to pi`u economiche rispetto alle implementazioni informatiche tradizionali. Semplici modifiche alle pratiche di lavoro, tali da permettere di lavorare da casa o comunque da qualsiasi luogo, possono migliorare notevolmente la produttivit`a delle imprese e delle amministrazioni pubbliche. Il Cloud Computing facilita l’accesso ai dati e ai programmi in remoto, sempre e da qualunque computer connesso a Internet, inoltre permette di installare pi`u velocemente nuove funzionalit`a e di integrarle con quelle gi`a esistenti ed erogate via Cloud; questo permette di ridurre i tempi scanditi dalla pro-grammazione, dal decision-making e dal deployment. Il Cloud Computing permette di avere un ambiente informatico ad elevata resilienza in quanto si ha il vantaggio di rimuovere i singoli punti di guasto. Il fallimento di un nodo del sistema non ha nessun impatto sulla disponibilit`a delle informa-zioni e non comporta tempi di inattivit`a percepibili. L’obiettivo `e quello di garantire che i dati critici, i sistemi, i processi, le risorse umane e le infra-strutture siano in funzione prima, durante e dopo un evento di interruzione

(29)

CAPITOLO 3. SVILUPPO ECONOMICO 19

dell’attivit`a. Questa resilienza si basa su due principali iniziative operative: disaster recovery per sistemi di IT e business continuity per i processi azien-dali, le risorse umane e le infrastrutture. Nelle soluzioni PaaS, ad esempio, l’applicazione automatica di patch e aggiornamenti ai sistemi Cloud mi-gliora significativamente la sicurezza di tutti i dati e delle applicazioni, in quanto la maggior parte delle vulnerabilit`a agisce su sistemi non aggiornati. I vantaggi che il Cloud Computing offre alle imprese possono essere sintetiz-zati in una riduzione di costo di produzione. La valorizzazione dei vantaggi economici considera infatti tanto gli aspetti monetari quanto quelli non mo-netari. Oltre ai costi legati agli investimenti, all’operativit`a delle infrastrut-ture e all’utilizzo dei servizi, `e necessario includere un costo che non emerge da transazioni di mercato. Questo costo `e, ad esempio, il costo opportunit`a del tempo necessario per svolgere attivit`a quali aggiornamento del software, apprendimento e implementazione di nuove normative, oppure per attivare il processo decisionale volto all’acquisto, l’installazione e l’avvio di nuove infrastrutture per rispondere alle mutevoli esigenze del mercato. Si possono analizzare questi vantaggi economici utilizzando un semplice modello per un’impresa con costo variabile e prezzo di vendita costante che permette di tracciare le semirette di costo (i costi totali sono dati dalla somma verticale di costi fissi e variabili) e di ricavo in funzione della quantit`a prodotta da un’impresa. Si individua cos`ı il punto di break-even, ovvero le quantit`a pro-dotte che permettono di avere il pareggio di bilancio (punto q1 in Figura 3.1). L’area rossa del grafico in Figura 3.1 rappresenta l’area in cui l’a-zienda subisce perdite, al di sopra del punto di break-even l’al’a-zienda ottiene profitti crescenti al crescere delle quantit`a prodotte. Il Cloud Computing permette di risparmiare sui costi fissi derivanti dall’investimento in IT da sostenere nella fase iniziale del business (quando generalmente si producono meno quantit`a), trasformandoli in un costo operativo per l’impresa. Il ser-vizio acquistato diventa un costo variabile che pu`o aumentare e diminuire in funzione della domanda e quindi della produzione. Riducendosi il costo fisso dell’IT, e quindi i costi complessivi, e aumentando conseguentemente il costo variabile dell’IT, e quindi i costi variabili complessivi (aumento do-vuto alla logica pay-per-use), si determina una riduzione del costo totale. Ipotizzando che l’aumento dei costi variabili IT non incida sui benefici che si traggono dalla riduzione dei costi fissi IT, il Cloud Computing permette alle imprese di raggiungere prima il break-even point, riducendo cos`ı l’area rossa delle perdite. In Figura 3.2 si nota come il punto di break-even passa

(30)

20 CAPITOLO 3. SVILUPPO ECONOMICO

da q1 a q2.

Figura 3.1: Costi di impresa e break-even point

Il Cloud Computing, per`o, consente anche la riduzione dei costi variabili. Innanzitutto, data center di grandi dimensioni consentono di diminuire le spese sostenute per i server. Inoltre, oltre che sulla parte infrastrutturale, il Cloud Computing incide sul costo del lavoro consentendo a un solo ammi-nistratore di sistema la gestione di un numero di server superiore rispetto al numero di server gestibile in assenza di Cloud. Il vantaggio consiste anche nella variabilit`a nell’utilizzo delle risorse software e alla possibilit`a di utiliz-zare in ogni momento solo la quota di risorse necessarie. La possibilit`a di usare applicazioni multi-tenant `e un’ulteriore fonte di risparmio in quanto consente a diversi utilizzatori di fruire di un’unica istanza dell’applicazione simultaneamente, spalmando quindi i costi fissi dell’applicazione. La mag-giore efficienza dei fornitori di Cloud Computing permette una riduzione del prezzo del servizio offerto e quindi una riduzione del costo variabile per le imprese. Si riduce cos`ı l’inclinazione del costo variabile IT e quindi dei costi variabili complessivi riducendo perci`o i costi totali. Si arriva cos`ı ancora prima al punto di break-even come mostrato in Figura 3.3 (passaggio da q2 a q3).

(31)

CAPITOLO 3. SVILUPPO ECONOMICO 21

Figura 3.2: Effetto sul break-even point della riduzione del costo fisso dell’IT

Figura 3.3: Effetto sul break-even point della riduzione del costo variabile dell’IT

(32)

22 CAPITOLO 3. SVILUPPO ECONOMICO

Secondo il McKinsey Global Institute [7], il Cloud Computing far`a parte della rivoluzione tecnologica del mondo. Questa tecnologia si rivela strategi-ca soprattutto per le piccole e medie imprese. I principali vantaggi sono da ricercare sia nella riduzione dei costi nella gestione delle tecnologie informa-tiche attraverso software (SaaS), piattaforme (PaaS) e infrastrutture (IaaS), che nell’archiviazione e gestione di dati accessibili in qualunque momento e da qualsiasi posizione, anche in mobilit`a. Secondo il report del McKinsey Global Institute, il Cloud Computing `e in grado, da qui a dieci anni, di far girare un’economia da 1700-6200 miliardi di dollari l’anno e sempre pi`u imprese faranno riferimento a servizi Cloud.

Webmasterpoint [8], inoltre, dichiara che il 2015 sia stato individuato come l’anno della consacrazione del Cloud Computing anche in Italia. Il Cloud Computing appare sempre pi`u come una tecnologia fondamentale ed `e per questo che si prevede che almeno fino al 2016 la spesa per la ricerca sulle applicazioni Cloud sar`a in testa nelle classifiche di spesa del settore IT, con previsioni che dicono che la met`a delle aziende italiane, entro il 2017, avr`a implementato soluzioni Cloud. Secondo l’indagine di IDC Italia, il 40% del-le aziende italiane utilizza servizi Cloud e il 39% ha aumentato il fatturato con la creazione di prodotti e servizi innovativi legati al Cloud.

Il Sole 24 Ore [9] mette in luce anche un altro aspetto dei vantaggi che possono portare le tecnologie Cloud per le aziende. Il Cloud non serve sol-tanto a contenere la spesa in hardware e in licenze software, ma anche ad allineare l’IT con le esigenze d’impresa. Il problema delle imprese di ogni dimensione `e oggi il minor tempo a disposizione per portare a compimento i progetti. Il mercato richiede dinamismo, agilit`a e prontezza nel cogliere le opportunit`a. Non c’`e pi`u il tempo per pianificare e predisporre le risorse ideali, per cui vanno bene supporti pi`u standardizzati, purch`e affidabili e di-sponibili nel momento giusto. Il Cloud Computing permette di avere risorse informatiche pi`u flessibili e veloci. Con il Cloud pubblico `e pi`u facile gestire nuovi progetti perch`e non servono grandi risorse finanziarie per comprare sistemi IT o pagare consulenti. Non si perde tempo nell’installazione, nella gestione del software e nell’aggiornamento dei sistemi operativi. Le appli-cazioni Cloud pubbliche possono avere un livello di personalizzazione basso, ma questo pu`o anche essere visto come un vantaggio: le personalizzazioni del software sono molto costose e vincolanti per ogni evoluzione futura e per questo `e meglio utilizzare soluzioni standard quando le priorit`a sono velocit`a e dinamismo. Le applicazioni standard sono, in genere, pi`u facili

(33)

CAPITOLO 3. SVILUPPO ECONOMICO 23

da usare, richiedono meno formazione e rendono possibile l’apprendimento attraverso i supporti online gi`a disponibili. Imprese agili e mobili trovano nel Cloud Computing il loro supporto ideale. Applicazioni e archivi dati ac-cessibili in Cloud eliminano le asimmetrie di accesso ai sistemi informativi tra persone che operano in azienda e in esterno, tra sede centrale e filiali, tra il professionista che lavora in sede e quello che lavora presso i clienti. Poich`e l’accesso ai dati e alle applicazioni `e possibile in qualunque parte del mondo, risulta pi`u semplice distaccare persone presso un cliente, aprire un ufficio all’estero per un progetto, rimediare a un guasto della rete locale, all’inagibilit`a dell’ufficio, o alla necessit`a di un dipendente di lavorare da casa. Il Cloud abilita modelli d’impresa pi`u flessibili, consente di ampliare l’area di reclutamento di professionisti ed esperti, facilita la creazione di alleanze con altre aziende su specifici progetti o iniziative commerciali. Il Cloud Computing si sposa molto bene con l’utilizzo sempre pi`u esteso dei dispositivi mobili. Le applicazioni in Cloud sono pensate per poter opera-re con clienti opera-remoti su opera-reti insicuopera-re, quindi minimizzando gli effetti della latenza e utilizzando modelli di sicurezza pi`u efficaci. Questo permette al-l’azienda di semplificare le dotazioni hardware e permette ai dipendenti e ai collaboratori di usare il loro dispositivo personale, che sicuramente sanno utilizzare e trattare con la massima cura.

Sempre secondo Il Sole 24 Ore, il Cloud Computing consente alle aziende di ottenere una serie di benefici sia in termini di gestione contabile, che fiscale e finanziaria. Questo risulta particolarmente vero per le PMI1 che oggi

han-no la possibilit`a di usufruire di soluzioni software che fino a poco tempo fa erano disponibili solo per le grandi aziende, in quanto particolarmente one-rose. Dal punto di vista fiscale, i benefici economici dell’adozione di servizi Cloud sono sicuramente maggiori rispetto all’acquisto di prodotti hardware e software. I costi sostenuti nell’anno fiscale sono deducibili interamente dal reddito dell’azienda, a differenza dei costi sostenuti per l’acquisto di com-ponenti hardware e software che, secondo le normative fiscali vigenti, sono deducibili solo in diversi anni. Un ulteriore beneficio del Cloud Computing `

e quello di non dover accedere a nuovi finanziamenti per poter effettuare investimenti in infrastrutture hardware e software, in quanto i canoni corri-sposti al fornitore di servizi Cloud sono gi`a per loro natura rateizzati. Altro vantaggio per le aziende che adottano servizi Cloud `e quello di non dover gestire in termini economici il Costo Totale di Possesso (TCO) di una certa

(34)

24 CAPITOLO 3. SVILUPPO ECONOMICO

tecnologia legato, ad esempio, al non dover fare il backup dei dati, al non dover procedere in autonomia agli aggiornamenti di prodotto o di sistema operativo, cos`ı come al non dover acquistare l’hardware necessario a sup-portare le nuove funzionalit`a del software in uso. Per quanto riguarda la gestione contabile, l’azienda potr`a ottenere consistenti benefici in sede di stesura del bilancio in quanto, non acquistando direttamente componenti hardware e/o software, eviter`a di gestire il carico dei beni ammortizzabili e, come conseguenza diretta, non avr`a l’onere del calcolo degli ammorta-menti relativi. Sotto il profilo contabile, l’unico adempimento previsto sar`a l’obbligo di registrare periodicamente in contabilit`a la fattura relativa al servizio ricevuto.

Il motivo principale per il quale ancora poche aziende in Italia non adottano soluzioni Cloud `e la sicurezza. Nell’immaginario collettivo c’`e la convinzio-ne che il Cloud non sia sicuro. Per le aziende non sapere esattamente dove si trovano i loro dati `e motivo di rifiuto per questa nuova tecnologia, ma negli ultimi tempi le cose stanno cambiando. L’adozione di Cloud ibrido, ad esempio, pu`o risolvere il problema della sicurezza perch`e i dati pi`u riservati e importanti dell’azienda possono comunque essere memorizzati nei dispo-sitivi locali. Inoltre, tutti i pi`u importanti provider di servizi Cloud ora presenti sul mercato garantiscono massima sicurezza in quanto le tecnologie con gli anni sono state sempre pi`u affinate.

3.2

Le principali offerte Cloud

Oggi le offerte dei vari provider di servizi Cloud sono davvero tante. Qui vengono riportate le offerte principali presenti sul mercato con i relativi servizi offerti.

3.2.1

Infrastructure as a Service

IBM - SoftLayer offre servizi che operano in modo integrato ottenendo una soluzione Cloud altamente scalabile e di elevate prestazioni, con cui effettuare il provisioning self-service dei server virtuali e dei server “bare-metal”. L’infrastruttura SoftLayer, disponibile in tutto il mondo, fornisce il controllo e la flessibilit`a necessari per gestire facilmente tutte le applicazioni Cloud, dalle pi`u semplici alle pi`u complesse. Alcuni dei servizi offerti sono:

(35)

CAPITOLO 3. SVILUPPO ECONOMICO 25

• Server virtuali, permettono di configurare CPU, RAM e storage senza compilare moduli complicati e personalizzando la propria soluzione. • Server bare-metal dedicati sono server dedicati con una serie completa

di opzioni di aggiornamento e software su richiesta.

• Software di virtualizzazione, database e sistema operativo per il Cloud. • Ambienti Cloud per le PMI, scalabili per espandersi a seconda delle

esigenze di business.

• Disaster recovery implementa un processo e una strategia completa per gestire al meglio la disponibilit`a delle applicazioni di importanza critica.

• Ambienti ibridi, vengono creati con un’API. Si possono creare sistemi di gestione e sistemi di ticketing.

Per approfondire e iniziare a utilizzare IBM SoftLayer collegarsi al sito http://www.softlayer.com/.

Microsoft Azure `e la piattaforma Cloud di Microsoft. Permette di creare, distribuire e gestire applicazioni come si preferisce. Azure supporta qualsiasi sistema operativo, linguaggio, strumento e framework, da Windows a Linux, da SQL Server a Oracle, da C# a Java. Permette la scalabilit`a rapida verso l’alto o verso il basso per rispondere alla domanda. I servizi offerti sono:

• Servizi Cloud, eliminano la necessit`a di gestire l’infrastruttura server. Permette la distribuzione di applicazioni e API infinitamente scalabili a elevata disponibilit`a.

• Database SQL, servizio di database relazionale che consente di creare, estendere e scalare rapidamente le applicazioni relazionali nel Cloud. • Archiviazione, consente l’archiviazione di dati non relazionali, tra cui

l’archiviazione di unit`a, BLOB, tabelle e codice.

• Macchine virtuali, consente di distribuire un’immagine di Windows Server o Linux nel Cloud. `E possibile selezionare le immagini da un marketplace o usare immagini personalizzate.

(36)

26 CAPITOLO 3. SVILUPPO ECONOMICO

• Siti Web, permette di distribuire applicazioni Web in un’infrastruttura Cloud affidabile e scalabile. `E possibile adeguarsi rapidamente alle esigenze di traffico e applicazioni applicando scalabilit`a orizzontale, verticale o addirittura automatica.

`

E possibile visualizzare tutti i servizi e iniziare a utilizzare questa piattafor-ma sul sito http://azure.microsoft.com/.

3.2.2

Software as a Service

Google mette a disposizione applicazioni SaaS, le Google Apps, che per-mettono agli utenti di creare un ufficio virtuale completamente accessibile dal web. I principali servizi sono:

• Google Mail `e una casella di posta elettronica gratuita che offre 7 GB di spazio per l’archiviazione dei dati ad ogni singolo utente e 30 GB alle aziende. `E possibile accedere alla posta in qualunque momento e luogo, inoltre consente di lavorare anche quando non si `e connessi a Internet. Gmail usa la tecnologia AJAX e utilizza le funzioni avanzate dei browser attraverso JavaScript. `E anche disponibile una versione completamente in HTML che rende pi`u rapida la consultazione, ma non consente di sfruttare i numerosi vantaggi di AJAX. Gmail of-fre anche un filtro per lo spam, cio`e per quei messaggi malevoli, che il servizio Gmail riconosce automaticamente e sposta in un’apposita cartella cancellandoli dopo trenta giorni dalla segnalazione.

• Google Docs `e un servizio di storage online di documenti. • Google Plus `e il nuovo social network sviluppato da Google.

• Youtube `e il servizio online che permette di caricare e vedere video nel web in maniera completamente gratuita.

• Google Drive `e un nuovo servizio proposto da Google e pu`o essere definito l’evoluzione di Google Docs. Questa applicazione `e un servizio di archiviazione di file in rete e mette a disposizione fino a 15 GB di spazio di archiviazione gratuito. Esso `e stato integrato in Google Docs, Google Plus, Gmail ecc.

(37)

CAPITOLO 3. SVILUPPO ECONOMICO 27

• Google Sites `e un modo semplice di creare pagine web senza ricorrere all’uso di HTML o di codifica. `E compatibile con pi`u sistemi operativi come Windows, Mac e Linux. Gli amministratori del sito possono gestire le autorizzazioni di condivisione dei siti a livello aziendale, mentre gli autori possono condividere e revocare l’accesso ai file in qualsiasi momento.

• Google Maps consente di ottenere indicazioni stradali, visualizzare mappe ma anche ricercare attivit`a commerciali come ristoranti, mo-numenti e negozi.

Uno dei maggiori vantaggi delle applicazioni offerte da Google, oltre ai mo-desti costi, `e quello di essere allocate sul server e poter essere lanciate da remoto senza richiedere l’installazione di alcun software sul computer lo-cale. Neanche i dati sono salvati in locale, questo consente di condividere i file con altri utenti che hanno diversi livelli di privilegio (sola lettura, accesso in scrittura ad alcune parti o a tutto il documento) e di utilizza-re i file da qualunque computer da cui ci si collega alla casella di posta elettronica. La conservazione dei dati non in locale pone per`o seri proble-mi di privacy, per le aziende e per i singoli utenti, per quanto riguarda il rischio di attacchi e modifiche da parte di soggetti esterni. Per ridurre que-sti rischi, sono adottati sicuri protocolli di comunicazione e viene sfruttata la cifratura dei dati. `E possibile esplorare i vari servizi accedendo al sito https://www.google.it/intx/it/work/apps/business/.

iCloud `e simile al servizio offerto da Google e mette a disposizione servizi quali:

• iCloud Drive, permette di archiviare in sicurezza su Cloud qualsiasi tipo di file (presentazioni, fogli di calcolo, PDF, immagini e tanto altro). Cos`ı sar`a possibile accedervi e utilizzarli quando si vuole e da qualsiasi dispositivo connesso.

• Foto, consente di condividere foto e video con chi si vuole. La Libreria foto di iCloud archivia gli scatti e i video e li rende subito accessibili dal sito iCloud e disponibili a tutti i dispositivi connessi al servizio. • iTunes permette di acquistare e archiviare musica, sia quella

(38)

28 CAPITOLO 3. SVILUPPO ECONOMICO

• Keychain memorizza le password di siti e applicazioni web e con-sente di spostarsi da un dispositivo all’altro senza dover effettuare nuovamente l’accesso o inserire di nuovo le credenziali.

• Backup `e un servizio che effettua il backup dei dati automaticamente quando il dispositivo `e in carica o collegato a un Wi-Fi.

Il servizio `e disponibile registrandosi al sito https://www.icloud.com/. Salesforce `e una delle aziende che per prima ha investito sul Cloud e oggi si ritrova tra i venti miglior provider di servizi Cloud. I servizi pi`u interessanti offerti sono:

• Gestione delle opportunit`a, permette di ottenere tutti i dettagli delle trattative del team di lavoro (fasi, prodotti, concorrenza, preventivi e molto altro). Fa rimanere sempre in contatto con le persone e le informazioni necessarie a concludere ogni vendita.

• Gestione delle prestazioni di vendita, consente di impostare obiet-tivi basati sulle metriche, offrire note di coaching e feedback conti-nui. In pi`u `e possibile dare risalto a comportamenti vincenti con riconoscimenti e ricompense in tempo reale.

• Automazione del marketing, permette di creare, distribuire e gestire le campagne online. I team di vendita e marketing possono lavorare insieme per creare e qualificare nuovi investimenti, ridurre i cicli di vendita e dimostrare l’affidabilit`a del marketing.

• Mobile, trasforma il dispositivo mobile in un ufficio vendita porta-tile. Si possono registrare chiamate, lavorare con le opportunit`a e controllare i report in qualsiasi momento.

Salesforce permette di gestire la propria azienda in tutto e per tutto con il suo sistema Cloud. I servizi si trovano sul sito http://www.salesforce.com/.

3.2.3

Platform as a Service

Amazon Web Services (AWS) d`a la possibilit`a di richiedere potenza di calcolo e capacit`a di storage cos`ı come altri servizi che permettono di acce-dere ad una serie di infrastrutture pensate per l’ambiente IT. AWS offre la

(39)

CAPITOLO 3. SVILUPPO ECONOMICO 29

flessibilit`a necessaria per scegliere la piattaforma di sviluppo o di program-mazione che meglio si adatta all’azienda. Negli ultimi anni `e diventato anche un’alternativa ai servizi di hosting tradizionali. Si paga solo per quello che si utilizza, senza costi iniziali o impegni a lungo termine. Inoltre con AWS `e possibile utilizzare l’infrastruttura informatica internazionale Amazon.com, la spina dorsale della transazione d’affari del valore di diversi miliardi di dollari, e l’infrastruttura di calcolo distribuito, scalabile, affidabile e sicuro che `e stato continuamente perfezionato. Ecco alcuni servizi web messi a disposizione da Amazon:

• Amazon Route 53 `e il servizio DNS offerto da Amazon e traduce l’URL digitato dagli utenti nel browser nell’indirizzo IP associato a una risor-sa. Si connota per velocit`a, affidabilit`a e scalabilit`a automatica sulla base del volume delle richieste. Questo servizio `e utilizzabile anche per la gestione di una rete privata o di una serie di domini registrati presso altri provider.

• Amazon Virtual Private Cloud `e un modo per espandere l’infrastrut-tura IT interna alla propria azienda, demandando alla nube dei servizi AWS una serie di incombenze computazionali e applicative, permet-tendo cos`ı la loro esecuzione sui server virtuali di Amazon. Tali server saranno resi accessibili solo dalla rete e dagli account aziendali. Al cliente `e lasciato il pieno controllo del network, dalla selezione dei range degli indirizzi IP, alla configurazione di tabelle di routing e ga-teway, alla creazione di sottoreti, all’opportunit`a di creare i security group, per il controllo delle entrate e uscite dai server Cloud.

• Amazon EC2 (Elastic Compute Cloud) `e il servizio Web pensato per fornire capacit`a di calcolo ed elaborazione dati in un ambiente Cloud scalabile. In pratica, il servizio `e rivolto a tutti gli sviluppatori o, in generale a tutti i clienti, che non possono permettersi le infrastrutture necessarie per offrire una propria applicazione e che, in futuro, non avranno l’opportunit`a di gestire improvvisi carichi computazionali. Cos`ı gli sviluppatori devono solo interagire con una semplice interfac-cia (la AWS Management Console), che consente in pochi minuti di ottenere e caricare nuovi Cloud server, permettendo all’utente di au-mentare o diminuire la capacit`a computazionale distribuita a seconda delle necessit`a.

(40)

30 CAPITOLO 3. SVILUPPO ECONOMICO

• Amazon Simple Storage Service (S3) `e il servizio di storage online. I dati sono organizzati in oggetti con dimensione massima di 5 TB cadauno, senza per`o avere nessun tipo di limite sul numero massimo di oggetti memorizzabili. Gli oggetti a loro volta sono organizzati in Bucket. Tutti i dati memorizzati possono essere raggiunti in qualsiasi momento e da qualsiasi punto del globo. Il servizio di storage `e affi-dabile, scalabile e veloce. Ogni operazione sugli oggetti o sui bucket viene registrata in appositi log e si possono ricevere notifiche per gli eventi pi`u importanti.

Si possono trovare tutti questi servizi sul sito http://aws.amazon.com/. Google App Engine fornisce un framework di tecnologie, con le quali creare applicazioni senza preoccuparsi della loro architettura e sobbarcan-dosi l’onere di gestire picchi di traffico e carico. I servizi che si possono sfruttare sono:

• Datastore, `e un database con linguaggio simile a SQL chiamato GQL, che permette di fare delle SELECT solo su una tabella, impedendo quindi di fare delle JOIN. La clausole WHERE permettono operazio-ni di confronto solo su una colonna, costringendo gli sviluppatori a rivedere la struttura delle loro applicazioni.

• Google Accounts, `e una API che permette di avere automaticamente un sistema di Login per le applicazioni, basato sugli account Google. • URL Fetch, le applicazioni possono accedere all’esterno, recuperando il contenuto di URL remoti sfruttando questa API basata sulla stessa infrastruttura che Google usa per altri suoi prodotti.

• Mail, usata per inviare email con o senza allegati, facendo anche distinzione tra email verso “admin” dell’applicazione e non.

• Memcache, `e uno storage in-memory key-value. Permette di mettere in cache strutture, valori, risultati di query complesse e rendere quindi il recupero di questi dati pi`u veloce.

• Image Manipulation, permette di ridimensionare, ruotare ed effettuare operazioni basilari su immagini in formato JPEG e PNG.

(41)

CAPITOLO 3. SVILUPPO ECONOMICO 31

`

E possibile esplorare questi servizi collegandosi al sito https://cloud.google.com/. Pivotal sviluppa la PaaS Cloud Foundry, oggetto di studio di questa tesi e quindi approfondita pi`u avanti. Il sito ufficiale dal quale partire a creare le proprie applicazioni `e http://pivotal.io/platform-as-a-service/pivotal-cloud-foundry.

(42)
(43)

Capitolo 4

Cloud Foundry come esempio

di PaaS

Cloud Foundry `e un open Platform as a Service, originariamente sviluppata e lanciata in aprile 2011 da VMware e poi amministrata dal 2012 da Pivotal Software, che offre una scelta di Cloud per la distribuzione, strutture per lo sviluppo e servizi applicativi per eseguire le applicazioni. Essendo un progetto open source, c’`e una community che contribuisce e la supporta. Rende pi`u facile e veloce la costruzione, il test, la distribuzione e la scala-bilit`a delle applicazioni. Cloud Foundry nasce per fornire una piattaforma per la community di clienti, partner e addirittura ex aziende concorrenti che collaborano, insegnano, condividono e imparano insieme, accelerando il ritmo dell’innovazione e del contributo.

Cloud Foundry supporta l’intero ciclo di vita del software dallo sviluppo iniziale, attraverso tutte le fasi di test, fino all’implementazione e si adatta molto bene alla strategia Continuous Delivery1. Gli utenti hanno accesso a

uno o pi`u spazi, dove ogni spazio, in genere, corrisponde a una fase del ciclo di vita. Diversi utenti possono essere limitati a spazi differenti con differenti permessi di accesso per ognuno. Le applicazioni distribuite su Cloud Foun-dry accedono alle risorse esterne tramite servizi. In un ambiente PaaS, tutte le dipendenze esterne quali database, sistemi di messaggistica o file system sono servizi. Quando un’applicazione viene caricata su Cloud Foundry `e possibile specificare anche i servizi che dovrebbe utilizzare e a seconda della lingua dell’applicazione `e possibile anche una configurazione automatica. I

(44)

34 CAPITOLO 4. CLOUD FOUNDRY COME ESEMPIO DI PAAS

servizi devono essere distribuiti prima sulla piattaforma e poi saranno di-sponibili per qualsiasi applicazione che li utilizza.

Cloud Foundry non `e vincolato ad alcun particolare ambiente Cloud e sup-porta i pi`u diffusi framework per la produttivit`a come Spring for Java, Ruby on Rails, Sinatra for Ruby e Node.js. Per i servizi applicativi critici Cloud Foundry supporta i database MongoDB, MySQL e Redis e i servizi VMware vFabric per il Cloud messaging, la gestione flessibile dei dati, il bilanciamen-to del carico e la gestione delle prestazioni.

Cloud Foundy ha come obiettivo quello di dominare il segmento del Cloud ibrido, che sta diventando critico per il mondo aziendale, e dei servizi ad es-so connessi. Il Cloud deve essere per le imprese sia fattore di alleggerimento, dal punto di vista dei costi, che di accelerazione, cio`e quella che consente di porre in essere progetti pi`u rapidamente e anche di farli terminare veloce-mente. L’approccio “one Cloud, any application” di VMware permette di fornire pi`u rapidamente all’impresa tutta l’innovazione richiesta grazie allo sviluppo e alla distribuzione immediati delle applicazioni, nuove ed esisten-ti. La gestione aperta permette di scegliere come gestire le applicazioni e gli ambienti Cloud in base alle proprie esigenze specifiche.

4.1

I componenti di Cloud Foundry

I componenti di Cloud Foundry includono un motore self-service di ese-cuzione delle applicazioni, un motore di automazione per lo sviluppo e la gestione del ciclo di vita di un’applicazione, una Command Line Interface (CLI), cos`ı come l’integrazione di strumenti di sviluppo per facilitare il pro-cesso di distribuzione. Cloud Foundry ha un’architettura aperta che include un meccanismo di buildpack2 per aggiungere frameworks, un’interfaccia di servizi applicativi e un’interfaccia Cloud provider.

Il Router dirige il traffico in ingresso ai componenti appropriati, che di norma sono il Cloud Controller o un’applicazione in esecuzione su un nodo DEA (Dropler Execution Agent).

Il server OAuth2 (UAA-User Account and Authentication) e il Login Server lavorano insieme per fornire la gestione delle identit`a.

Il Cloud Controller `e responsabile della gestione del ciclo di vita delle

appli-2Un buildpack consiste in una serie di script di rilevamento e configurazione che

(45)

CAPITOLO 4. CLOUD FOUNDRY COME ESEMPIO DI PAAS 35

Figura 4.1: Componenti di Cloud Foundry

cazioni. Quando uno sviluppatore carica un’applicazione, questa viene sot-toposta all’attenzione del Cloud Controller, il quale memorizza i dati grezzi dell’applicazione, crea un record per monitorare i metadata dell’applicazio-ne e dirige un nodo DEA per eseguire l’applicaziodell’applicazio-ne. Il Cloud Controller, inoltre, mantiene record per le organizzazioni, gli spazi, i servizi, le istanze di servizio, i ruoli degli utenti e altro.

HM9000 ha quattro importanti responsabilit`a: monitora le applicazioni per determinarne il loro stato, la versione e il numero di istanze e aggiorna il loro stato attuale. Determina lo stato, la versione e il numero di istanze attesi di un’applicazione; lo stato atteso da un’applicazione si trova scaricando il database del Cloud Controller. Riconcilia lo stato attuale di un’applicazione con quello atteso e, se le istanze in esecuzione sono minori del numero atte-so, chiede al Cloud Controller di avviare il numero appropriato di istanze. Dirige il Cloud Controller affinch`e corregga tutte le discrepanze nello stato delle applicazioni. HM9000 `e fondamentale per garantire che le applicazioni che sono in esecuzione su Cloud Foundry rimangano disponibili. HM9000 riavvia le applicazioni ogni volta che il DEA smette di funzionare

(46)

improv-36 CAPITOLO 4. CLOUD FOUNDRY COME ESEMPIO DI PAAS

visamente o quando un processo di un’applicazione termina con un codice di uscita diverso da zero.

Il Droplet Execution Agent (DEA) gestisce le istanze di applicazioni, segue le istanze di partenza e trasmette i messaggi di stato. Le istanze delle ap-plicazioni vivono nel contenitore Warden, il che assicura l’esecuzione delle istanze in isolamento, l’ottenimento della giusta quota di risorse condivise e la protezione da “vicini rumorosi”.

Il Blob Store contiene il codice dell’applicazione, i buildpacks e i droplets. I Service Brokers di un servizio sono responsabili della fornitura delle istan-ze del servizio che lo sviluppatore fornisce e collega alla sua applicazione. Il Message Bus: Cloud Foundry utilizza NATS per la comunicazione interna tra componenti.

Logging e Statistica: il metrics collector raccoglie informazioni su quanto un’applicazione possiede una risorsa. Gli operatori possono usare questa informazione per monitorare un’istanza di Cloud Foundry. L’applicazione aggregator log (Loggregator) invia i log delle applicazioni agli sviluppatori.

4.2

Usare Cloud Foundry

Vediamo ora cosa realmente offre Cloud Foundry andando ad analizzare la documentazione fornita da Cloud Foundry stesso.

Nella sezione “Using Cloud Foundry” troviamo ci`o che `e necessario sapere per poter distribuire la nostra applicazione su Cloud Foundry. Prima di tutto, l’applicazione che vogliamo sviluppare dovrebbe seguire alcune linee guida per poter essere facilmente distribuita su Cloud Foundry o su qualche altra piattaforma Cloud. Le applicazioni che girano su Cloud Foundry non dovrebbero scrivere file nel file system locale per questi motivi:

• la memoria del file system locale ha vita breve. Quando un’istan-za di un’applicazione si blocca o si ferma, le risorse che le erano state assegnate vengono recuperate dalla piattaforma, incluse tutte le modi-fiche apportate al disco locale dal momento di avvio dell’applicazione. Quando l’istanza riparte, l’applicazione partir`a con una nuova imma-gine del disco. Sebbene l’applicazione possa scrivere file locali mentre sta lavorando, i file spariranno dopo che questa verr`a riavviata. • Le istanze di una stessa applicazione non condividono il file system

(47)

CAPITOLO 4. CLOUD FOUNDRY COME ESEMPIO DI PAAS 37

persistenti anche dopo il riavvio, o si ha bisogno della condivisione dei dati tra tutte le istanze dell’applicazione in esecuzione, si raccomanda di usare un servizio di dati condivisi, come ad esempio un database. Cloud Foundry ha a disposizione servizi per seguire queste linee guida; ad esempio si pu`o utilizzare il servizio di database MongoDB o un database re-lazionale come MySQL. Un’altra opzione `e quella di usare lo storage fornito dal Cloud (ad esempio Dropbox). Cloud Foundry, inoltre, non memorizza o replica dati di sessioni HTTP, per cui sarebbe bene utilizzare servizi di-sponibili su Cloud Foundry per evitare perdita di dati.

Per evitare che un’applicazione non sia disponibile durante i processi di ag-giornamento di Cloud Foundry, `e consigliabile far girare pi`u di una istanza di una stessa applicazione.

Quando si sta sviluppando un’applicazione che ha bisogno di buildpack, Cloud Foundry installa il buildpack nel Droplet Execution Agent (DEA) nel quale l’applicazione sta lavorando.

Cloud Foundry utilizza GitHub [10] come strumento per caricare tutto ci`o che clienti e sviluppatori ritengono necessario per la comunit`a. GitHub `e il pi`u grande host di codice in tutto il mondo e contiene pi`u di venti milioni di repository. Qui sono contenute tutte le repository di Cloud Foundry. Per interagire con Cloud Foundry, e quindi con GitHub, `e necessario installare il tool a linea di comando cf Command Line Interface (CLI). Con il comando cf push dalla Cloud Foundry CLI l’applicazione viene distribuita su Cloud Foundry. Dal momento in cui viene mandato in esecuzione il comando al momento in cui l’applicazione `e disponibile, Cloud Foundry carica e me-morizza i file, esamina e meme-morizza i metadati dell’applicazione, crea una “droplet” (l’unit`a di esecuzione di Cloud Foundry) per l’applicazione, se-leziona un agente di esecuzione droplet (DEA) appropriato per eseguire la droplet, fa partire l’applicazione. Un’applicazione che usa servizi come da-tabase, messaggistica, server email, non `e completamente funzionante finch`e non viene fornito il servizio necessario e, se richiesto, effettuato il bind con l’applicazione. Prima di distribuire un’applicazione `e necessario decidere queste informazioni: il nome dell’applicazione, le istanze (se l’applicazio-ne `e ancora in fase di sviluppo, `e meglio mandare in esecuzione una sola istanza per semplificare la risoluzione dei problemi; per tutte le applicazio-ni gi`a prodotte si raccomandano almeno due istanze), i limiti di memoria, cio`e il massimo carico di memoria che ogni istanza dell’applicazione pu`o consumare, il comando di partenza, cio`e il comando che Cloud Foundry

Figura

Figura 1.1: Semplificazione di Cloud stack
Figura 1.2: Gestione nell’IaaS
Figura 1.3: Gestione nel PaaS
Figura 1.4: Gestione nel SaaS
+7

Riferimenti

Documenti correlati

[r]

I risultati di questa seconda ondata di studi, mirante ad identificare violazioni delle condizioni e delle procedure di decisione tipiche della teoria standard agli studi

– Cluster Compute Quadruple Extra Large Instance: 23 GB di memoria, 33.5 Compute Units EC2 (2 Intel Xeon X5570, architettura quad-core “Nehalem”), 1690 GB di spazio di

All’uopo, sulla imprescindibile premessa per la quale è giocoforza necessario informare sui rischi, la ricerca si propone di chiarire, alla luce delle previsioni del

Therefore, the total ozone column taken into account by the radiative transfer model oscillates around 280 DU for the month of June and 265 DU for the month of July, a value which

By combining the results of fault kinematic analysis, tectonic stress estimations, and published GPS data, we create an integrated overview of active deformation in Afar, which

© 2011 maurizio pizzonia – sicurezza dei sistemi informatici e delle reti.. rischi del

La caratteristica principale di que- sto tipo di nuvola è quella di fornire delle inter- facce per la programmazione delle applicazio- ni (API 1 ) specifiche secondo le quali