SlideShare una empresa de Scribd logo
1 de 18
UNIVERSITÀ CÀ FOSCARI VENEZIA - INFORMATICA
AWS (Amazon Web
Services)
Project work di Social Media Web e Smart Apps
Alessio Emireni 840126
06/06/2014
AWS (Amazon Web Services)
AWS Pagina 2
Indice
1. Glossario........................................................................................................................................................ 3
2. Che cos'è il cloud computing......................................................................................................................... 4
2.1 Il modello IAAS......................................................................................................................................... 6
2.2 Il modello PAAS........................................................................................................................................ 6
3. Che cos'è AWS ............................................................................................................................................... 7
4. L’infrastruttura .............................................................................................................................................. 7
5. Servizi offerti.................................................................................................................................................. 8
5.1 Compute & Networking........................................................................................................................... 9
5.2 Storage & Content Delivery................................................................................................................... 10
5.3 Database................................................................................................................................................ 10
5.4 Sviluppo and Managment...................................................................................................................... 11
5.5 Analytics................................................................................................................................................. 12
5.6 App Services........................................................................................................................................... 12
6. Esperienza diretta........................................................................................................................................ 13
6.1 Creazione di un'istanza EC2................................................................................................................... 13
6.2 Considerazioni sull'esperienza............................................................................................................... 14
7. Quanto costa ............................................................................................................................................... 15
7.1 I costi in generale................................................................................................................................... 15
7.2 Le unità di misura dei costi.................................................................................................................... 15
8. Cosa offre la concorrenza............................................................................................................................ 16
9. Vantaggi....................................................................................................................................................... 16
10. Conclusioni ................................................................................................................................................ 17
11. Riferimenti................................................................................................................................................. 18
AWS Pagina 3
1. Glossario
 CDN Content Delivery Network: rete per la consegna dei contenuti è un termine coniato
negli anni 90’ per descrivere un sistema di computer collegati in rete attraverso Internet,
che collaborano in maniera trasparente, sotto forma di sistema distribuito, per distribuire
contenuti agli utenti finali ed erogare servizi di streaming audio e video.
 Clustering: consiste di computer connessi tra loro che lavorano insieme, in modo tale che
siano visti come un singolo sistema.
 Data model: modello di riferimento utilizzato in un database, come per esempio il modello
relazionale per definire degli oggetti, attributi e delle classi.
 Data warehouse: è un archivio informatico contenente i dati di un’organizzazione,
progettati per consentire di riprodurre facilmente analisi e relazioni utili a fini decisionali-
aziendali.
 DevOps: è una metodologia di sviluppo del software che punta alla comunicazione,
collaborazione e interpretazione tra sviluppatori e operatori dell’IT. Punta ad aiutare
un’organizzazione a sviluppare in modo più rapido ed efficiente prodotti e servizi software.
 Digital divide: è il divario esistente tra chi ha accesso effettivo alle tecnologie
dell’informazione e chi ne è escluso, in modo parziale o totale. I fattori possono essere le
condizioni economiche, livello d’istruzione e appartenenza a diversi gruppi etnici.
 Disaster recovery: in informatica e in particolare nell’ambito della sicurezza informatica, si
intende l’insieme delle misure tecnologiche e logistiche/organizzative atte a ripristinare
sistemi, dati e infrastrutture necessarie all’erogazione di servizi di business per imprese a
fronte di gravi emergenze che ne intacchino la regolare attività.
 Elasticity: riferito ad un datastore, indica la flessibilità dei suoi data model e la capacità nel
clustering.
 Grid computing: infrastruttura di calcolo distribuito, utilizzati per l’elaborazione di grandi
quantità di dati, mediante l’uso di una vasta quantità di risorse. In particolare permettono
la condivisione coordinata di risorse all’interno di un’organizzazione virtuale.
 Hyper-V: è il componente centrale, utilizzato nei sistemi Microsoft, di un sistema basato
sulle macchine virtuali.
 Istanza: nell’ambito della programmazione, si intende nella maniera più generica una
regione di memoria allocata.
 LDAP: è un protocollo standard per l’interrogazione e la modifica dei servizi di directory
come un elenco aziendale di email o una rubrica telefonica o più in generale qualsiasi
raggruppamento di informazioni che può essere espresso come record di dati ed
organizzato in modo gerarchico.
 Multitenancy: si riferisce ad una architettura software in cui una singola istanza del
suddetto gira su un server ed è utilizzato da più di una clinet organization (tenant). E’
l’opposto di multi-istanza.
 Provisioning: processo per preparare ed equipaggiare una rete nel caso in cui
sopraggiungano nuovi servizi fruibili agli utenti.
AWS Pagina 4
 Sistema distribuito: indica una tipologia di sistema informatico costituito da un insieme di
processi interconnessi tra loro in cui le comunicazioni avvengono esclusivamente tramite lo
scambio di opportuni messaggi.
 SSH: è un protocollo di rete che permette di stabilire una sessione remota cifrata tramite
interfaccia a riga di comando con un altro host di una rete informatica.
 *NIX: è l’abbreviazione di unix-like e indica tutti quei sistemi operativi che sono progettati
seguendo direttive dei sistemi Unix descritte nella Single UNIX Specification ma che, per
questioni legali, non possono usare il marchio UNIX.
2. Che cos'è il cloud computing
Prima di addentrarci nello specifico del tema, è bene riassumere in poche battute il contesto nel
quale si colloca AWS.
Con cloud computing si è soliti designare un insieme di tecnologie che permettono, tipicamente
sotto forma di un servizio offerto da un provider al cliente, di memorizzare/archiviare e/o
elaborare dati (tramite CPU o software) grazie all'utilizzo di risorse hardware/software distribuite
e virtualizzate in Rete in un'architettura tipica client-server.
L’architettura informatica del cloud computing prevede uno o più server reali, generalmente in
architettura ad alta affidabilità e fisicamente collocati presso il data center del fornitore del
servizio. Il fornitore del servizio espone delle interfacce per elencare e gestire i propri servizi. Il
cliente amministratore utilizza tali interfacce per selezionare il servizio richiesto (ad esempio un
server virtuale completo oppure solo storage) e per amministrarlo (configurazione, attivazione,
disattivazione). Il cliente finale utilizza il servizio configurato dal cliente amministratore. Le
caratteristiche fisiche dell’implementazione (server reale, localizzazione del data center) sono
irrilevanti.
Il cloud computing mostra le seguenti caratteristiche principali:
 API (Application Programming Interface): accessibilità al software che permette alle
macchine di interagire con i software di cloud nello stesso modo in cui si interagisce con le
normali interfacce desktop, facilitandone l’utilizzo da parte di un utente
 Costo: i costi con il cloud si riducono sensibilmente e nel caso di un cloud pubblico converte
il capital expenditure (CAPEX) in operational expenditure(OPEX), cioè nei suoi costi di
gestione.
 Indipendenza dalla locazione e dal dispositivo utilizzato: permette all’utente di collegarsi da
qualsiasi luogo, semplicemente utilizzando un browser, collegandosi con un qualsiasi
supporto sia che esso sia un Pc desktop o un dispositivo mobile.
 Virtualizzazione: le applicazioni possono essere tranquillamente trasferite da un server ad
un altro.
 Multitenancy: permette la condivisione di risorse e di costi a fronte di centralità per
diminuire i costi, incremento delle prestazioni, utilizzo e efficienza in sistemi che utilizzano
poche risorse.
 Affidabilità: realizzata tramite sistemi ridondanti in modo da evitare il verificarsi di disastri
e permettere la continuazione del proprio lavoro (disaster recovery).
 Scalabilità ed elasticità: prepara la rete ad un possibile aggiornamento senza che l’utente
debba considerare i picchi di lavoro del proprio server.
 Performance: sono monitorate e consistono di interfacce presenti su servizi web messi a
disposizione dal provider.
 Sicurezza: è un fattore molto importante perché coinvolge molti utenti e i loro dati.
AWS Pagina 5
 Manutenzione: è molto semplice perché non bisogna installare nulla sui computer degli
utenti.
La definizione della National Institute of Standards and Technology sul cloud computing identifica
“five essential characteristics”:
1. On-demand self-service
2. Broad network access
3. Resources pooling
4. Rapid elasticity
5. Measured service
Nell'ambito del cloud computing si è arrivati a definire diversi modelli di erogazione dei servizi
attraverso principi di cloud computing. Si possono distinguere tre tipologie fondamentali di servizi
cloud computing:
 SaaS (Software as a Service): consiste nell’utilizzo di programmi installati su un server
remoto, cioè fuori dal computer fisico o dalla LAN locale, spesso attraverso un server web.
Questo acronimo condivide in parte la filosofia di un termine oggi in disuso, ASP
(Application service provider).
 Daas (Data as a Service): con questo servizio vengono messi a disposizione via web
solamente i dati ai quali gli utenti possono accedere tramite qualsiasi applicazione come se
fossero residenti su un disco locale.
 Haas (Hardware as a Service): con questo servizio l’utente invia dati a un computer che
vengono elaborati da computer messi a disposizione e restituiti all’utente finale.
A questi tre principali service possono essere integrati altri:
 PaaS (Platform as a Service): invece che uno o più programmi singoli, viene eseguita in
remoto una piattaforma software che può essere costituita da diversi servizi, programmi,
librerie, etc. (ad esempio Google App Engine).
 IaaS (Infrastructure as a Service): utilizzo di risorse hardware in remoto. Questo tipo di
cloud è quasi un sinonimo di Grid Computing, ma con una caratteristica imprescindibile: le
risorse vengono utilizzate su richiesta o domanda al momento in cui una piattaforma ne ha
bisogno, o vengono assegnate a prescindere dal loro utilizzo effettivo (ad esempio Google
Compute Engine).
I principali modelli di sviluppo del Cloud Computing sono i seguenti:
 Private Cloud: i servizi di cloud computing sono erogati dalle aziende, o da un provider
esterno, unicamente all’azienda stessa e alle sue diverse unità (on-premise). Quello che
conta è la fruizione dei servizi: l’infrastruttura può essere gestita o operata dall’azienda
stessa o da un provider esterno, la proprietà può essere interna o esterna, ma i servizi
devono essere appannaggio di un’unica organizzazione.
 Public Cloud: i servizi di Cloud computing erogati attraverso la rete Internet da un service
provider a diversi clienti. L’infrastruttura, la piattaforma, le applicazioni, sono di proprietà
del service provider, sono gestite dal service provider e sono condivise con più clienti.
 Community Cloud: i servizi di Cloud computing sono erogati da un’azienda o un service
provider ad un gruppo ristretto di organizzazioni che condividono alcune caratteristiche
come, ad esempio, livelli di sicurezza, norme legali, obbiettivi e così via. Anche in questo
caso l’infrastruttura può essere gestita o operata da una delle aziende del gruppo o da un
provider esterno.
 Hybrid Cloud: i servizi sono costruiti su infrastrutture ibride che utilizzano la modalità
privata per alcuni aspetti (conservazione dei dati) e la modalità pubblica per altri
(interfacce di accesso).
AWS Pagina 6
 Distributed Cloud: il cloud computing può essere anche fornito da un set di macchine che
stanno lavorando in differenti luoghi e sono connesse ad un singola rete o hub service.
Sorgono però alcune problematiche legate all’esposizione degli utenti a rischi legati a:
1. Sicurezza informatica e privacy: memorizzare dati personali o sensibili, espone l’utente a
potenziali violazioni della privacy (ci si affida ad un provider estero); per i collegamenti
wireless, il rischio sicurezza aumenta e si è maggiormente esposti a casi di pirateria
informatica; e per ultimo tutti i dati memorizzati nelle memorie esterne sono esposti a
eventuali casi di spionaggio industriale.
2. Problemi internazionali di tipo economico e politico: possono verificarsi quando dati
pubblici sono conservati in archivi privati e ne è difficile l’accesso; alcuni archivi possono
essere memorizzati in alcuni paesi ricchi è ciò comporta un aumento del digital divide tra
paesi ricchi e poveri, e favorire principalmente grandi corporation con organismi
policentrici e menti monocentriche.
3. Continuità del servizio: delegando un servizio esterno per la gestione dei dati e la loro
elaborazione l’utente si trova fortemente limitato nel caso in cui i suddetti servizi non siano
operativi (out of service) e colpirebbe un alto numero di utenti contemporaneamente dato
che questi sono servizi condivisi. Anche se i migliori servizi di cloud computing utilizzano
architetture ridondante utilizzando architetture ridondante e personale pronto e
qualificato non si elimina del tutto il problema.
4. Difficoltà di migrazione dei dati: nel caso di una eventuale migrazione dei dati da un service
provider all’altro non esiste uno standard definito tra i gestori dei servizi, e tutto ciò
risulterebbe estremamente dannoso in caso di fallimento del gestore dei servizi cui ci si è
affidati.
2.1 Il modello IAAS
Con IAAS (Infrastructure as a Service) si intendono tutti quei gestori che, utilizzando sistemi di
virtualizzazione, mettono a disposizione servizi personalizzati per creare stack applicativi (web
server, database ecc.) totalmente personalizzati, a partire dal sistema operativo in su. In poche
parole, il gestore mette a disposizione un ambiente, più o meno amichevole, all'interno del quale è
possibile la creazione assistita di istanze di macchine virtuali, o meglio appliances, come vengono
chiamate da alcuni.
L'approccio IAAS rende possibile un elevato livello di personalizzazione dell'ambiente. Per contro
rimangono totalmente in carico all'utilizzatore gli aggiornamenti dei componenti applicativi (web
server, database ecc.), la configurazione post-installazione del sistema operativo e ogni
installazione di componenti aggiuntivi.
L'utilizzatore di un servizio IAAS è particolarmente adatto a soggetti commerciali di medie
dimensioni che, in caso di necessità, possono contare su di uno staff tecnico per la creazione di
istanze totalmente on demand. Questo consente, di fatto, un notevole risparmio in termini in
risorse hardware, poiché evita l'adozione di dispendiose infrastrutture hardware proprietarie che,
tra l'altro, rimarrebbe, per il 90% del tempo sottoutilizzate. Adottare una soluzione di tipo IAAS
permette di spendere solo per risorse effettivamente utilizzate, consentendo al contempo di
gestire in maniera soddisfacente i picchi di utilizzo.
2.2 Il modello PAAS
Il modello PAAS (Platform as a Service) è caratterizzato da un assunto di partenza quasi opposto
rispetto al modello IAAS. Se, da una parte, l'utente IAAS può essere immaginato come un system
AWS Pagina 7
administrator l'utente di un servizio PAAS è di solito uno sviluppatore: qualcuno che vuole
concentrarsi sul dettaglio implementativo.
L'utente di un servizio PAAS si concentra su una particolare piattaforma di riferimento, a partire
dalla quale costruire i propri servizi. Ciò permette di minimizzare i costi relativi al setup iniziale e
alla distribuzione della propria applicazione.
Utilizzando una piattaforma PAAS si riduce il costo della distribuzione delle applicazioni al minimo
indispensabile. La progettazione e l'erogazione di un'applicazione di alto livello può comportare la
risoluzione di problematiche di amministrazione di sistema molto complesse, il che si traduce nella
necessità di avere a disposizione uno staff di sistemi qualificati che seguano, oltre alla messa in
esercizio del prodotto, anche una manutenzione periodica, un monitoraggio costante
dell'applicativo.
L'utilizzatore di un servizio PAAS vuole risparmiare su questi costi di configurazione e
manutenzione. Il know how necessario alla corretta gestione è attinto in massima parte dalla
gestione dell'infrastruttura PAAS. Esempi di servizi PAAS sono: Windows Azure e Google App
Engine.
3. Che cos'è AWS
AWS non è un servizio, bensì una intera classe di servizi offerti ed amministrativi tramite una
interfaccia comune. L'offerta di AWS comprende sia soluzioni IAAS, sia stack applicativi di tipo
PAAS. L'interfaccia comune tramite la quale i servizi sono offerti è la console web di AWS,
raggiungibile puntando il browser nell'indirizzo: https://console.aws.amazon.com/
Il servizio IAAS per eccellenza di AWS è rappresentato dal servizio AWS EC2. EC2 sta per Elastic
Computing Cloud, dove C2 è un gioco di parole: dall'acronimo ECC si passa ad EC2; così come
dall'acronimo Simple Storage Service si passa a S3.
EC2 è un servizio di AWS che fornisce un'infrastruttura web per disporre di macchine virtuali
completamente on demand. Tramite EC2 è possibile configurare, avviare, spegnere e clonare
istanze di macchine virtuali costruire totalmente secondo le proprie necessità. E' inoltre possibile
avviare immagini già pronte messe a disposizione dalla comunità con le applicazioni più diffuse.
Nei prossimi capitoli sarà approfondito in dettaglio il servizio EC2. Per il momento è meglio
limitarci solo ad una panoramica generale dei servizi offerti ed alle utenze di riferimento.
4. L’infrastruttura
La sezione dell’infrastruttura globale AWS è importante da citare, in quanto spesso viene
dimenticata da chi effettua una catalogazione dei servizi. In realtà, l’infrastruttura AWS è essa
stessa un servizio e non è un caso che per comprendere tutto ciò che verrà dopo,
un benginner debba inizialmente comprendere come si struttura il network di AWS. Entrando più
nel dettaglio, l’infrastruttura di Amazon AWS si suddivide in regions, availability zones ed edge
locations. Imparando a comprenderne le differenze si intuisce, fin da subito, come Amazon AWS
possa aiutare i clienti a supportare applicazioni tolleranti ai failure e agli avventi avversi, senza
interrompere i servizi offerti.
Le Regions sono indicate con i quadrati in azzurro trasparente. In pratica, ogni Region è un insieme
indipendente di risorse AWS, geograficamente isolate l’una dall’altra e sparse in alcuni dei territori
chiave del mondo. Ogni Region nasce con lo specifico intento di garantire le giuste condizioni di
privacy e compliance. Fin da subito si avrà a che fare con esse, in quanto non tutti i servizi sono
sempre disponibili nelle differenti Region in cui AWS è suddivisa. Attualmente, le Region sono 8, a
cui si aggiunge una Region GovCloud che però è riservata alle sole agenzie governative. Per
AWS Pagina 8
scegliere una Region, di solito si individua quella che risulta più vicina agli utenti finali, ossia coloro
che utilizzeranno l’applicazione implementata sui servizi AWS. Quindi, se si ha l’intenzione di
sviluppare un’app per i soli utenti italiani o europei, il consiglio è quello di affidarsi alla Region
posizionata in Irlanda. Inoltre, può accadere che il prezzo di utilizzo di un servizio vari in base alla
Region prescelta.
All’interno di ogni Region, esistono le così dette Availability Zones. Si tratta di zone indipendenti
che non condividono fra loro alcun punto di failure e tutte sono connesse fra loro attraverso una
rete a bassa latenza. Le zone sono pensate come dei veri e propri sistemi di backup, poiché, per
quanto inusuale, i guasti possono sempre avvenire. I clienti, quindi, hanno l’opportunità di
sviluppare la propria app su differenti Zones nella Region prescelta e qualora si verifichi un guasto
in una determinata Zones, l’applicazione rimarrebbe comunque online grazie alla presenza delle
altre zone su cui è implementata. Nella mappa iniziale, le differenti Zones sono mostrate come
quadratini blu appartenenti alle Regions.
Infine, per quanto non ce ne si debba occupare direttamente, è bene introdurre anche la terza
struttura del network, ossia le Edge Locations. Pensate a supporto dei servizi DNS, offerti
attraverso il Web Services Route 53 e della CDN (Content Delivery Network) di CloudFront, le Edge
Locations permettono di distribuire i contenuti e le app agli utenti nazionali con una latenza
ridotta. Nel BelPaese, l’Edge Location nazionale è posizionato a Milano.
Al di sopra dell’infrastruttura, vi sono i servizi di networking. A questi afferiscono tre services
principali: Amazon Route 53, Amazon Virtual Private Cloud (VPC) e Amazon Direct Connect.
5. Servizi offerti
I servizi offerti, com'è possibile vedere anche dalla Console AWS, sono suddivisi in cinque principali
aree di riferimento:
 Compute & Networking: in questo gruppo troviamo tutti i servizi per le risorse di
computazione, quindi server virtuali in cloud (EC2), gestione di un DNS (Route53), risorse
private e server virtuali non pubblici (VPC Virtual Private), connessioni dedicate con AWS
(Direct Connect) e servizi di Desktop in Cloud (WorkSpaces).
 Storage & distribuzione contenuti: qui troviamo tutti i servizi che riguardano la
memorizzazione di dati online anche di grandi dimensioni. Servizio di storage (S3), storage
studiato per i backup (Glacier), collegamento server aziendali con il cloud (Storage
Gateway), distribuzione contenuti statici e multimediali (CloudFront).
 Database: tramite questi servizi possiamo gestire dei database senza dover installare i
software specifici sui nostri server virtuali e usufruire della scalabilità automatica di
Amazon. Possiamo scegliere un database NoSQL fortemente scalabile (DynamoDB), un
database relazione come MySQL e Microsoft SQL Server (RDS), sistema di caching RAM
(ElastiCache) e un sistema di data warehouse ad altissima velocità (Redshift).
 Sviluppo & Management: in questo gruppo troviamo i servizi che ci permettono di eseguire
applicazioni, controllare alcuni aspetti dei servizi acquistati e gestire le autorizzazioni.
Possiamo creare delle template di configurazione per la creazione di un’ambiente e le
risorse necessarie (CloudFormation), controllare gli indicatori di performance e attivare
delle azioni automatiche (CloudWatch), eseguire delle applicazioni scritte in vari linguaggi
(Elastic Beanstalk), controllare e gestire tutte le autorizzazioni sia di identificazione che di
accesso con (IAM), utilizzare lo sviluppo DevOps con (OpsWorks) e controllare tutte le
chiamate API con (Cloud Trail).
AWS Pagina 9
 Analytics: qui troviamo i servizi che effettuano delle analisi basandosi su delle grosse
strutture dati e sulla suddivisione del carico di lavoro. Il primo servizio rilasciato per questo
gruppo è (Elastic MapReduce) basato su un framework opensource chiamato Hadoops,
ideale per data warehousing e financial analysis. Gli altri servizi che troviamo in questa
sezione sono (Data Pipeline) e l’ultimo arrivato (Kinesis).
 App Services: qui troviamo quei servizi che possiamo utilizzare chiamando direttamente
delle applicazioni specifiche che girano nel cloud di amazon senza dover acquistare server
virtuali o storage online. Servizio di spedizione posta elettronica anche per grandi volumi
(SES), Servizio di notifiche tra diversi supporti e diversi servizi (SNS), motore di ricerca
personalizzato per i propri dati (CloudSearch), distribuzione del carico di lavoro tramite
code messaggi (SQS), conversioni video in differenti formati con (Elastic Transcoder) e
pianificazione lavori con (SWF).
Ciascuna di queste aree novera un gran numero di servizi a disposizione, soprattutto se si
considera il fatto che continuano a nascere servizi nuovi. Nei capitoli che seguono le analizzeremo
in dettaglio.
5.1 Compute & Networking
Per quanto riguarda l'area "Networking" l'offerta novera i seguenti servizi:
 EC2: "Virtual Server in the Cloud", un servizio web che fornisce capacità di elaborazione
dati in the cloud. Amazon EC2 fornisce tramite la virtualizzazione la possibilità di scegliere
tra moltissimi sistemi operativi, servizi e banche dati già pronte per la propria applicazione.
Il servizio EC2 può essere gestito tramite una console web o tramite la gestione delle API
messe a disposizione da Amazon per essere usate in ambienti di programmazione. Amazon
EC2 mette a disposizione anche una serie di sotto servizi per la gestione avanzata della
nostra istanza virtuale, come ad esempio il bilanciamento del traffico, il disaster recovery,
le copie di backup, la funzione di Auto Scaling ed altro ancora.
 Route 53 "Scalable Domain Name System": una volta che avrete iniziato ad usare EC2,
quando dovrete rendere accessibile la vostra istanza ad un pubblico di utenti, vi renderete
conto che l'IP che Amazon vi assegnerà è un IP temporaneo. Sarete allora caldamente
incoraggiati ad usare Route 53, che di fatto è il sistema di naming da usare con EC2.
 VPC Virtual Private: un collegamento sicuro tra l’infrastruttura interna IT esistente di
un’impresa e la nube AWS. Amazon VPC permette alle aziende di connettere la propria
infrastruttura esistente con una serie di risorse Amazon Web Services attraverso la VPN
(virtual private network), così da poter espandere molte funzioni tramite la tecnologia
cloud. Ad esempio potremmo demandare alcune funzioni di elaborazione molto pesanti a
dei server virtuali avviati nel cloud di Amazon, che comunque saranno raggiungibili solo
dalla nostra rete interna e accessibili solamente dagli account della azienda.
 Direct connect: sappiamo benissimo che uno dei punti deboli per il cloud computing in
azienda, specialmente in Italia, è il collegamento e la banda internet, infatti i servizi di
Amazon vengono molto apprezzati quando si tratta di risorse che devo essere pubbliche e
vengono visti problematici quando bisogna implementare un’infrastruttura privata con
collegamenti VPN in cloud. Per le aziende che necessitano di un collegamento sicuro è
possibile tramite questo servizio creare una linea diretta tra l’azienda e il data center di
Amazon più vicino, senza passare per la linea internet.
 WorkSpaces: questo servizio è una valida alternativa alle strutture basate su VDI (Virtual
Desktop Infrastructure), infatti mette a disposizione un completo ambiente desktop in
cloud per i le risorse aziendali, le quali possono scegliere tra differenti tipi di
AWS Pagina 10
configurazione. Amazon WorkSpaces supporta anche Active Directory per l’autenticazione
degli utenti e, ovviamente, l’integrazione con le risorse aziendali mediante la rete Intranet.
Sarà messo a disposizione anche un client per effettuar e un backup sicuro e veloce su S3.
5.2 Storage & Content Delivery
Per quanto riguarda la parte relativa allo "Storage e distribuzione contenuti" l'offerta novera i
seguenti servizi:
 CloudFront: è un servizio web per il “content delivery” cioè la distribuzione di contenuto
statico o in streaming ad alta velocità e con bassa latenza. La configurazione è molto
semplice dato che è collegato automaticamente al servizio di Amazon S3 basta associare la
risorsa che abbiamo memorizzato in un nostro buckets S3 al servizio CloudFront e
automaticamente la risorsa sarà replicata nei “edge point” sparsi nel mondo, i quali
verranno utilizzati per far fronte alle richieste che si troveranno geograficamente più vicine,
quindi abbassando drasticamente la latenza generale.
 S3 (Simple Storage Service): con questo servizio di “storage online” è possibile archiviare e
recuperare grandi quantità di dati, in qualsiasi momento e da qualsiasi punto del web.
Fornisce agli utilizzatori la possibilità di accedere alla stessa infrastruttura di storage dei
dati, altamente scalabile, affidabile e veloce che Amazon utilizza per mantenere in funzione
la propria rete internazionale di siti web. Questo servizio può essere utilizzato anche come
forma sicura di backup, sia per gli altri servizi AWS come ad esempio EC2, ma anche come
backup per server aziendali o postazioni personali.
 Glacier (backup a basso costo): A differenza del servizio già esistente di Amazon
S3 rappresenta una soluzione low-cost adatta alla memorizzazione di informazioni che
riguardano le funzioni di backup. Sicuramente è un servizio ottimo per gli ambienti di rete
aziendale, ma può essere usato anche per uso personale al posto di altri servizi come ad
esempio Dropbox, l’importante è capirne bene le differenze e controllare la tabella dei
costi. Questo servizio è stato studiato per la memorizzazione di informazioni che
normalmente non devono essere riscaricate, se non per problemi di recupero informazioni.
Se usato in questa maniera, i prezzi sono molto vantaggiosi e il costo è molto più basso
rispetto ad S3, il quale è ottimizzato per la pubblicazione dei contenuti e non solo per la
memorizzazione.
 Storage Gateway: questo servizio è dedicato alle grandi aziende, permette di installare
nella propria rete locale un software che si occupa della copia fisica dei dischi collegati ai
server locali nell’ambiente storage di S3. Se si dovesse rompere qualche disco locale,
possiamo ripristinarlo velocemente da Amazon S3 ed riavviare il sistema al suo
funzionamento normale. Se invece dovessimo avere un guasto generale, possiamo avviare
delle istanze su Amazon EC2 e ripristinare gli snapshot su volumi EBS.
5.3 Database
Per quanto riguarda la parte relativa al "Database" l'offerta novera i seguenti servizi:
 DynamoDB: questo servizio permette la gestione completa di un database NoSQL in
un’ambiente di cloud computing. Un binomio eccezionale per la scalabilità e l’eliminazione
di alcuni limiti presenti nei database relazionali. Questo servizio nasce dopo 15 anni di
esperienza con SimpleDB e Dynamo usati nel sito di Amazon.com, i quali avevano
comunque dei limiti sulla dimensione del dataset. Il servizio di DynamoDB non avrà limiti di
dimensione e replicherà automaticamente i dati su tre data center differenti. Il servizio ci
svincola anche dalle problematiche di backup e recovery.
AWS Pagina 11
 RDS: Un servizio web che offre a costi accessibili la gestione di un database MySQL
direttamente nel cloud da integrare con gli altri servizi AWS, oltre alla semplificazione delle
attività di backup, ridimensionamento e patching. Con questa tecnica non saremo costretti
ad installare un software di database server sulle nostre istanze virtuali, non dovremmo
preoccuparci dell’allineamento automatico dei dati, e tanto meno della scalabilità in base
al numero delle richieste effettuate. Tutti questi aspetti verranno gestiti automaticamente
dal servizio di Amazon RDS.
 ElasticCache: con questo servizio possiamo gestire in maniera molto semplice una
funzionalità complessa come un cluster di caching RAM. Questo servizio è completamente
compatibile con il cluster memcached. Infatti su un cluster memcached bisogna affrontare
dei passaggi sistemistici abbastanza complessi, oltre al fatto che viene richiesta molta
manutenzione di controllo e verifica in generale. Con il servizio di Amazon tutta questa
gestione diventa molto semplice e incredibilmente scalabile. Si possono generare con pochi
click server di cache con oltre 200Gb di RAM disponibile.
 Redshift: con questo servizio possiamo crearci in pochissimi minuti un sistema di data
warehouse ed eseguire tutte le query SQL di database che necessitiamo. Con questa
soluzione si possono abbattere tutti i costi iniziali di un sistema data warehouse ed evitare
tutte le complessità legate a questa tipologia di soluzione. Infatti utilizzando il servizio di
Redshift possiamo pensare solo alla memorizzazione dei nostri dati sul cloud di AWS e non
preoccuparci della complessità legata alla struttura hardware e alle problematiche di
scalabilità e mantenimento di una infrastruttura costosissima.
5.4 Sviluppo and Managment
Per quanto riguarda la parte relativa al "Deployment and Managment" l'offerta novera i seguenti
servizi:
 CloudFormation: con questo servizio è possibile creare delle template con un semplice
linguaggio di scripting che permettono la creazione di configurazioni predefinite che
possono essere usate per utilizzare delle istanze EC2 senza dover affrontare i vari passaggi
di configurazione. Ad esempio potremmo preparare una template che configuri la partenza
di una nuova istanza con uno specifico sistema operativo, elenco di software da installare e
avvio dei servizi richiesti. Ad oggi sono presenti già diversi template pronti, tra i quali ad
esempio anche WordPress e Drupal.
 CloudWatch: uno degli aspetti fondamentali da tenere sotto controllo dopo aver sviluppato
un’applicazione o un servizio web è quella di controllare le performance tramite un
monitoring, non solo per quello che riguarda l’utilizzo dei dischi o della CPU, ma per molti
altri parametri. Amazon CloudWatch è la soluzione di monitoring e allarmistica di Amazon
Web Services. L’utilizzo di Simple Notification Service (SNS) permette l’invio degli allarmi
tramite diversi supporti che possono essere attivati al raggiungimento di una soglia
prestabilita, quindi essere avvisati immediatamente.
 Elastic Beanstalk: il servizio di Amazon EC2 mette a disposizione solo potenza
computazionale, la quale una volta configurata dal punto di vista sistemistico e con
l’aggiunta di software specifico, può far girare qualsiasi applicazione. Per molte persone
questo si traduce in un’inconveniente, perché bisogna farsi carico di tutte le problematiche
legate alla configurazione e all’avvio dell’istanza virtuale prima ancora di preoccuparsi
dell’applicazione. Proprio per questo Amazon ha sviluppato Elastic Beanstalk, che permette
di caricare su AWS direttamente l’applicazione senza preoccuparsi di altri aspetti. In questo
momento i linguaggi di supportati sono .NET, JAVA e PHP.
AWS Pagina 12
 IAM (Identity and Access Managment): tramite questo servizio è possibile controllare e
gestire in maniera sicura l’accesso ai servizi e alle risorse AWS da parte dei propri utenti.
Usando IAM è possibile creare e gestire utenti e gruppi in AWS e utilizzare le autorizzazioni
per consentire e/o negare gli accessi alle risorse AWS. Il servizio IAM permette anche
l’integrazione con gli utenti esistenti nella propria rete aziendale, inoltre mette a
disposizione una serie di API per la personalizzazione e la gestione delle autorizzazioni
tramite dei programmi procedurali, sarà possibile gestire utenti, ruoli, permessi e
credenziali.
 OpsWork: OpsWorks è un servizio di gestione delle applicazioni creato per agevolare chi
utilizza un modello di sviluppo DevOps. OpsWorks può scalare in maniera automatica
l’applicazione e mantenere in salute l’infrastruttura sostituendo le istanze che si bloccano.
OpsWorks a differenza di Beanstalk offre maggiore flessibilità e controllo, consentendo di
personalizzare i tipi di server e servizi impiegati.
 Cloud Trail: è un servizio web che registra tutte le chiamate API degli AWS generate da
qualsiasi sorgente come console o applicazioni e scrive dei file di log. Vengono registrate la
tipologia delle chiamante, l’ora delle chiamate, l’indirizzo IP di origine, i parametri di
richiesta e gli elementi di risposta restituiti dal servizio AWS.Lo storico delle chiamata AWS
API prodotto da CloudTrail consente un’analisi completa riguardo la sicurezza e di tracciare
il cambiamento delle risorse AWS.
5.5 Analytics
Per quanto riguarda la parte relativa all’ "Analytics" l'offerta novera i seguenti servizi:
 Data Pipeline: questo è un servizio web che consente di elaborare e movimentare dati tra i
diversi servizi AWS e da fonti di dati on-premise a intervalli specifici. Con AWS Data Pipeline
è possibile accedere ai propri dati, trasformarli, elaborarli e trasferire poi il risultato ai vari
servizi: S3, RDS, DynamoDB o MapReduce (EMR). Con AWS Data Pipeline, è possibile
definire flussi di lavoro basati sui dati di modo che le attività correnti dipendano dal
completamento e dallo stato delle attività precedenti.
 Elastic MapReduce: è un framework software introdotto da Google per la computazione
distribuita su grandi quantità di dati in cluster di computer. Il nodo Map prende la richiesta
del problema e l’algoritmo di risoluzione, lo suddivide in tanti sotto-problemi differenti e li
distribuisce a nodi diversi. Il nodo Reduce prende le risposte di tutti i sotto-problemi e
prepara la risposta definitiva. In Amazon è possibile sperimentare questa tecnica
prendendo a disposizione tutti i nodi di cui abbiamo bisogno e testare l’efficacia e la
velocità di un nostro algoritmo di risoluzione.
 Kinesis
5.6 App Services
Per quanto riguarda la parte relativa all' "App Services" l'offerta novera i seguenti servizi:
 CloudSearch: questo servizio permette agli utenti di ricercare contenuti all’interno di
applicazioni o siti web in modo rapido ed efficace. La tecnologia CloudSearch è la stessa
utilizzata da Amazon.com per le ricerche legate ai suoi prodotti, cerca di rendere gli
sviluppatori, che desiderano integrare la ricerca nei loro siti, più liberi e svincolati dalle
logiche dei motori di ricerca pubblici. Utilizzando questo servizio, gli sviluppatori potranno
creare un dominio di ricerca e memorizzare tutte le informazioni in un database personale,
per poi personalizzare tutte le fasi di ricerca.
AWS Pagina 13
 Elastic Transcoder: è un servizio di Amazon Web Services che permette la conversione
video direttamente nell’ambiente cloud, ovviamente non è un servizio adatto alla
conversione dei filmati personali, che possiamo fare con un qualsiasi software installato
direttamente sul nostro PC, qui parliamo di sviluppare un’applicazione web o aziendale
capace di convertire in diversi formati un video immesso come file di input. Questa
particolarità renderebbe più semplice la visualizzazione di un video memorizzato nel nostro
cloud tra differenti device come ad esempio smartphones, tablets e PCs.
 SES (Simple Email Service): permette l’invio di email tramite l’infrastruttura AWS, senza la
necessità di server o postazioni dedicate. Questo è sicuramente un servizio dedicato alle
aziende che devono fare azioni di Marketing tramite posta elettronica o devono gestire
grandi mailing list. Chi utilizza il servizio EC2 può usufruire di 2000 email gratuite al giorno.
 SNS (Simple Notification Service): è un componente molto importante dei servizi AWS e
permette la notifica dei messaggi tramite diversi supporti. E’ stato aggiunto il supporto
SMS mentre sono attivi da tempo Email, code dati e messaggistica HTTP/HTTPS. Ad
esempio, la notifica è molto utile quando si strutturano sistemi in cluster, infatti è possibile,
tramite questo componente, ricevere informazioni sullo stato di servizio da parte degli altri
componenti e reagire di conseguenza.
 SQS (Simple Queue Service): è uno dei primissimi servizi rilasciati da Amazon che permette
tramite delle code messaggi presenti su uno o più server la distribuzione delle operazioni e
quindi del carico di lavoro. Ad esempio potremmo avere un server che analizza una pagina
web ed inserisce in una coda dati i riferimenti a tutte le immagini presenti in questa pagina,
la coda viene analizzate da una serie di altri server che possono dividersi il lavoro e marcare
il messaggio come elaborato.
 SWF (Simple Workflow Service): è possibile creare un controllore di flusso per coordinare
l’esecuzione di vari task secondo una logica predefinita in ambiente cloud. Questa
particolarità permette il risparmio sulla scrittura di codice complesso che dovrebbe tenere
sotto controllo tutte le fasi di elaborazione di un workflow che però è gestito da diverse
macchine e diversi ambienti di elaborazione. Il servizio di Simple Workflow si prende carico
di questa complessità e deciderà automaticamente i task da elaborare in base alle singole
risposte di ogni singola unità di elaborazione.
Una panoramica sui servizi Amazon AWS e che risulta essere una guida video, molto utile la
troviamo ai seguenti indirizzi URL:
 Parte 1 https://www.youtube.com/watch?v=LjCao_SQWfE#t=2476
 Parte 2 https://www.youtube.com/watch?v=8CkMhNPKA6c#t=136
6. Esperienza diretta
In merito ad un progetto per l’esame, visibile all’URL http://www.dsi.unive.it/~ammsis/2012-
13/esami.html, svolto nell’anno accademico 2012/2013 con il professore del corso di
amministratore di sistema, il professor Alessandro Memo, con il titolo di “Installazione e
configurazione di SSH e LDAP utilizzando il servizio Amazon EC2”, è stato installato un server Linux
su una istanza virtuale ospitata dal servizio Amazon EC2.
6.1 Creazione di un'istanza EC2
Accedendo al sito www.aws.amazon.com basterà creare un account se non ne siamo ancora in
possesso oppure ci si può autentificare con un account creato su www.amazon.it. Il costo del
AWS Pagina 14
servizio è a consumo e viene tariffato ogni mese. Nel nostro caso, in un evento di H-Farm ci è stato
offerto un buono di 100$, valido per un anno. Si parlerà del costo di questo servizio nel paragrafo
successivo.
Dopo aver acconsentito alla fatturazione dei propri servizi si accede alla console (AWS Managment
Console) o se la sessione è già aperta basterà digitare sull’URL console.aws.amazon.com. A questo
punto si aprirà una schermata con tutti i servizi offerti dall’azienda. Nel nostro caso specifico
selezioniamo il servizio EC2 e potremmo accedere alla dashboard EC2, dove risiedono le statistiche
che riguardano le risorse e i servizi attivi. Entrando nella sezione delle istanze sarà possibile
lanciarne una. L’operazione di creazione di una istanza è molto semplice e semplificata da un
Wizard che guida l’utente a selezionare quale versione di Linux si vuole installare, su quale
architettura server, la zona dove voler installare il server (l’ubicazione fisica di tutti i server è in
America), dettagli sui Kernel ID, la possibilità di aggiungere volumi EBS, creare le chiavi
crittografate per poter accedere al server e infine nella schermata firewall si configura un gruppo
di sicurezza nel quale si decidono le regole dei protocolli per permettere l’accesso alla macchina
virtuale. Basterà attendere qualche minuto e l’istanza sarà pronta per essere subito utilizzabile
dall’utente.
Le operazioni successive sono molto tecniche e operate direttamente sul server e non c’è bisogno
di addentrarsi nello specifico, perché andrebbero fuori dallo scopo del project work. A titolo solo
informativo sulla macchina, dopo aver creato un sottodominio per facilitare l’accesso la server,
sono stati installati i servizi SSH e LDAP (vedere il glossario per comprendere il significato del
servizio).
6.2 Considerazioni sull'esperienza
La guida permette l'accesso ad un database LDAP anche da remoto con SSH o LDAP installato su
un client. Come le ben poche guide disponibili in internet, ci siamo prefissati l’obbiettivo, tramite
immagini e spiegazioni dettagliate, di poter dare la possibilità di rendere immediati alcuni concetti
anche ai neofiti del settore e di poter anche personalizzare ogni passaggio a proprio piacimento. I
comandi così non dovranno essere semplicemente copiati ed incollati come si fa solitamente ma
eventualmente riscritti e capiti per poter così affrontare problematiche future. LDAP risulterà
essere talmente versatile e comodo che potrà essere utilizzato per memorizzare e gestire qualsiasi
realtà aziendale anche via rete. In questo modo possiamo centralizzare la gestione dei dati con
l'accoppiata utente/password per ogni servizio, sia esso unfile server, mail server, istant
messagging, ecc…. Cosa ancor più potente è che la password sarà la stessa per ogni servizio. Per
rendere il tutto orientato ad un ambito business, la macchina virtuale è ospitata nella piattaforma
di hosting più potente al mondo, Amazon, che grazie all’orientamento cloud permette versatilità
ed espansione con costi contenuti e direttamente proporzionali alla crescita della nostra azienda.
Non dimentichiamo che per quanto riguarda la trasparenza economica ed assistenza tecnica ci
troviamo forse di fronte ad una delle migliori aziende.
Per quanta esperienza possa avere un sysadmin non potrà mai andare tutto liscio al primo
comando. Tra le chicche più divertenti c’è stata la classica chiusura fuori dal server per l’errata
configurazione di SSH dove ci siamo dimenticati, per poter garantire l’accesso anche senza chiave
privata, di impostare oltre al parametro PasswordAuth yes anche StrictModes no. LDAP invece
risulta essere un argomento di estrema importanza ma ostile a tutti, tanto che esiste una vasta
documentazione e questo genera ancor più problemi. L’installazione infatti non è una delle più
semplice fra i demoni di Linux e fra .conf ed .ldif ci sono molti file che vanno scritti a mano e molti
comandi non sono proprio brevi od immediati. La password va assolutamente reimmessa uguale
sia in fase di installazione di ldap che di configurazione tramite dpkg con conseguente obbligo di
disinstallazione totale del servizio se questa regola non è rispettata. Provate per credere. Abbiamo
AWS Pagina 15
perso parecchio tempo per cercare la chiave privata generata da cattool. Alcune volte il demone
ldap ha bisogno di qualche minutino in più per essere operativo al 100%, non aspettiamoci che
funzioni appena riavviato. Questa esperienza è risultata essere molto esaltante e molto produttiva
vista la quantità di materiale prodotto.
7. Quanto costa
Analizzare il costo completo del'intero stack di servizi AWS è piuttosto complicato. Vediamo di
rispondere alle domande più comuni.
7.1 I costi in generale
Per una disamina attenta dei costi, è bene conoscere le caratteristiche del singolo servizio (quelli
di EC2, ad esempio, sono descritti alla pagina http://aws.amazon.com/ec2/pricing). I costi
dipendono fortemente dal tipo di istanza al quale si fa riferimento. In generale, per quanto
riguarda EC2, si parla di un costo orario intorno agli 8 centesimi di dollaro per istanze Linux "small"
e 11.5 per le equivalenti Windows "small". I prezzi raddoppiano per istanze "medium",
quadruplicano per "Large", ed arrivano fino a $0.640 all'ora per Linux, e $0.920 per le equivalenti
Large su Windows.
In sostanza, i costi sono in generale pesati sull'utilizzo orario di risorse fisiche.
Come si è visto per EC2, si hanno dei modelli-tipo che fanno riferimento ad una fascia ben definita
di impiego di risorse: CPU, memoria e spazio disco definiscono il modello di istanza (small, mini e
così via). A partire da questo modello, il prezzo base contempla un numero di ore di utilizzo e di
occupazione di banda. Ogni utilizzo sopra la soglia stabilita viene pagato come extra. In generale è
bene analizzare sin da subito le proprie esigenze, in modo tale da limitare al massimo utilizzo di
risorse oltre la soglia, perché in genere penalizza economicamente la scelta.
Vista l'ampia gamma di sevizi offerti sotto l'egida di AWS, non sarebbe praticabile elencare tutte le
casistiche di costi; ad ogni modo, i principi sono più o meno gli stessi per tutti i servizi offerti: esiste
uno o più modelli di utilizzo, da scegliere con attenzione in base alle esigenze fondamentali; ogni
utilizzo eccedente di banda, memoria, cpu, disco, numero di richieste, e così via, viene pagato
extra in base ad un prezzario ben definito. Tutto è documentato sulla pagina del singolo servizio.
7.2 Le unità di misura dei costi
L'unità di misura è chiaramente diversa da servizio a servizio, e generalmente viene riportata ad
una tariffa oraria. Ad esempio, per l'utilizzo di DynamoDB abbiamo tariffe definite in base al Write
Throughtput (1 centesimo di dollaro l'ora per 10 unità di "Write Capacity"). Non è dunque intuitivo
stimare i costi complessivi a partire da questo genere di tariffe. Per questo si suggerisce di fare un
buon utilizzo del free tier (ossia del periodo di prova gratuito). Il free tier permette di pesare le
proprie esigenze, ed avere un campione di riferimento di quelle che sarà poi la metrica delle
risorse utilizzate in ambiente di esercizio. Rimane da questo punto di vista accettabile, anche se
coinvolge l'utilizzatore in questo delicato processo di valutazione dei costi, alla fine il conteggio
risulta del tutto trasparente.
Insomma non è semplice calcolare i costi di utilizzo di AWS; per i dettagli si rimanda alla
documentazione ufficiale di Amazon, tenendo in considerazione anche il fatto che prezzi i vengano
di tanto in tanto ritoccati.
AWS Pagina 16
8. Cosa offre la concorrenza
Amazon AWS si trova in diretta concorrenza con i maggiori colossi dell’IT come Windows Azure e
Google App Engine. Vediamo cosa offrono i maggiori competitors.
Windows Azure è una piattaforma e infrastruttura di cloud computing, creata dalla Microsoft, per
costruire, sviluppare e dirigere applicazioni e servizi attraverso una rete globale di Datacenters
controllati dalla Microsoft. E’ provvista di servizi Paas e Iaas e supporta differenti linguaggi di
programmazione, tools e frameworks. La prima release risale al febbraio 2010.
I servizi offerti vanno dall’hosting di siti web, macchine virtuali, servizi di cloud, data managment,
business analytics, identità, messagistica, media services e mobile services. L’implementazione
utilizza uno speciale sistema operativo che permette la gestione di diversi livelli che che utilizzano
Windows server 2008 e Hyper-V, conosciuto come Microsoft Azure Hypervisor che virtualizza i
servizi. La scalabilità e l’affidabilità sono controllate dal Microsoft Azure Fabric Controller in modo
così che i servizi e l’ambiente non crashano se uno dei server va in crash e permette di monitorare
le risorse utilizzate.
Google App Engine è un PaaS (Platform as a Service) per sviluppare e hostare applicazioni web nel
datacenter di Google. Le applicazioni girano su diversi server e sono sandboxed, cioè un
meccanismo di sicurezza che separa i vari processi di un programma rilevandone e ispezionandone
il contenuto. App Engine offre una scalabilità automatica per le applicazioni Web, allocando
automaticamente più risorse all'applicazione a seconda del carico richiesto. La prima release risale
al 2008 e la versione stabile è uscita quest’anno a Febbraio.
Attualmente i linguaggi di programmazione supportati sono Python, Java, Go e PHP (questi ultimi
due ancora in fase sperimentale).
Comparandolo con altri servizi di hosting come Amazon EC2, App Engine fornisce molte più basi
per rendere semplice la scrittura di applicazioni scalabili, ma ha un range limitato di applicazione
che possono girare su queste infrastrutture. Altra differenza sostanziale è che l’App Engine
richiede agli sviluppatori di utilizzare solamente il proprio linguaggio, le proprie APIs, e i
framworks, mentre gli altri servizi permettono all’utente di installare e configurare qualsiasi
software compatibile con *NIX. Infine il datastore dell’App Engine utilizza una sintassi chiamata
GQL e non SQL come si potrebbe pensare.
9. Vantaggi
Il cloud computing porta con se una serie di vantaggi considerevoli sia dal punto di vista
economico sia tecnico. Come più volte ribadito, il cloud computing è democratico, perché
l’azienda che decide di dotarsi di un’infrastruttura IT, affittando tramite cloud le strutture dei
provider ha innanzitutto un notevole risparmio sui costi perché non deve dotarsi di una propria
infrastruttura hardware e software. Il risparmio si ha non solo sull’acquisto, ma anche
sull’installazione, sulla manutenzione ed eventualmente sulla dismissione dell’infrastruttura. Ad
esempio si risparmia sui costi di un sistema di ventilazione adatto ad una sala server, sui costi
elettrici per il mantenimento della sala, sui costi di intervento tecnico, sui costi di sostituzione
degli hardware, sui costi di gestione dei backup, sui costi di connettività da e verso i server e sui
costi del personale IT. A fronte di questo risparmio, il cloud computing e il modello Amazon AWS
offrono il vantaggio del pay-per-use, ovvero si pagano solo le risorse che effettivamente vengono
utilizzate.
Non vi sono dunque investimenti iniziali e nessun obbligo contrattuale. Amazon in questo
rappresenta il migliore modello di pagamento delle risorse, con una fatturazione che rispecchia
l’uso che si fa della sua struttura.
AWS Pagina 17
Al contrario, chi invece si dota di una sua infrastruttura, spesso effettua un investimento in risorse
che vengono sfruttate solo parzialmente, con uno spreco di denaro che può arrivare anche al 90%
a causa del loro inutilizzo. Infine non occorre assumere personale specializzato che si occupi della
gestione dell’infrastruttura hardware/software perché questa è a carico della società che fornisce
la piattaforma cloud. L’azienda, così, può concentrarsi sul suo core business.
Come conseguenza del modello pay per use, si va incontro ad un ulteriore vantaggio: la scalabilità.
Nel caso si abbia bisogno di più risorse, la piattaforma cloud provvederà ad allocarle in base alle
richieste. Le API che consentono questo bilanciamento e adattano l’infrastruttura al bisogno
computazionale sono raggiungibili in Amazon AWS anche dalle applicazioni del cliente.
Infine, un ultimo vantaggio riguarda la sicurezza dei dati: le società che offrono servizi di cloud
computing sono molto affidabili e spesso prevedono servizi di Disaster Recovery per recuperare i
dati nel caso i data center dovessero subire qualche crash. In molti considerano l’aspetto della
sicurezza più uno svantaggio che non il contrario perché temono che i dati, essendo memorizzati
nel cloud, possano essere accessibili da parte di chi offre e gestisce la piattaforma. L’affidabilità e
la buona fede da parte della società di cloud computing, quindi, è un elemento essenziale perché
se si verificasse una qualsiasi fuga di informazione, non importa se dovuta a problemi interni o ad
attacchi informatici, metterebbe a rischio la sua credibilità con tutto quello che ne consegue.
10. Conclusioni
Tra i servizi remote computing, che insieme costituiscono piattaforme di cloud computing, AWS di
Amazon ha conquistato una posizione predominante. Questo non rappresenta di certo una novità;
ciò che può risultare sorprendente, però, è quanto AWS sia fortemente sovrastante rispetto agli
altri fornitori dei simili servizi cloud.
Secondo una nuova analisi Gartner, AWS offre cinque volte la capacità degli altri 14 fornitori di
servizi cloud combinati tra loro e presi in considerazione da Gartner. Il fatto ancor più
sorprendente è come questo risultato sia stato raggiunto spendendo in costi per le infrastrutture
meno di quanto non abbiano fatto Google e Microsoft.
Dal 2005, Google ha speso 20,9 miliardi di dollari per la sua infrastruttura mentre Microsoft poco
meno di 18 miliardi. Amazon solo 12 miliardi.
Questo sembra essere soltanto l’inizio che significherebbe per i concorrenti di Amazon un ulteriore
divario. Gli investimenti della piattaforma e-commerce, infatti, continuano ad aumentare. Se con
un investimento migliore è riuscito a ottenere 5 volte le capacità strutturali degli altri 14
concorrenti combinati insieme, ci si chiede fin dove possa arrivare con ulteriori introiti. Questo
dovrebbe anche tranquillizzare molti analisti preoccupati per anni delle spese di Amazon che
invece, dal canto suo, sembra consapevole del valore raggiunto rispetto alla concorrenza.
Amazon Web Services ha quello che sembra essere un vantaggio inattaccabile, costruito non sulle
spese per investimenti superiori ma una profonda comprensione di ciò che gli sviluppatori
vogliono. Rendendo AWS relativamente facile da utilizzare e poco costoso, la piattaforma ha
sfruttato al meglio i propri investimenti.
Anche se per mantenere tale vantaggio, Amazon sembra avere dato un’accelerata al suo piano di
finanziamenti. Secondo un analista di Redmonk, Stephen O’Grady, però, se tale piano di
investimenti sarà finalizzato ad implementare “la caratteristica più importante del cloud
computing: una modalità di accesso semplice” ed investire sugli sviluppatori, Amazon potrà
mantenere senza problemi la sua leadership nel mercato del cloud computing.
AWS Pagina 18
11. Riferimenti
 http://en.wikipedia.org/wiki/Amazon_Web_Services
 http://www.hostingtalk.it/amazon-aws-e-levoluzione-dal-commercio-elettronico-al-cloud-
computing_-c0000062S/
 http://www.hostingtalk.it/amazon-aws-il-perche-dellarchitettura-ebs-e-le-differenze-con-
s3_-c0000064A/
 http://www.hostingtalk.it/amazon-aws-tutti-i-servizi-spiegati-passo-dopo-passo-i-parte_-
c00000636/
 http://it.wikipedia.org/wiki/Cloud_computing
 http://en.wikipedia.org/wiki/Cloud_computing
 http://www.dsi.unive.it/~ammsis/2012-13/esami.html
 http://www.techeconomy.it/2013/08/22/aws-di-amazon-si-conferma-leader-del-mercato-
cloud/
 https://otherplus.com/tech/guide/amazon-aws/
 http://www.slideshare.net/AmazonWebServices/viaggio-attraverso-il-cloud-cos-aws
 http://www.html.it/articoli/cos-e-il-cloud-2/
 http://en.wikipedia.org/wiki/Microsoft_Azure
 http://en.wikipedia.org/wiki/Google_App_Engine
 http://www.ilsole24ore.com/art/tecnologie/2013-11-06/amazon-web-services-cloud-
risorsa-innovare-092814.shtml?uuid=ABeTtnb
 http://www.stenoweb.it/it/ubuntusbs
 “Ubuntu Small Business Server” di Stefano Rigo
 https://www.youtube.com/watch?v=LjCao_SQWfE#t=2476
 https://www.youtube.com/watch?v=8CkMhNPKA6c#t=136

Más contenido relacionado

La actualidad más candente

Il futuro fra le nuvole
Il futuro fra le nuvoleIl futuro fra le nuvole
Il futuro fra le nuvoleGianluigi Cogo
 
Tesi - L'autenticazione nel cloud computing
Tesi - L'autenticazione nel cloud computingTesi - L'autenticazione nel cloud computing
Tesi - L'autenticazione nel cloud computingfrancesco pesare
 
Smau milano 2013 massimo farina
Smau milano 2013 massimo farinaSmau milano 2013 massimo farina
Smau milano 2013 massimo farinaSMAU
 
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischi
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischiScenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischi
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischiFlavia Marzano
 
Cloud Computing: Tecnologie ed Opportunità - Domenico Talia
Cloud Computing: Tecnologie ed Opportunità - Domenico TaliaCloud Computing: Tecnologie ed Opportunità - Domenico Talia
Cloud Computing: Tecnologie ed Opportunità - Domenico TaliaCentro di competenza ICT-SUD
 
Cloud computing per l'istruzione e la formazione
Cloud computing per l'istruzione e la formazioneCloud computing per l'istruzione e la formazione
Cloud computing per l'istruzione e la formazioneMario Gentili
 
Cloud computing, cosa cambia per l'IT?
Cloud computing, cosa cambia per l'IT?Cloud computing, cosa cambia per l'IT?
Cloud computing, cosa cambia per l'IT?Gianluigi Cogo
 
Il Cloud Computing
Il Cloud ComputingIl Cloud Computing
Il Cloud Computingzambe92
 
Smau Milano 2011 Fabrizio Amarilli - architetture
Smau Milano 2011 Fabrizio Amarilli - architettureSmau Milano 2011 Fabrizio Amarilli - architetture
Smau Milano 2011 Fabrizio Amarilli - architettureSMAU
 
Cloud computing 101
Cloud computing 101Cloud computing 101
Cloud computing 1013DGIS
 
Cloud computing un fenomeno che potrebbe cambiare il mondo - presentazione te...
Cloud computing un fenomeno che potrebbe cambiare il mondo - presentazione te...Cloud computing un fenomeno che potrebbe cambiare il mondo - presentazione te...
Cloud computing un fenomeno che potrebbe cambiare il mondo - presentazione te...SergioGaeta
 
Cloud Computing Motore Dell Innovazione I C T
Cloud Computing Motore Dell Innovazione  I C TCloud Computing Motore Dell Innovazione  I C T
Cloud Computing Motore Dell Innovazione I C TVMEngine
 
E suap - cloud computing (Italian)
E suap - cloud computing (Italian)E suap - cloud computing (Italian)
E suap - cloud computing (Italian)Sabino Labarile
 
Cloud Computing: La nuvola intelligente 2016
Cloud Computing: La nuvola intelligente 2016Cloud Computing: La nuvola intelligente 2016
Cloud Computing: La nuvola intelligente 2016Lorenzo Carnevale
 
Smau milano 2012 fabrizio amarilli architettura
Smau milano 2012 fabrizio amarilli architetturaSmau milano 2012 fabrizio amarilli architettura
Smau milano 2012 fabrizio amarilli architetturaSMAU
 
2011.06.30 scenari applicativi per il cloud computing
2011.06.30   scenari applicativi per il cloud computing2011.06.30   scenari applicativi per il cloud computing
2011.06.30 scenari applicativi per il cloud computingMarco Parenzan
 

La actualidad más candente (20)

Cloud Computing
Cloud  ComputingCloud  Computing
Cloud Computing
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Il futuro fra le nuvole
Il futuro fra le nuvoleIl futuro fra le nuvole
Il futuro fra le nuvole
 
Tesi - L'autenticazione nel cloud computing
Tesi - L'autenticazione nel cloud computingTesi - L'autenticazione nel cloud computing
Tesi - L'autenticazione nel cloud computing
 
Smau milano 2013 massimo farina
Smau milano 2013 massimo farinaSmau milano 2013 massimo farina
Smau milano 2013 massimo farina
 
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischi
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischiScenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischi
Scenari di Cloud Computing nella Pubblica Amministrazione: opportunità e rischi
 
Cloud Computing: Tecnologie ed Opportunità - Domenico Talia
Cloud Computing: Tecnologie ed Opportunità - Domenico TaliaCloud Computing: Tecnologie ed Opportunità - Domenico Talia
Cloud Computing: Tecnologie ed Opportunità - Domenico Talia
 
Cloud computing per l'istruzione e la formazione
Cloud computing per l'istruzione e la formazioneCloud computing per l'istruzione e la formazione
Cloud computing per l'istruzione e la formazione
 
cloud
cloudcloud
cloud
 
Cloud computing, cosa cambia per l'IT?
Cloud computing, cosa cambia per l'IT?Cloud computing, cosa cambia per l'IT?
Cloud computing, cosa cambia per l'IT?
 
Il Cloud Computing
Il Cloud ComputingIl Cloud Computing
Il Cloud Computing
 
Smau Milano 2011 Fabrizio Amarilli - architetture
Smau Milano 2011 Fabrizio Amarilli - architettureSmau Milano 2011 Fabrizio Amarilli - architetture
Smau Milano 2011 Fabrizio Amarilli - architetture
 
Cloud computing 101
Cloud computing 101Cloud computing 101
Cloud computing 101
 
Cloud computing un fenomeno che potrebbe cambiare il mondo - presentazione te...
Cloud computing un fenomeno che potrebbe cambiare il mondo - presentazione te...Cloud computing un fenomeno che potrebbe cambiare il mondo - presentazione te...
Cloud computing un fenomeno che potrebbe cambiare il mondo - presentazione te...
 
Cloud Computing Motore Dell Innovazione I C T
Cloud Computing Motore Dell Innovazione  I C TCloud Computing Motore Dell Innovazione  I C T
Cloud Computing Motore Dell Innovazione I C T
 
E suap - cloud computing (Italian)
E suap - cloud computing (Italian)E suap - cloud computing (Italian)
E suap - cloud computing (Italian)
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Cloud Computing: La nuvola intelligente 2016
Cloud Computing: La nuvola intelligente 2016Cloud Computing: La nuvola intelligente 2016
Cloud Computing: La nuvola intelligente 2016
 
Smau milano 2012 fabrizio amarilli architettura
Smau milano 2012 fabrizio amarilli architetturaSmau milano 2012 fabrizio amarilli architettura
Smau milano 2012 fabrizio amarilli architettura
 
2011.06.30 scenari applicativi per il cloud computing
2011.06.30   scenari applicativi per il cloud computing2011.06.30   scenari applicativi per il cloud computing
2011.06.30 scenari applicativi per il cloud computing
 

Destacado (20)

Internet degli oggetti
Internet degli oggettiInternet degli oggetti
Internet degli oggetti
 
Big data-simonetta
Big data-simonettaBig data-simonetta
Big data-simonetta
 
Smart Cities
Smart CitiesSmart Cities
Smart Cities
 
Internet of Things
Internet of ThingsInternet of Things
Internet of Things
 
Open data
Open dataOpen data
Open data
 
Presentazionesocial
PresentazionesocialPresentazionesocial
Presentazionesocial
 
Social...Social…Social Che?
Social...Social…Social Che?Social...Social…Social Che?
Social...Social…Social Che?
 
Open data (NEW)
Open data (NEW)Open data (NEW)
Open data (NEW)
 
App World War
App World WarApp World War
App World War
 
Native App & Web App
Native App & Web AppNative App & Web App
Native App & Web App
 
Game & developer
Game & developerGame & developer
Game & developer
 
Open_Data
Open_DataOpen_Data
Open_Data
 
Native Mobile Apps
Native Mobile AppsNative Mobile Apps
Native Mobile Apps
 
Open data
Open dataOpen data
Open data
 
Social Media e Fama
Social Media e FamaSocial Media e Fama
Social Media e Fama
 
Social CRM - paper
Social CRM - paperSocial CRM - paper
Social CRM - paper
 
Attivismo Online
Attivismo OnlineAttivismo Online
Attivismo Online
 
Smart cities
Smart citiesSmart cities
Smart cities
 
Social CRM - slide
Social CRM - slideSocial CRM - slide
Social CRM - slide
 
Cloud e big data
Cloud e big dataCloud e big data
Cloud e big data
 

Similar a Paper presentazione social media

Virtualizzazione&Cloud Computing
Virtualizzazione&Cloud ComputingVirtualizzazione&Cloud Computing
Virtualizzazione&Cloud ComputingVMEngine
 
Introduzione al Cloud Computing - Edizione 2013 - 2 - Definition of the Cloud
Introduzione al Cloud Computing - Edizione 2013 - 2 - Definition of the CloudIntroduzione al Cloud Computing - Edizione 2013 - 2 - Definition of the Cloud
Introduzione al Cloud Computing - Edizione 2013 - 2 - Definition of the CloudMarco Parenzan
 
Tesi Laurea I Livello - Vaiano
Tesi Laurea I Livello - VaianoTesi Laurea I Livello - Vaiano
Tesi Laurea I Livello - VaianoMarco Vaiano
 
Aws (amazon web services) - Slide
Aws (amazon web services) - SlideAws (amazon web services) - Slide
Aws (amazon web services) - Slidealessioemireni
 
Caratterizzazione dei sistemi cloud per la Pubblica Amministrazione
Caratterizzazione dei sistemi cloud per la Pubblica AmministrazioneCaratterizzazione dei sistemi cloud per la Pubblica Amministrazione
Caratterizzazione dei sistemi cloud per la Pubblica AmministrazioneAmmLibera AL
 
Una road map per il Cloud in Azienda
Una road map per il Cloud in AziendaUna road map per il Cloud in Azienda
Una road map per il Cloud in AziendaMarco Viscardi
 
Centro Computer - Software Defined Data Center
Centro Computer - Software Defined Data CenterCentro Computer - Software Defined Data Center
Centro Computer - Software Defined Data CenterCentro Computer Spa
 
Multi Cloud essentials
Multi Cloud essentialsMulti Cloud essentials
Multi Cloud essentialsantimo musone
 
Workshop su "Private Cloud e Virtualizzazione" - Pordenone - 09-12-2013
Workshop su "Private Cloud e Virtualizzazione" - Pordenone -  09-12-2013Workshop su "Private Cloud e Virtualizzazione" - Pordenone -  09-12-2013
Workshop su "Private Cloud e Virtualizzazione" - Pordenone - 09-12-2013ConsulPartner iSrl
 
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...laboratoridalbasso
 
Trasformazione digitale fabio-cecaro
Trasformazione digitale fabio-cecaroTrasformazione digitale fabio-cecaro
Trasformazione digitale fabio-cecaroVMEngine
 
Il Cloud Infrastrutturale
Il Cloud InfrastrutturaleIl Cloud Infrastrutturale
Il Cloud InfrastrutturaleMarco Lombardo
 
Cloud computing e data center cenni sulle tecnologie orientate al green
Cloud computing e data center cenni sulle tecnologie orientate al green Cloud computing e data center cenni sulle tecnologie orientate al green
Cloud computing e data center cenni sulle tecnologie orientate al green VMEngine
 
AWS (Amazon Web Services) - Trevisan Davide
AWS (Amazon Web Services) - Trevisan DavideAWS (Amazon Web Services) - Trevisan Davide
AWS (Amazon Web Services) - Trevisan DavideDavide Trevisan
 
Seminario: GNU/Linux come punto di forza
Seminario: GNU/Linux come punto di forzaSeminario: GNU/Linux come punto di forza
Seminario: GNU/Linux come punto di forzaMauro Fava
 
Cloud infrastructure
Cloud infrastructureCloud infrastructure
Cloud infrastructureMattia Azzena
 

Similar a Paper presentazione social media (20)

Virtualizzazione&Cloud Computing
Virtualizzazione&Cloud ComputingVirtualizzazione&Cloud Computing
Virtualizzazione&Cloud Computing
 
Introduzione al Cloud Computing - Edizione 2013 - 2 - Definition of the Cloud
Introduzione al Cloud Computing - Edizione 2013 - 2 - Definition of the CloudIntroduzione al Cloud Computing - Edizione 2013 - 2 - Definition of the Cloud
Introduzione al Cloud Computing - Edizione 2013 - 2 - Definition of the Cloud
 
Tesi Laurea I Livello - Vaiano
Tesi Laurea I Livello - VaianoTesi Laurea I Livello - Vaiano
Tesi Laurea I Livello - Vaiano
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Aws (amazon web services) - Slide
Aws (amazon web services) - SlideAws (amazon web services) - Slide
Aws (amazon web services) - Slide
 
Caratterizzazione dei sistemi cloud per la Pubblica Amministrazione
Caratterizzazione dei sistemi cloud per la Pubblica AmministrazioneCaratterizzazione dei sistemi cloud per la Pubblica Amministrazione
Caratterizzazione dei sistemi cloud per la Pubblica Amministrazione
 
Una road map per il Cloud in Azienda
Una road map per il Cloud in AziendaUna road map per il Cloud in Azienda
Una road map per il Cloud in Azienda
 
Centro Computer - Software Defined Data Center
Centro Computer - Software Defined Data CenterCentro Computer - Software Defined Data Center
Centro Computer - Software Defined Data Center
 
Architetture.Distribuite
Architetture.DistribuiteArchitetture.Distribuite
Architetture.Distribuite
 
Multi Cloud essentials
Multi Cloud essentialsMulti Cloud essentials
Multi Cloud essentials
 
Workshop su "Private Cloud e Virtualizzazione" - Pordenone - 09-12-2013
Workshop su "Private Cloud e Virtualizzazione" - Pordenone -  09-12-2013Workshop su "Private Cloud e Virtualizzazione" - Pordenone -  09-12-2013
Workshop su "Private Cloud e Virtualizzazione" - Pordenone - 09-12-2013
 
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...
 
Trasformazione digitale fabio-cecaro
Trasformazione digitale fabio-cecaroTrasformazione digitale fabio-cecaro
Trasformazione digitale fabio-cecaro
 
Il Cloud Infrastrutturale
Il Cloud InfrastrutturaleIl Cloud Infrastrutturale
Il Cloud Infrastrutturale
 
Cloud computing e data center cenni sulle tecnologie orientate al green
Cloud computing e data center cenni sulle tecnologie orientate al green Cloud computing e data center cenni sulle tecnologie orientate al green
Cloud computing e data center cenni sulle tecnologie orientate al green
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
AWS (Amazon Web Services) - Trevisan Davide
AWS (Amazon Web Services) - Trevisan DavideAWS (Amazon Web Services) - Trevisan Davide
AWS (Amazon Web Services) - Trevisan Davide
 
Seminario: GNU/Linux come punto di forza
Seminario: GNU/Linux come punto di forzaSeminario: GNU/Linux come punto di forza
Seminario: GNU/Linux come punto di forza
 
Cloud Computing
Cloud Computing Cloud Computing
Cloud Computing
 
Cloud infrastructure
Cloud infrastructureCloud infrastructure
Cloud infrastructure
 

Paper presentazione social media

  • 1. UNIVERSITÀ CÀ FOSCARI VENEZIA - INFORMATICA AWS (Amazon Web Services) Project work di Social Media Web e Smart Apps Alessio Emireni 840126 06/06/2014 AWS (Amazon Web Services)
  • 2. AWS Pagina 2 Indice 1. Glossario........................................................................................................................................................ 3 2. Che cos'è il cloud computing......................................................................................................................... 4 2.1 Il modello IAAS......................................................................................................................................... 6 2.2 Il modello PAAS........................................................................................................................................ 6 3. Che cos'è AWS ............................................................................................................................................... 7 4. L’infrastruttura .............................................................................................................................................. 7 5. Servizi offerti.................................................................................................................................................. 8 5.1 Compute & Networking........................................................................................................................... 9 5.2 Storage & Content Delivery................................................................................................................... 10 5.3 Database................................................................................................................................................ 10 5.4 Sviluppo and Managment...................................................................................................................... 11 5.5 Analytics................................................................................................................................................. 12 5.6 App Services........................................................................................................................................... 12 6. Esperienza diretta........................................................................................................................................ 13 6.1 Creazione di un'istanza EC2................................................................................................................... 13 6.2 Considerazioni sull'esperienza............................................................................................................... 14 7. Quanto costa ............................................................................................................................................... 15 7.1 I costi in generale................................................................................................................................... 15 7.2 Le unità di misura dei costi.................................................................................................................... 15 8. Cosa offre la concorrenza............................................................................................................................ 16 9. Vantaggi....................................................................................................................................................... 16 10. Conclusioni ................................................................................................................................................ 17 11. Riferimenti................................................................................................................................................. 18
  • 3. AWS Pagina 3 1. Glossario  CDN Content Delivery Network: rete per la consegna dei contenuti è un termine coniato negli anni 90’ per descrivere un sistema di computer collegati in rete attraverso Internet, che collaborano in maniera trasparente, sotto forma di sistema distribuito, per distribuire contenuti agli utenti finali ed erogare servizi di streaming audio e video.  Clustering: consiste di computer connessi tra loro che lavorano insieme, in modo tale che siano visti come un singolo sistema.  Data model: modello di riferimento utilizzato in un database, come per esempio il modello relazionale per definire degli oggetti, attributi e delle classi.  Data warehouse: è un archivio informatico contenente i dati di un’organizzazione, progettati per consentire di riprodurre facilmente analisi e relazioni utili a fini decisionali- aziendali.  DevOps: è una metodologia di sviluppo del software che punta alla comunicazione, collaborazione e interpretazione tra sviluppatori e operatori dell’IT. Punta ad aiutare un’organizzazione a sviluppare in modo più rapido ed efficiente prodotti e servizi software.  Digital divide: è il divario esistente tra chi ha accesso effettivo alle tecnologie dell’informazione e chi ne è escluso, in modo parziale o totale. I fattori possono essere le condizioni economiche, livello d’istruzione e appartenenza a diversi gruppi etnici.  Disaster recovery: in informatica e in particolare nell’ambito della sicurezza informatica, si intende l’insieme delle misure tecnologiche e logistiche/organizzative atte a ripristinare sistemi, dati e infrastrutture necessarie all’erogazione di servizi di business per imprese a fronte di gravi emergenze che ne intacchino la regolare attività.  Elasticity: riferito ad un datastore, indica la flessibilità dei suoi data model e la capacità nel clustering.  Grid computing: infrastruttura di calcolo distribuito, utilizzati per l’elaborazione di grandi quantità di dati, mediante l’uso di una vasta quantità di risorse. In particolare permettono la condivisione coordinata di risorse all’interno di un’organizzazione virtuale.  Hyper-V: è il componente centrale, utilizzato nei sistemi Microsoft, di un sistema basato sulle macchine virtuali.  Istanza: nell’ambito della programmazione, si intende nella maniera più generica una regione di memoria allocata.  LDAP: è un protocollo standard per l’interrogazione e la modifica dei servizi di directory come un elenco aziendale di email o una rubrica telefonica o più in generale qualsiasi raggruppamento di informazioni che può essere espresso come record di dati ed organizzato in modo gerarchico.  Multitenancy: si riferisce ad una architettura software in cui una singola istanza del suddetto gira su un server ed è utilizzato da più di una clinet organization (tenant). E’ l’opposto di multi-istanza.  Provisioning: processo per preparare ed equipaggiare una rete nel caso in cui sopraggiungano nuovi servizi fruibili agli utenti.
  • 4. AWS Pagina 4  Sistema distribuito: indica una tipologia di sistema informatico costituito da un insieme di processi interconnessi tra loro in cui le comunicazioni avvengono esclusivamente tramite lo scambio di opportuni messaggi.  SSH: è un protocollo di rete che permette di stabilire una sessione remota cifrata tramite interfaccia a riga di comando con un altro host di una rete informatica.  *NIX: è l’abbreviazione di unix-like e indica tutti quei sistemi operativi che sono progettati seguendo direttive dei sistemi Unix descritte nella Single UNIX Specification ma che, per questioni legali, non possono usare il marchio UNIX. 2. Che cos'è il cloud computing Prima di addentrarci nello specifico del tema, è bene riassumere in poche battute il contesto nel quale si colloca AWS. Con cloud computing si è soliti designare un insieme di tecnologie che permettono, tipicamente sotto forma di un servizio offerto da un provider al cliente, di memorizzare/archiviare e/o elaborare dati (tramite CPU o software) grazie all'utilizzo di risorse hardware/software distribuite e virtualizzate in Rete in un'architettura tipica client-server. L’architettura informatica del cloud computing prevede uno o più server reali, generalmente in architettura ad alta affidabilità e fisicamente collocati presso il data center del fornitore del servizio. Il fornitore del servizio espone delle interfacce per elencare e gestire i propri servizi. Il cliente amministratore utilizza tali interfacce per selezionare il servizio richiesto (ad esempio un server virtuale completo oppure solo storage) e per amministrarlo (configurazione, attivazione, disattivazione). Il cliente finale utilizza il servizio configurato dal cliente amministratore. Le caratteristiche fisiche dell’implementazione (server reale, localizzazione del data center) sono irrilevanti. Il cloud computing mostra le seguenti caratteristiche principali:  API (Application Programming Interface): accessibilità al software che permette alle macchine di interagire con i software di cloud nello stesso modo in cui si interagisce con le normali interfacce desktop, facilitandone l’utilizzo da parte di un utente  Costo: i costi con il cloud si riducono sensibilmente e nel caso di un cloud pubblico converte il capital expenditure (CAPEX) in operational expenditure(OPEX), cioè nei suoi costi di gestione.  Indipendenza dalla locazione e dal dispositivo utilizzato: permette all’utente di collegarsi da qualsiasi luogo, semplicemente utilizzando un browser, collegandosi con un qualsiasi supporto sia che esso sia un Pc desktop o un dispositivo mobile.  Virtualizzazione: le applicazioni possono essere tranquillamente trasferite da un server ad un altro.  Multitenancy: permette la condivisione di risorse e di costi a fronte di centralità per diminuire i costi, incremento delle prestazioni, utilizzo e efficienza in sistemi che utilizzano poche risorse.  Affidabilità: realizzata tramite sistemi ridondanti in modo da evitare il verificarsi di disastri e permettere la continuazione del proprio lavoro (disaster recovery).  Scalabilità ed elasticità: prepara la rete ad un possibile aggiornamento senza che l’utente debba considerare i picchi di lavoro del proprio server.  Performance: sono monitorate e consistono di interfacce presenti su servizi web messi a disposizione dal provider.  Sicurezza: è un fattore molto importante perché coinvolge molti utenti e i loro dati.
  • 5. AWS Pagina 5  Manutenzione: è molto semplice perché non bisogna installare nulla sui computer degli utenti. La definizione della National Institute of Standards and Technology sul cloud computing identifica “five essential characteristics”: 1. On-demand self-service 2. Broad network access 3. Resources pooling 4. Rapid elasticity 5. Measured service Nell'ambito del cloud computing si è arrivati a definire diversi modelli di erogazione dei servizi attraverso principi di cloud computing. Si possono distinguere tre tipologie fondamentali di servizi cloud computing:  SaaS (Software as a Service): consiste nell’utilizzo di programmi installati su un server remoto, cioè fuori dal computer fisico o dalla LAN locale, spesso attraverso un server web. Questo acronimo condivide in parte la filosofia di un termine oggi in disuso, ASP (Application service provider).  Daas (Data as a Service): con questo servizio vengono messi a disposizione via web solamente i dati ai quali gli utenti possono accedere tramite qualsiasi applicazione come se fossero residenti su un disco locale.  Haas (Hardware as a Service): con questo servizio l’utente invia dati a un computer che vengono elaborati da computer messi a disposizione e restituiti all’utente finale. A questi tre principali service possono essere integrati altri:  PaaS (Platform as a Service): invece che uno o più programmi singoli, viene eseguita in remoto una piattaforma software che può essere costituita da diversi servizi, programmi, librerie, etc. (ad esempio Google App Engine).  IaaS (Infrastructure as a Service): utilizzo di risorse hardware in remoto. Questo tipo di cloud è quasi un sinonimo di Grid Computing, ma con una caratteristica imprescindibile: le risorse vengono utilizzate su richiesta o domanda al momento in cui una piattaforma ne ha bisogno, o vengono assegnate a prescindere dal loro utilizzo effettivo (ad esempio Google Compute Engine). I principali modelli di sviluppo del Cloud Computing sono i seguenti:  Private Cloud: i servizi di cloud computing sono erogati dalle aziende, o da un provider esterno, unicamente all’azienda stessa e alle sue diverse unità (on-premise). Quello che conta è la fruizione dei servizi: l’infrastruttura può essere gestita o operata dall’azienda stessa o da un provider esterno, la proprietà può essere interna o esterna, ma i servizi devono essere appannaggio di un’unica organizzazione.  Public Cloud: i servizi di Cloud computing erogati attraverso la rete Internet da un service provider a diversi clienti. L’infrastruttura, la piattaforma, le applicazioni, sono di proprietà del service provider, sono gestite dal service provider e sono condivise con più clienti.  Community Cloud: i servizi di Cloud computing sono erogati da un’azienda o un service provider ad un gruppo ristretto di organizzazioni che condividono alcune caratteristiche come, ad esempio, livelli di sicurezza, norme legali, obbiettivi e così via. Anche in questo caso l’infrastruttura può essere gestita o operata da una delle aziende del gruppo o da un provider esterno.  Hybrid Cloud: i servizi sono costruiti su infrastrutture ibride che utilizzano la modalità privata per alcuni aspetti (conservazione dei dati) e la modalità pubblica per altri (interfacce di accesso).
  • 6. AWS Pagina 6  Distributed Cloud: il cloud computing può essere anche fornito da un set di macchine che stanno lavorando in differenti luoghi e sono connesse ad un singola rete o hub service. Sorgono però alcune problematiche legate all’esposizione degli utenti a rischi legati a: 1. Sicurezza informatica e privacy: memorizzare dati personali o sensibili, espone l’utente a potenziali violazioni della privacy (ci si affida ad un provider estero); per i collegamenti wireless, il rischio sicurezza aumenta e si è maggiormente esposti a casi di pirateria informatica; e per ultimo tutti i dati memorizzati nelle memorie esterne sono esposti a eventuali casi di spionaggio industriale. 2. Problemi internazionali di tipo economico e politico: possono verificarsi quando dati pubblici sono conservati in archivi privati e ne è difficile l’accesso; alcuni archivi possono essere memorizzati in alcuni paesi ricchi è ciò comporta un aumento del digital divide tra paesi ricchi e poveri, e favorire principalmente grandi corporation con organismi policentrici e menti monocentriche. 3. Continuità del servizio: delegando un servizio esterno per la gestione dei dati e la loro elaborazione l’utente si trova fortemente limitato nel caso in cui i suddetti servizi non siano operativi (out of service) e colpirebbe un alto numero di utenti contemporaneamente dato che questi sono servizi condivisi. Anche se i migliori servizi di cloud computing utilizzano architetture ridondante utilizzando architetture ridondante e personale pronto e qualificato non si elimina del tutto il problema. 4. Difficoltà di migrazione dei dati: nel caso di una eventuale migrazione dei dati da un service provider all’altro non esiste uno standard definito tra i gestori dei servizi, e tutto ciò risulterebbe estremamente dannoso in caso di fallimento del gestore dei servizi cui ci si è affidati. 2.1 Il modello IAAS Con IAAS (Infrastructure as a Service) si intendono tutti quei gestori che, utilizzando sistemi di virtualizzazione, mettono a disposizione servizi personalizzati per creare stack applicativi (web server, database ecc.) totalmente personalizzati, a partire dal sistema operativo in su. In poche parole, il gestore mette a disposizione un ambiente, più o meno amichevole, all'interno del quale è possibile la creazione assistita di istanze di macchine virtuali, o meglio appliances, come vengono chiamate da alcuni. L'approccio IAAS rende possibile un elevato livello di personalizzazione dell'ambiente. Per contro rimangono totalmente in carico all'utilizzatore gli aggiornamenti dei componenti applicativi (web server, database ecc.), la configurazione post-installazione del sistema operativo e ogni installazione di componenti aggiuntivi. L'utilizzatore di un servizio IAAS è particolarmente adatto a soggetti commerciali di medie dimensioni che, in caso di necessità, possono contare su di uno staff tecnico per la creazione di istanze totalmente on demand. Questo consente, di fatto, un notevole risparmio in termini in risorse hardware, poiché evita l'adozione di dispendiose infrastrutture hardware proprietarie che, tra l'altro, rimarrebbe, per il 90% del tempo sottoutilizzate. Adottare una soluzione di tipo IAAS permette di spendere solo per risorse effettivamente utilizzate, consentendo al contempo di gestire in maniera soddisfacente i picchi di utilizzo. 2.2 Il modello PAAS Il modello PAAS (Platform as a Service) è caratterizzato da un assunto di partenza quasi opposto rispetto al modello IAAS. Se, da una parte, l'utente IAAS può essere immaginato come un system
  • 7. AWS Pagina 7 administrator l'utente di un servizio PAAS è di solito uno sviluppatore: qualcuno che vuole concentrarsi sul dettaglio implementativo. L'utente di un servizio PAAS si concentra su una particolare piattaforma di riferimento, a partire dalla quale costruire i propri servizi. Ciò permette di minimizzare i costi relativi al setup iniziale e alla distribuzione della propria applicazione. Utilizzando una piattaforma PAAS si riduce il costo della distribuzione delle applicazioni al minimo indispensabile. La progettazione e l'erogazione di un'applicazione di alto livello può comportare la risoluzione di problematiche di amministrazione di sistema molto complesse, il che si traduce nella necessità di avere a disposizione uno staff di sistemi qualificati che seguano, oltre alla messa in esercizio del prodotto, anche una manutenzione periodica, un monitoraggio costante dell'applicativo. L'utilizzatore di un servizio PAAS vuole risparmiare su questi costi di configurazione e manutenzione. Il know how necessario alla corretta gestione è attinto in massima parte dalla gestione dell'infrastruttura PAAS. Esempi di servizi PAAS sono: Windows Azure e Google App Engine. 3. Che cos'è AWS AWS non è un servizio, bensì una intera classe di servizi offerti ed amministrativi tramite una interfaccia comune. L'offerta di AWS comprende sia soluzioni IAAS, sia stack applicativi di tipo PAAS. L'interfaccia comune tramite la quale i servizi sono offerti è la console web di AWS, raggiungibile puntando il browser nell'indirizzo: https://console.aws.amazon.com/ Il servizio IAAS per eccellenza di AWS è rappresentato dal servizio AWS EC2. EC2 sta per Elastic Computing Cloud, dove C2 è un gioco di parole: dall'acronimo ECC si passa ad EC2; così come dall'acronimo Simple Storage Service si passa a S3. EC2 è un servizio di AWS che fornisce un'infrastruttura web per disporre di macchine virtuali completamente on demand. Tramite EC2 è possibile configurare, avviare, spegnere e clonare istanze di macchine virtuali costruire totalmente secondo le proprie necessità. E' inoltre possibile avviare immagini già pronte messe a disposizione dalla comunità con le applicazioni più diffuse. Nei prossimi capitoli sarà approfondito in dettaglio il servizio EC2. Per il momento è meglio limitarci solo ad una panoramica generale dei servizi offerti ed alle utenze di riferimento. 4. L’infrastruttura La sezione dell’infrastruttura globale AWS è importante da citare, in quanto spesso viene dimenticata da chi effettua una catalogazione dei servizi. In realtà, l’infrastruttura AWS è essa stessa un servizio e non è un caso che per comprendere tutto ciò che verrà dopo, un benginner debba inizialmente comprendere come si struttura il network di AWS. Entrando più nel dettaglio, l’infrastruttura di Amazon AWS si suddivide in regions, availability zones ed edge locations. Imparando a comprenderne le differenze si intuisce, fin da subito, come Amazon AWS possa aiutare i clienti a supportare applicazioni tolleranti ai failure e agli avventi avversi, senza interrompere i servizi offerti. Le Regions sono indicate con i quadrati in azzurro trasparente. In pratica, ogni Region è un insieme indipendente di risorse AWS, geograficamente isolate l’una dall’altra e sparse in alcuni dei territori chiave del mondo. Ogni Region nasce con lo specifico intento di garantire le giuste condizioni di privacy e compliance. Fin da subito si avrà a che fare con esse, in quanto non tutti i servizi sono sempre disponibili nelle differenti Region in cui AWS è suddivisa. Attualmente, le Region sono 8, a cui si aggiunge una Region GovCloud che però è riservata alle sole agenzie governative. Per
  • 8. AWS Pagina 8 scegliere una Region, di solito si individua quella che risulta più vicina agli utenti finali, ossia coloro che utilizzeranno l’applicazione implementata sui servizi AWS. Quindi, se si ha l’intenzione di sviluppare un’app per i soli utenti italiani o europei, il consiglio è quello di affidarsi alla Region posizionata in Irlanda. Inoltre, può accadere che il prezzo di utilizzo di un servizio vari in base alla Region prescelta. All’interno di ogni Region, esistono le così dette Availability Zones. Si tratta di zone indipendenti che non condividono fra loro alcun punto di failure e tutte sono connesse fra loro attraverso una rete a bassa latenza. Le zone sono pensate come dei veri e propri sistemi di backup, poiché, per quanto inusuale, i guasti possono sempre avvenire. I clienti, quindi, hanno l’opportunità di sviluppare la propria app su differenti Zones nella Region prescelta e qualora si verifichi un guasto in una determinata Zones, l’applicazione rimarrebbe comunque online grazie alla presenza delle altre zone su cui è implementata. Nella mappa iniziale, le differenti Zones sono mostrate come quadratini blu appartenenti alle Regions. Infine, per quanto non ce ne si debba occupare direttamente, è bene introdurre anche la terza struttura del network, ossia le Edge Locations. Pensate a supporto dei servizi DNS, offerti attraverso il Web Services Route 53 e della CDN (Content Delivery Network) di CloudFront, le Edge Locations permettono di distribuire i contenuti e le app agli utenti nazionali con una latenza ridotta. Nel BelPaese, l’Edge Location nazionale è posizionato a Milano. Al di sopra dell’infrastruttura, vi sono i servizi di networking. A questi afferiscono tre services principali: Amazon Route 53, Amazon Virtual Private Cloud (VPC) e Amazon Direct Connect. 5. Servizi offerti I servizi offerti, com'è possibile vedere anche dalla Console AWS, sono suddivisi in cinque principali aree di riferimento:  Compute & Networking: in questo gruppo troviamo tutti i servizi per le risorse di computazione, quindi server virtuali in cloud (EC2), gestione di un DNS (Route53), risorse private e server virtuali non pubblici (VPC Virtual Private), connessioni dedicate con AWS (Direct Connect) e servizi di Desktop in Cloud (WorkSpaces).  Storage & distribuzione contenuti: qui troviamo tutti i servizi che riguardano la memorizzazione di dati online anche di grandi dimensioni. Servizio di storage (S3), storage studiato per i backup (Glacier), collegamento server aziendali con il cloud (Storage Gateway), distribuzione contenuti statici e multimediali (CloudFront).  Database: tramite questi servizi possiamo gestire dei database senza dover installare i software specifici sui nostri server virtuali e usufruire della scalabilità automatica di Amazon. Possiamo scegliere un database NoSQL fortemente scalabile (DynamoDB), un database relazione come MySQL e Microsoft SQL Server (RDS), sistema di caching RAM (ElastiCache) e un sistema di data warehouse ad altissima velocità (Redshift).  Sviluppo & Management: in questo gruppo troviamo i servizi che ci permettono di eseguire applicazioni, controllare alcuni aspetti dei servizi acquistati e gestire le autorizzazioni. Possiamo creare delle template di configurazione per la creazione di un’ambiente e le risorse necessarie (CloudFormation), controllare gli indicatori di performance e attivare delle azioni automatiche (CloudWatch), eseguire delle applicazioni scritte in vari linguaggi (Elastic Beanstalk), controllare e gestire tutte le autorizzazioni sia di identificazione che di accesso con (IAM), utilizzare lo sviluppo DevOps con (OpsWorks) e controllare tutte le chiamate API con (Cloud Trail).
  • 9. AWS Pagina 9  Analytics: qui troviamo i servizi che effettuano delle analisi basandosi su delle grosse strutture dati e sulla suddivisione del carico di lavoro. Il primo servizio rilasciato per questo gruppo è (Elastic MapReduce) basato su un framework opensource chiamato Hadoops, ideale per data warehousing e financial analysis. Gli altri servizi che troviamo in questa sezione sono (Data Pipeline) e l’ultimo arrivato (Kinesis).  App Services: qui troviamo quei servizi che possiamo utilizzare chiamando direttamente delle applicazioni specifiche che girano nel cloud di amazon senza dover acquistare server virtuali o storage online. Servizio di spedizione posta elettronica anche per grandi volumi (SES), Servizio di notifiche tra diversi supporti e diversi servizi (SNS), motore di ricerca personalizzato per i propri dati (CloudSearch), distribuzione del carico di lavoro tramite code messaggi (SQS), conversioni video in differenti formati con (Elastic Transcoder) e pianificazione lavori con (SWF). Ciascuna di queste aree novera un gran numero di servizi a disposizione, soprattutto se si considera il fatto che continuano a nascere servizi nuovi. Nei capitoli che seguono le analizzeremo in dettaglio. 5.1 Compute & Networking Per quanto riguarda l'area "Networking" l'offerta novera i seguenti servizi:  EC2: "Virtual Server in the Cloud", un servizio web che fornisce capacità di elaborazione dati in the cloud. Amazon EC2 fornisce tramite la virtualizzazione la possibilità di scegliere tra moltissimi sistemi operativi, servizi e banche dati già pronte per la propria applicazione. Il servizio EC2 può essere gestito tramite una console web o tramite la gestione delle API messe a disposizione da Amazon per essere usate in ambienti di programmazione. Amazon EC2 mette a disposizione anche una serie di sotto servizi per la gestione avanzata della nostra istanza virtuale, come ad esempio il bilanciamento del traffico, il disaster recovery, le copie di backup, la funzione di Auto Scaling ed altro ancora.  Route 53 "Scalable Domain Name System": una volta che avrete iniziato ad usare EC2, quando dovrete rendere accessibile la vostra istanza ad un pubblico di utenti, vi renderete conto che l'IP che Amazon vi assegnerà è un IP temporaneo. Sarete allora caldamente incoraggiati ad usare Route 53, che di fatto è il sistema di naming da usare con EC2.  VPC Virtual Private: un collegamento sicuro tra l’infrastruttura interna IT esistente di un’impresa e la nube AWS. Amazon VPC permette alle aziende di connettere la propria infrastruttura esistente con una serie di risorse Amazon Web Services attraverso la VPN (virtual private network), così da poter espandere molte funzioni tramite la tecnologia cloud. Ad esempio potremmo demandare alcune funzioni di elaborazione molto pesanti a dei server virtuali avviati nel cloud di Amazon, che comunque saranno raggiungibili solo dalla nostra rete interna e accessibili solamente dagli account della azienda.  Direct connect: sappiamo benissimo che uno dei punti deboli per il cloud computing in azienda, specialmente in Italia, è il collegamento e la banda internet, infatti i servizi di Amazon vengono molto apprezzati quando si tratta di risorse che devo essere pubbliche e vengono visti problematici quando bisogna implementare un’infrastruttura privata con collegamenti VPN in cloud. Per le aziende che necessitano di un collegamento sicuro è possibile tramite questo servizio creare una linea diretta tra l’azienda e il data center di Amazon più vicino, senza passare per la linea internet.  WorkSpaces: questo servizio è una valida alternativa alle strutture basate su VDI (Virtual Desktop Infrastructure), infatti mette a disposizione un completo ambiente desktop in cloud per i le risorse aziendali, le quali possono scegliere tra differenti tipi di
  • 10. AWS Pagina 10 configurazione. Amazon WorkSpaces supporta anche Active Directory per l’autenticazione degli utenti e, ovviamente, l’integrazione con le risorse aziendali mediante la rete Intranet. Sarà messo a disposizione anche un client per effettuar e un backup sicuro e veloce su S3. 5.2 Storage & Content Delivery Per quanto riguarda la parte relativa allo "Storage e distribuzione contenuti" l'offerta novera i seguenti servizi:  CloudFront: è un servizio web per il “content delivery” cioè la distribuzione di contenuto statico o in streaming ad alta velocità e con bassa latenza. La configurazione è molto semplice dato che è collegato automaticamente al servizio di Amazon S3 basta associare la risorsa che abbiamo memorizzato in un nostro buckets S3 al servizio CloudFront e automaticamente la risorsa sarà replicata nei “edge point” sparsi nel mondo, i quali verranno utilizzati per far fronte alle richieste che si troveranno geograficamente più vicine, quindi abbassando drasticamente la latenza generale.  S3 (Simple Storage Service): con questo servizio di “storage online” è possibile archiviare e recuperare grandi quantità di dati, in qualsiasi momento e da qualsiasi punto del web. Fornisce agli utilizzatori la possibilità di accedere alla stessa infrastruttura di storage dei dati, altamente scalabile, affidabile e veloce che Amazon utilizza per mantenere in funzione la propria rete internazionale di siti web. Questo servizio può essere utilizzato anche come forma sicura di backup, sia per gli altri servizi AWS come ad esempio EC2, ma anche come backup per server aziendali o postazioni personali.  Glacier (backup a basso costo): A differenza del servizio già esistente di Amazon S3 rappresenta una soluzione low-cost adatta alla memorizzazione di informazioni che riguardano le funzioni di backup. Sicuramente è un servizio ottimo per gli ambienti di rete aziendale, ma può essere usato anche per uso personale al posto di altri servizi come ad esempio Dropbox, l’importante è capirne bene le differenze e controllare la tabella dei costi. Questo servizio è stato studiato per la memorizzazione di informazioni che normalmente non devono essere riscaricate, se non per problemi di recupero informazioni. Se usato in questa maniera, i prezzi sono molto vantaggiosi e il costo è molto più basso rispetto ad S3, il quale è ottimizzato per la pubblicazione dei contenuti e non solo per la memorizzazione.  Storage Gateway: questo servizio è dedicato alle grandi aziende, permette di installare nella propria rete locale un software che si occupa della copia fisica dei dischi collegati ai server locali nell’ambiente storage di S3. Se si dovesse rompere qualche disco locale, possiamo ripristinarlo velocemente da Amazon S3 ed riavviare il sistema al suo funzionamento normale. Se invece dovessimo avere un guasto generale, possiamo avviare delle istanze su Amazon EC2 e ripristinare gli snapshot su volumi EBS. 5.3 Database Per quanto riguarda la parte relativa al "Database" l'offerta novera i seguenti servizi:  DynamoDB: questo servizio permette la gestione completa di un database NoSQL in un’ambiente di cloud computing. Un binomio eccezionale per la scalabilità e l’eliminazione di alcuni limiti presenti nei database relazionali. Questo servizio nasce dopo 15 anni di esperienza con SimpleDB e Dynamo usati nel sito di Amazon.com, i quali avevano comunque dei limiti sulla dimensione del dataset. Il servizio di DynamoDB non avrà limiti di dimensione e replicherà automaticamente i dati su tre data center differenti. Il servizio ci svincola anche dalle problematiche di backup e recovery.
  • 11. AWS Pagina 11  RDS: Un servizio web che offre a costi accessibili la gestione di un database MySQL direttamente nel cloud da integrare con gli altri servizi AWS, oltre alla semplificazione delle attività di backup, ridimensionamento e patching. Con questa tecnica non saremo costretti ad installare un software di database server sulle nostre istanze virtuali, non dovremmo preoccuparci dell’allineamento automatico dei dati, e tanto meno della scalabilità in base al numero delle richieste effettuate. Tutti questi aspetti verranno gestiti automaticamente dal servizio di Amazon RDS.  ElasticCache: con questo servizio possiamo gestire in maniera molto semplice una funzionalità complessa come un cluster di caching RAM. Questo servizio è completamente compatibile con il cluster memcached. Infatti su un cluster memcached bisogna affrontare dei passaggi sistemistici abbastanza complessi, oltre al fatto che viene richiesta molta manutenzione di controllo e verifica in generale. Con il servizio di Amazon tutta questa gestione diventa molto semplice e incredibilmente scalabile. Si possono generare con pochi click server di cache con oltre 200Gb di RAM disponibile.  Redshift: con questo servizio possiamo crearci in pochissimi minuti un sistema di data warehouse ed eseguire tutte le query SQL di database che necessitiamo. Con questa soluzione si possono abbattere tutti i costi iniziali di un sistema data warehouse ed evitare tutte le complessità legate a questa tipologia di soluzione. Infatti utilizzando il servizio di Redshift possiamo pensare solo alla memorizzazione dei nostri dati sul cloud di AWS e non preoccuparci della complessità legata alla struttura hardware e alle problematiche di scalabilità e mantenimento di una infrastruttura costosissima. 5.4 Sviluppo and Managment Per quanto riguarda la parte relativa al "Deployment and Managment" l'offerta novera i seguenti servizi:  CloudFormation: con questo servizio è possibile creare delle template con un semplice linguaggio di scripting che permettono la creazione di configurazioni predefinite che possono essere usate per utilizzare delle istanze EC2 senza dover affrontare i vari passaggi di configurazione. Ad esempio potremmo preparare una template che configuri la partenza di una nuova istanza con uno specifico sistema operativo, elenco di software da installare e avvio dei servizi richiesti. Ad oggi sono presenti già diversi template pronti, tra i quali ad esempio anche WordPress e Drupal.  CloudWatch: uno degli aspetti fondamentali da tenere sotto controllo dopo aver sviluppato un’applicazione o un servizio web è quella di controllare le performance tramite un monitoring, non solo per quello che riguarda l’utilizzo dei dischi o della CPU, ma per molti altri parametri. Amazon CloudWatch è la soluzione di monitoring e allarmistica di Amazon Web Services. L’utilizzo di Simple Notification Service (SNS) permette l’invio degli allarmi tramite diversi supporti che possono essere attivati al raggiungimento di una soglia prestabilita, quindi essere avvisati immediatamente.  Elastic Beanstalk: il servizio di Amazon EC2 mette a disposizione solo potenza computazionale, la quale una volta configurata dal punto di vista sistemistico e con l’aggiunta di software specifico, può far girare qualsiasi applicazione. Per molte persone questo si traduce in un’inconveniente, perché bisogna farsi carico di tutte le problematiche legate alla configurazione e all’avvio dell’istanza virtuale prima ancora di preoccuparsi dell’applicazione. Proprio per questo Amazon ha sviluppato Elastic Beanstalk, che permette di caricare su AWS direttamente l’applicazione senza preoccuparsi di altri aspetti. In questo momento i linguaggi di supportati sono .NET, JAVA e PHP.
  • 12. AWS Pagina 12  IAM (Identity and Access Managment): tramite questo servizio è possibile controllare e gestire in maniera sicura l’accesso ai servizi e alle risorse AWS da parte dei propri utenti. Usando IAM è possibile creare e gestire utenti e gruppi in AWS e utilizzare le autorizzazioni per consentire e/o negare gli accessi alle risorse AWS. Il servizio IAM permette anche l’integrazione con gli utenti esistenti nella propria rete aziendale, inoltre mette a disposizione una serie di API per la personalizzazione e la gestione delle autorizzazioni tramite dei programmi procedurali, sarà possibile gestire utenti, ruoli, permessi e credenziali.  OpsWork: OpsWorks è un servizio di gestione delle applicazioni creato per agevolare chi utilizza un modello di sviluppo DevOps. OpsWorks può scalare in maniera automatica l’applicazione e mantenere in salute l’infrastruttura sostituendo le istanze che si bloccano. OpsWorks a differenza di Beanstalk offre maggiore flessibilità e controllo, consentendo di personalizzare i tipi di server e servizi impiegati.  Cloud Trail: è un servizio web che registra tutte le chiamate API degli AWS generate da qualsiasi sorgente come console o applicazioni e scrive dei file di log. Vengono registrate la tipologia delle chiamante, l’ora delle chiamate, l’indirizzo IP di origine, i parametri di richiesta e gli elementi di risposta restituiti dal servizio AWS.Lo storico delle chiamata AWS API prodotto da CloudTrail consente un’analisi completa riguardo la sicurezza e di tracciare il cambiamento delle risorse AWS. 5.5 Analytics Per quanto riguarda la parte relativa all’ "Analytics" l'offerta novera i seguenti servizi:  Data Pipeline: questo è un servizio web che consente di elaborare e movimentare dati tra i diversi servizi AWS e da fonti di dati on-premise a intervalli specifici. Con AWS Data Pipeline è possibile accedere ai propri dati, trasformarli, elaborarli e trasferire poi il risultato ai vari servizi: S3, RDS, DynamoDB o MapReduce (EMR). Con AWS Data Pipeline, è possibile definire flussi di lavoro basati sui dati di modo che le attività correnti dipendano dal completamento e dallo stato delle attività precedenti.  Elastic MapReduce: è un framework software introdotto da Google per la computazione distribuita su grandi quantità di dati in cluster di computer. Il nodo Map prende la richiesta del problema e l’algoritmo di risoluzione, lo suddivide in tanti sotto-problemi differenti e li distribuisce a nodi diversi. Il nodo Reduce prende le risposte di tutti i sotto-problemi e prepara la risposta definitiva. In Amazon è possibile sperimentare questa tecnica prendendo a disposizione tutti i nodi di cui abbiamo bisogno e testare l’efficacia e la velocità di un nostro algoritmo di risoluzione.  Kinesis 5.6 App Services Per quanto riguarda la parte relativa all' "App Services" l'offerta novera i seguenti servizi:  CloudSearch: questo servizio permette agli utenti di ricercare contenuti all’interno di applicazioni o siti web in modo rapido ed efficace. La tecnologia CloudSearch è la stessa utilizzata da Amazon.com per le ricerche legate ai suoi prodotti, cerca di rendere gli sviluppatori, che desiderano integrare la ricerca nei loro siti, più liberi e svincolati dalle logiche dei motori di ricerca pubblici. Utilizzando questo servizio, gli sviluppatori potranno creare un dominio di ricerca e memorizzare tutte le informazioni in un database personale, per poi personalizzare tutte le fasi di ricerca.
  • 13. AWS Pagina 13  Elastic Transcoder: è un servizio di Amazon Web Services che permette la conversione video direttamente nell’ambiente cloud, ovviamente non è un servizio adatto alla conversione dei filmati personali, che possiamo fare con un qualsiasi software installato direttamente sul nostro PC, qui parliamo di sviluppare un’applicazione web o aziendale capace di convertire in diversi formati un video immesso come file di input. Questa particolarità renderebbe più semplice la visualizzazione di un video memorizzato nel nostro cloud tra differenti device come ad esempio smartphones, tablets e PCs.  SES (Simple Email Service): permette l’invio di email tramite l’infrastruttura AWS, senza la necessità di server o postazioni dedicate. Questo è sicuramente un servizio dedicato alle aziende che devono fare azioni di Marketing tramite posta elettronica o devono gestire grandi mailing list. Chi utilizza il servizio EC2 può usufruire di 2000 email gratuite al giorno.  SNS (Simple Notification Service): è un componente molto importante dei servizi AWS e permette la notifica dei messaggi tramite diversi supporti. E’ stato aggiunto il supporto SMS mentre sono attivi da tempo Email, code dati e messaggistica HTTP/HTTPS. Ad esempio, la notifica è molto utile quando si strutturano sistemi in cluster, infatti è possibile, tramite questo componente, ricevere informazioni sullo stato di servizio da parte degli altri componenti e reagire di conseguenza.  SQS (Simple Queue Service): è uno dei primissimi servizi rilasciati da Amazon che permette tramite delle code messaggi presenti su uno o più server la distribuzione delle operazioni e quindi del carico di lavoro. Ad esempio potremmo avere un server che analizza una pagina web ed inserisce in una coda dati i riferimenti a tutte le immagini presenti in questa pagina, la coda viene analizzate da una serie di altri server che possono dividersi il lavoro e marcare il messaggio come elaborato.  SWF (Simple Workflow Service): è possibile creare un controllore di flusso per coordinare l’esecuzione di vari task secondo una logica predefinita in ambiente cloud. Questa particolarità permette il risparmio sulla scrittura di codice complesso che dovrebbe tenere sotto controllo tutte le fasi di elaborazione di un workflow che però è gestito da diverse macchine e diversi ambienti di elaborazione. Il servizio di Simple Workflow si prende carico di questa complessità e deciderà automaticamente i task da elaborare in base alle singole risposte di ogni singola unità di elaborazione. Una panoramica sui servizi Amazon AWS e che risulta essere una guida video, molto utile la troviamo ai seguenti indirizzi URL:  Parte 1 https://www.youtube.com/watch?v=LjCao_SQWfE#t=2476  Parte 2 https://www.youtube.com/watch?v=8CkMhNPKA6c#t=136 6. Esperienza diretta In merito ad un progetto per l’esame, visibile all’URL http://www.dsi.unive.it/~ammsis/2012- 13/esami.html, svolto nell’anno accademico 2012/2013 con il professore del corso di amministratore di sistema, il professor Alessandro Memo, con il titolo di “Installazione e configurazione di SSH e LDAP utilizzando il servizio Amazon EC2”, è stato installato un server Linux su una istanza virtuale ospitata dal servizio Amazon EC2. 6.1 Creazione di un'istanza EC2 Accedendo al sito www.aws.amazon.com basterà creare un account se non ne siamo ancora in possesso oppure ci si può autentificare con un account creato su www.amazon.it. Il costo del
  • 14. AWS Pagina 14 servizio è a consumo e viene tariffato ogni mese. Nel nostro caso, in un evento di H-Farm ci è stato offerto un buono di 100$, valido per un anno. Si parlerà del costo di questo servizio nel paragrafo successivo. Dopo aver acconsentito alla fatturazione dei propri servizi si accede alla console (AWS Managment Console) o se la sessione è già aperta basterà digitare sull’URL console.aws.amazon.com. A questo punto si aprirà una schermata con tutti i servizi offerti dall’azienda. Nel nostro caso specifico selezioniamo il servizio EC2 e potremmo accedere alla dashboard EC2, dove risiedono le statistiche che riguardano le risorse e i servizi attivi. Entrando nella sezione delle istanze sarà possibile lanciarne una. L’operazione di creazione di una istanza è molto semplice e semplificata da un Wizard che guida l’utente a selezionare quale versione di Linux si vuole installare, su quale architettura server, la zona dove voler installare il server (l’ubicazione fisica di tutti i server è in America), dettagli sui Kernel ID, la possibilità di aggiungere volumi EBS, creare le chiavi crittografate per poter accedere al server e infine nella schermata firewall si configura un gruppo di sicurezza nel quale si decidono le regole dei protocolli per permettere l’accesso alla macchina virtuale. Basterà attendere qualche minuto e l’istanza sarà pronta per essere subito utilizzabile dall’utente. Le operazioni successive sono molto tecniche e operate direttamente sul server e non c’è bisogno di addentrarsi nello specifico, perché andrebbero fuori dallo scopo del project work. A titolo solo informativo sulla macchina, dopo aver creato un sottodominio per facilitare l’accesso la server, sono stati installati i servizi SSH e LDAP (vedere il glossario per comprendere il significato del servizio). 6.2 Considerazioni sull'esperienza La guida permette l'accesso ad un database LDAP anche da remoto con SSH o LDAP installato su un client. Come le ben poche guide disponibili in internet, ci siamo prefissati l’obbiettivo, tramite immagini e spiegazioni dettagliate, di poter dare la possibilità di rendere immediati alcuni concetti anche ai neofiti del settore e di poter anche personalizzare ogni passaggio a proprio piacimento. I comandi così non dovranno essere semplicemente copiati ed incollati come si fa solitamente ma eventualmente riscritti e capiti per poter così affrontare problematiche future. LDAP risulterà essere talmente versatile e comodo che potrà essere utilizzato per memorizzare e gestire qualsiasi realtà aziendale anche via rete. In questo modo possiamo centralizzare la gestione dei dati con l'accoppiata utente/password per ogni servizio, sia esso unfile server, mail server, istant messagging, ecc…. Cosa ancor più potente è che la password sarà la stessa per ogni servizio. Per rendere il tutto orientato ad un ambito business, la macchina virtuale è ospitata nella piattaforma di hosting più potente al mondo, Amazon, che grazie all’orientamento cloud permette versatilità ed espansione con costi contenuti e direttamente proporzionali alla crescita della nostra azienda. Non dimentichiamo che per quanto riguarda la trasparenza economica ed assistenza tecnica ci troviamo forse di fronte ad una delle migliori aziende. Per quanta esperienza possa avere un sysadmin non potrà mai andare tutto liscio al primo comando. Tra le chicche più divertenti c’è stata la classica chiusura fuori dal server per l’errata configurazione di SSH dove ci siamo dimenticati, per poter garantire l’accesso anche senza chiave privata, di impostare oltre al parametro PasswordAuth yes anche StrictModes no. LDAP invece risulta essere un argomento di estrema importanza ma ostile a tutti, tanto che esiste una vasta documentazione e questo genera ancor più problemi. L’installazione infatti non è una delle più semplice fra i demoni di Linux e fra .conf ed .ldif ci sono molti file che vanno scritti a mano e molti comandi non sono proprio brevi od immediati. La password va assolutamente reimmessa uguale sia in fase di installazione di ldap che di configurazione tramite dpkg con conseguente obbligo di disinstallazione totale del servizio se questa regola non è rispettata. Provate per credere. Abbiamo
  • 15. AWS Pagina 15 perso parecchio tempo per cercare la chiave privata generata da cattool. Alcune volte il demone ldap ha bisogno di qualche minutino in più per essere operativo al 100%, non aspettiamoci che funzioni appena riavviato. Questa esperienza è risultata essere molto esaltante e molto produttiva vista la quantità di materiale prodotto. 7. Quanto costa Analizzare il costo completo del'intero stack di servizi AWS è piuttosto complicato. Vediamo di rispondere alle domande più comuni. 7.1 I costi in generale Per una disamina attenta dei costi, è bene conoscere le caratteristiche del singolo servizio (quelli di EC2, ad esempio, sono descritti alla pagina http://aws.amazon.com/ec2/pricing). I costi dipendono fortemente dal tipo di istanza al quale si fa riferimento. In generale, per quanto riguarda EC2, si parla di un costo orario intorno agli 8 centesimi di dollaro per istanze Linux "small" e 11.5 per le equivalenti Windows "small". I prezzi raddoppiano per istanze "medium", quadruplicano per "Large", ed arrivano fino a $0.640 all'ora per Linux, e $0.920 per le equivalenti Large su Windows. In sostanza, i costi sono in generale pesati sull'utilizzo orario di risorse fisiche. Come si è visto per EC2, si hanno dei modelli-tipo che fanno riferimento ad una fascia ben definita di impiego di risorse: CPU, memoria e spazio disco definiscono il modello di istanza (small, mini e così via). A partire da questo modello, il prezzo base contempla un numero di ore di utilizzo e di occupazione di banda. Ogni utilizzo sopra la soglia stabilita viene pagato come extra. In generale è bene analizzare sin da subito le proprie esigenze, in modo tale da limitare al massimo utilizzo di risorse oltre la soglia, perché in genere penalizza economicamente la scelta. Vista l'ampia gamma di sevizi offerti sotto l'egida di AWS, non sarebbe praticabile elencare tutte le casistiche di costi; ad ogni modo, i principi sono più o meno gli stessi per tutti i servizi offerti: esiste uno o più modelli di utilizzo, da scegliere con attenzione in base alle esigenze fondamentali; ogni utilizzo eccedente di banda, memoria, cpu, disco, numero di richieste, e così via, viene pagato extra in base ad un prezzario ben definito. Tutto è documentato sulla pagina del singolo servizio. 7.2 Le unità di misura dei costi L'unità di misura è chiaramente diversa da servizio a servizio, e generalmente viene riportata ad una tariffa oraria. Ad esempio, per l'utilizzo di DynamoDB abbiamo tariffe definite in base al Write Throughtput (1 centesimo di dollaro l'ora per 10 unità di "Write Capacity"). Non è dunque intuitivo stimare i costi complessivi a partire da questo genere di tariffe. Per questo si suggerisce di fare un buon utilizzo del free tier (ossia del periodo di prova gratuito). Il free tier permette di pesare le proprie esigenze, ed avere un campione di riferimento di quelle che sarà poi la metrica delle risorse utilizzate in ambiente di esercizio. Rimane da questo punto di vista accettabile, anche se coinvolge l'utilizzatore in questo delicato processo di valutazione dei costi, alla fine il conteggio risulta del tutto trasparente. Insomma non è semplice calcolare i costi di utilizzo di AWS; per i dettagli si rimanda alla documentazione ufficiale di Amazon, tenendo in considerazione anche il fatto che prezzi i vengano di tanto in tanto ritoccati.
  • 16. AWS Pagina 16 8. Cosa offre la concorrenza Amazon AWS si trova in diretta concorrenza con i maggiori colossi dell’IT come Windows Azure e Google App Engine. Vediamo cosa offrono i maggiori competitors. Windows Azure è una piattaforma e infrastruttura di cloud computing, creata dalla Microsoft, per costruire, sviluppare e dirigere applicazioni e servizi attraverso una rete globale di Datacenters controllati dalla Microsoft. E’ provvista di servizi Paas e Iaas e supporta differenti linguaggi di programmazione, tools e frameworks. La prima release risale al febbraio 2010. I servizi offerti vanno dall’hosting di siti web, macchine virtuali, servizi di cloud, data managment, business analytics, identità, messagistica, media services e mobile services. L’implementazione utilizza uno speciale sistema operativo che permette la gestione di diversi livelli che che utilizzano Windows server 2008 e Hyper-V, conosciuto come Microsoft Azure Hypervisor che virtualizza i servizi. La scalabilità e l’affidabilità sono controllate dal Microsoft Azure Fabric Controller in modo così che i servizi e l’ambiente non crashano se uno dei server va in crash e permette di monitorare le risorse utilizzate. Google App Engine è un PaaS (Platform as a Service) per sviluppare e hostare applicazioni web nel datacenter di Google. Le applicazioni girano su diversi server e sono sandboxed, cioè un meccanismo di sicurezza che separa i vari processi di un programma rilevandone e ispezionandone il contenuto. App Engine offre una scalabilità automatica per le applicazioni Web, allocando automaticamente più risorse all'applicazione a seconda del carico richiesto. La prima release risale al 2008 e la versione stabile è uscita quest’anno a Febbraio. Attualmente i linguaggi di programmazione supportati sono Python, Java, Go e PHP (questi ultimi due ancora in fase sperimentale). Comparandolo con altri servizi di hosting come Amazon EC2, App Engine fornisce molte più basi per rendere semplice la scrittura di applicazioni scalabili, ma ha un range limitato di applicazione che possono girare su queste infrastrutture. Altra differenza sostanziale è che l’App Engine richiede agli sviluppatori di utilizzare solamente il proprio linguaggio, le proprie APIs, e i framworks, mentre gli altri servizi permettono all’utente di installare e configurare qualsiasi software compatibile con *NIX. Infine il datastore dell’App Engine utilizza una sintassi chiamata GQL e non SQL come si potrebbe pensare. 9. Vantaggi Il cloud computing porta con se una serie di vantaggi considerevoli sia dal punto di vista economico sia tecnico. Come più volte ribadito, il cloud computing è democratico, perché l’azienda che decide di dotarsi di un’infrastruttura IT, affittando tramite cloud le strutture dei provider ha innanzitutto un notevole risparmio sui costi perché non deve dotarsi di una propria infrastruttura hardware e software. Il risparmio si ha non solo sull’acquisto, ma anche sull’installazione, sulla manutenzione ed eventualmente sulla dismissione dell’infrastruttura. Ad esempio si risparmia sui costi di un sistema di ventilazione adatto ad una sala server, sui costi elettrici per il mantenimento della sala, sui costi di intervento tecnico, sui costi di sostituzione degli hardware, sui costi di gestione dei backup, sui costi di connettività da e verso i server e sui costi del personale IT. A fronte di questo risparmio, il cloud computing e il modello Amazon AWS offrono il vantaggio del pay-per-use, ovvero si pagano solo le risorse che effettivamente vengono utilizzate. Non vi sono dunque investimenti iniziali e nessun obbligo contrattuale. Amazon in questo rappresenta il migliore modello di pagamento delle risorse, con una fatturazione che rispecchia l’uso che si fa della sua struttura.
  • 17. AWS Pagina 17 Al contrario, chi invece si dota di una sua infrastruttura, spesso effettua un investimento in risorse che vengono sfruttate solo parzialmente, con uno spreco di denaro che può arrivare anche al 90% a causa del loro inutilizzo. Infine non occorre assumere personale specializzato che si occupi della gestione dell’infrastruttura hardware/software perché questa è a carico della società che fornisce la piattaforma cloud. L’azienda, così, può concentrarsi sul suo core business. Come conseguenza del modello pay per use, si va incontro ad un ulteriore vantaggio: la scalabilità. Nel caso si abbia bisogno di più risorse, la piattaforma cloud provvederà ad allocarle in base alle richieste. Le API che consentono questo bilanciamento e adattano l’infrastruttura al bisogno computazionale sono raggiungibili in Amazon AWS anche dalle applicazioni del cliente. Infine, un ultimo vantaggio riguarda la sicurezza dei dati: le società che offrono servizi di cloud computing sono molto affidabili e spesso prevedono servizi di Disaster Recovery per recuperare i dati nel caso i data center dovessero subire qualche crash. In molti considerano l’aspetto della sicurezza più uno svantaggio che non il contrario perché temono che i dati, essendo memorizzati nel cloud, possano essere accessibili da parte di chi offre e gestisce la piattaforma. L’affidabilità e la buona fede da parte della società di cloud computing, quindi, è un elemento essenziale perché se si verificasse una qualsiasi fuga di informazione, non importa se dovuta a problemi interni o ad attacchi informatici, metterebbe a rischio la sua credibilità con tutto quello che ne consegue. 10. Conclusioni Tra i servizi remote computing, che insieme costituiscono piattaforme di cloud computing, AWS di Amazon ha conquistato una posizione predominante. Questo non rappresenta di certo una novità; ciò che può risultare sorprendente, però, è quanto AWS sia fortemente sovrastante rispetto agli altri fornitori dei simili servizi cloud. Secondo una nuova analisi Gartner, AWS offre cinque volte la capacità degli altri 14 fornitori di servizi cloud combinati tra loro e presi in considerazione da Gartner. Il fatto ancor più sorprendente è come questo risultato sia stato raggiunto spendendo in costi per le infrastrutture meno di quanto non abbiano fatto Google e Microsoft. Dal 2005, Google ha speso 20,9 miliardi di dollari per la sua infrastruttura mentre Microsoft poco meno di 18 miliardi. Amazon solo 12 miliardi. Questo sembra essere soltanto l’inizio che significherebbe per i concorrenti di Amazon un ulteriore divario. Gli investimenti della piattaforma e-commerce, infatti, continuano ad aumentare. Se con un investimento migliore è riuscito a ottenere 5 volte le capacità strutturali degli altri 14 concorrenti combinati insieme, ci si chiede fin dove possa arrivare con ulteriori introiti. Questo dovrebbe anche tranquillizzare molti analisti preoccupati per anni delle spese di Amazon che invece, dal canto suo, sembra consapevole del valore raggiunto rispetto alla concorrenza. Amazon Web Services ha quello che sembra essere un vantaggio inattaccabile, costruito non sulle spese per investimenti superiori ma una profonda comprensione di ciò che gli sviluppatori vogliono. Rendendo AWS relativamente facile da utilizzare e poco costoso, la piattaforma ha sfruttato al meglio i propri investimenti. Anche se per mantenere tale vantaggio, Amazon sembra avere dato un’accelerata al suo piano di finanziamenti. Secondo un analista di Redmonk, Stephen O’Grady, però, se tale piano di investimenti sarà finalizzato ad implementare “la caratteristica più importante del cloud computing: una modalità di accesso semplice” ed investire sugli sviluppatori, Amazon potrà mantenere senza problemi la sua leadership nel mercato del cloud computing.
  • 18. AWS Pagina 18 11. Riferimenti  http://en.wikipedia.org/wiki/Amazon_Web_Services  http://www.hostingtalk.it/amazon-aws-e-levoluzione-dal-commercio-elettronico-al-cloud- computing_-c0000062S/  http://www.hostingtalk.it/amazon-aws-il-perche-dellarchitettura-ebs-e-le-differenze-con- s3_-c0000064A/  http://www.hostingtalk.it/amazon-aws-tutti-i-servizi-spiegati-passo-dopo-passo-i-parte_- c00000636/  http://it.wikipedia.org/wiki/Cloud_computing  http://en.wikipedia.org/wiki/Cloud_computing  http://www.dsi.unive.it/~ammsis/2012-13/esami.html  http://www.techeconomy.it/2013/08/22/aws-di-amazon-si-conferma-leader-del-mercato- cloud/  https://otherplus.com/tech/guide/amazon-aws/  http://www.slideshare.net/AmazonWebServices/viaggio-attraverso-il-cloud-cos-aws  http://www.html.it/articoli/cos-e-il-cloud-2/  http://en.wikipedia.org/wiki/Microsoft_Azure  http://en.wikipedia.org/wiki/Google_App_Engine  http://www.ilsole24ore.com/art/tecnologie/2013-11-06/amazon-web-services-cloud- risorsa-innovare-092814.shtml?uuid=ABeTtnb  http://www.stenoweb.it/it/ubuntusbs  “Ubuntu Small Business Server” di Stefano Rigo  https://www.youtube.com/watch?v=LjCao_SQWfE#t=2476  https://www.youtube.com/watch?v=8CkMhNPKA6c#t=136