PRD-002 - Amazon Web Services
-
Upload
cloud-aws -
Category
Technology
-
view
64 -
download
3
Transcript of PRD-002 - Amazon Web Services
Community - Cloud AWS su Google+
Cloud AWS
Amazon Web Services
cloud-aws.com
Panoramica sui servizi
Hangout 02 del 23.12.2013
● Davide Riboldi● Massimo Della Rovere
In questo hangout vedremo una panoramica generale di tutti i servizi presenti in amazon web services.
CLOUD AWS
#cloudaws
Amazon Web Services - Servizi disponibili
Cloud AWS
● In questa presentazione faremo una piccola panoramica sui 26 servizi presenti su Amazon Web Services, suddivisi in sei gruppi principali.
Compute &
Networking
Storage &
CDN
Sviluppo&
Gestione
DatabaseSQL/NoSQL
● Per ogni servizio AWS faremo un hangout dedicato, escludendo il servizio EC2 che necessità sicuramente di più incontri per essere affrontato in maniera dettagliata.Application
ServicesAnalytics
Amazon Web Services - Servizi disponibili
Cloud AWS
EC2 S3 DynamoDB CloudFormation SES
SNS
SWF
SQS
CloudSearch
Elastic Transcoder
CloudWatch
Elastic Beanstalk
IAM
ElastiCache
RDS
Redshift
Cloudfront
Glacier
Storage Gateway
Route 53
VPC
Direct Connect
MapReduce
Data Pipeline
OpsWorks
Compute & Networking Storage & CDN Database Sviluppo & Gestione Applicazioni
Analytics
CloudTrail
Amazon Web Services - Compute & Networking
Cloud AWS
Servizio Pagina ufficiale Guida
EC2 http://aws.amazon.com/ec2/
Route 53 http://aws.amazon.com/route53/ http://goo.gl/6LU1hE
VPC http://aws.amazon.com/vpc/ http://goo.gl/3K89g1
Direct Connect http://aws.amazon.com/directconnect/ http://goo.gl/uFJShc
Amazon Web Services - EC2
Cloud AWS
● Un servizio web che fornisce capacità di elaborazione dati. Amazon EC2 fornisce tramite la virtualizzazione la possibilità di scegliere tra diversi sistemi operativi.
● Il servizio EC2 può essere gestito tramite una console web o tramite la gestione delle API. Si possono eseguire operazioni di avvio, termine e chiusura.
● Amazon EC2 mette a disposizione una serie di servizi avanzati per la nostra istanza, come ad esempio il bilanciamento del traffico, il disaster recovery, etc, ect.
Amazon Web Services - EC2 (esempio)
Cloud AWS
Istanze
micro 0.020 $
small 0.065 $
medium 0.130 $
large 0.260 $
altre 0.520 $
LOAD BALANCER
ELASTIC IP
ELASTIC BLOCK STORE
FIREWALL
SPOT/RESERVED
aws.amazon.com/ec2/pricing/
Amazon Web Services - Route 53
Cloud AWS
● Un servizio DNS ad alta disponibilità e scalabilità progettato per integrarsi con i servizi AWS come ad esempio EC2, S3, CloudFront etc.
● Con questo servizio potete gestire un numero illimitato di domini ed usare anche delle feature avanzate di load balancing come Weighted Resource Record Sets.
● Essendo un servizio completo di DNS è possibile utilizzare Route 53 per la risoluzione DNS di indirizzamenti e servizi esterni agli AWS.
Amazon Web Services - Route 53 (esempio)
Cloud AWS
Route53
Request
DNSResolver
EdgeLocation
LoadBalancer
Amazon Web Services - VPC
Cloud AWS
● Amazon VPC (Virtual Private Cloud) mette a disposizione una sezione isolata all’interno di AWS dove è possibile lanciare risorse AWS in una rete virtuale privata.
● Pieno controllo della rete virtuale. E’ possibile scegliere il proprio range di indirizzamento, le sottoreti, la configurazione delle tabelle di routing e i gateway.
● E’ possibile mettere in comunicazione la rete VPC con la propria rete aziendale attraverso una VPN utilizzando gli standard ipsec. Come avviene dall’esterno dell’azienda.
Amazon Web Services - Direct Connect
Cloud AWS
● 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.
● Uno dei punti deboli è il collegamento, infatti i servizi AWS vengono apprezzati sulle risorse pubbliche mentre sono più problematici in quelle private con VPN.
● Sono messe a disposizione diverse tipologie di collegamento con differenti velocità, i costi dipendono dalla regione geografica e dalle caratteristiche.
Amazon Web Services - Direct Connect (esempio)
Cloud AWS
AziendaDirect Connect
Sicurezza
Performance Scalabilità
Flessibilità
Amazon Web Services - Storage & CDN
Cloud AWS
Servizio Pagina ufficiale Guida
S3 http://aws.amazon.com/s3/ http://goo.gl/P8MYLN
Cloudfront http://aws.amazon.com/cloudfront/ http://goo.gl/hmAATg
Glacier http://aws.amazon.com/glacier/ http://goo.gl/1PRlTZ
Storage Gateway http://aws.amazon.com/storagegateway/ http://goo.gl/RajNjS
Amazon Web Services - S3
Cloud AWS
● S3 è un servizio di “storage online” dove è possibile memorizzare e recuperare grandi quantità di dati, in qualsiasi momento e da qualsiasi punto del web.
● Questo servizio può essere utilizzato anche come backup, sia per servizi AWS come ad esempio EC2, ma anche per server aziendali e postazioni personali.
● S3 mette a dispozione anche funzionalità avanzate come pubblicazione di siti statici, gestione delle revisioni, utility a linea di comando e autorizzazioni.
paginaweb
CSSimage
ect
Amazon Web Services - S3 (esempio)
Cloud AWSCloud AWS
S3 S3
postazione risorse statiche
S3
web statico
www.dominio.com
Amazon Web Services - Cloudfront
Cloud AWS
● CloudFront è un servizio web per la distribuzione di contenuti statici o in streaming (nel caso di file video) ad alta velocità e con bassa latenza.
● Per la configurazione basta associare la risorsa che abbiamo su S3 a CloudFront e automaticamente questa sarà replicata nei edge point sparsi nel mondo.
● La replica è l’aggiornamento delle risorse statiche che vengono modificate viene gestito automaticamente da Amazon senza dover eseguire operazioni aggiuntive.
Amazon Web Services - Cloudfront (esempio)
Cloud AWS
InternetRoute
53
refresh
esempio.com/img.jpgbucket
S3
write
Amazon Web Services - Glacier
Cloud AWS
● Glacier è un servizio di storage online a basso costo sempre basato su S3 e offre spazio di storage sicuro e durevole per l'archiviazione dati di backup.
● Glacier è ottimizzato per dati che vengono letti raramente e per il quale i tempi di recupero più elevati non costituiscono nessun problema.
● Il caricamento, il download e la cancellazione richiedono programmazione. Amazon Glacier è supportato da AWS SDK Java, .NET, PHP e Python.
ManagementConsole AWS
Amazon Web Services - Glacier (esempio)
Cloud AWS
Upload archivio di backup
Download archivio di backupda 3.5 a 4.5 ore dopo la richiesta
21
3
Richiesta Esecuzione Download
Creazione
Sicurezza
Notifiche
Amazon Web Services - Storage Gateway
Cloud AWS
● AWS Storage gateway è un servizio di connessione tra il proprio datacenter e il cloud di Amazon che permette la sincronizzazione automatica delle unità disco.
● Se si dovesse rompere qualche disco locale, possiamo ripristinarlo velocemente da Amazon S3 e riavviare il sistema al suo funzionamento normale.
● Se invece dovessimo avere un guasto generale che non ci permette una ripartenza immedita, possiamo avviare delle istanze EC2 e ripristinare le snapshot.
Amazon Web Services - Storage Gateway (esempio)
Cloud AWS
Storagegateway
VM
SSL
Datacenter
AWS StorageGateway
S3
EBS + EC2
Amazon Web Services - Database
Cloud AWS
Servizio Pagina ufficiale Guida
DynamoDB http://aws.amazon.com/dynamodb/ http://goo.gl/rooWrP
RDS http://aws.amazon.com/rds/ http://goo.gl/azUuwh
ElastiCache http://aws.amazon.com/elasticache/ http://goo.gl/SNcYyC
Redshift http://aws.amazon.com/redshift/
Amazon Web Services - DynamoDB
Cloud AWS
● Gestione completa di un database NoSQL in cloud. 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 dal sito amazon.com, i quali avevano dei limiti sulla dimensione del dataset.
● Il servizio di DynamoDB non avrà limiti di dimensione legati al dataset. Il servizio ci svincola anche dalle problematiche di backup e recovery.
Amazon Web Services - RDS
Cloud AWS
● Relational Database Service: Un servizio web per la gestione di un database relazionale direttamente nel cloud da integrare con gli altri servizi AWS.
● Semplificazione delle attività di backup, scalabilità e patching. Al momento i database SQL disponibili sono (MySQL, Postgres, Oracle e Microsoft SQL Server).
● Con questa tecnica non saremo costretti ad installare un software di database sulle nostre istanze virtuali, liberandole anche dal carico di lavoro richiesto.
Amazon Web Services - RDS (esempio)
Cloud AWS
EC2
EC2
EC2
EC2
Internet
ZO
NA
A
ZO
NA
B
LoadBalancer
Richiesta della pagina web
Amazon Web Services - ElastiCache
Cloud AWS
● Gestione semplificata di un cluster di caching RAM. Questo servizio supporta due motori di cache open-source: Memcached, Redis.
● ElasticCache migliora le prestazioni delle applicazioni, recuperano i dati dalla cache gestita in memoria invece di basarsi sempre sui database residenti sul disco.
● Su AWS questa gestione diventa molto semplice e incredibilmente scalabile. Si possono generare con pochi click server di cache con oltre 200G di RAM.
Amazon Web Services - Redshift
Cloud AWS
● Con questo servizio possiamo crearci in pochissimi minuti un sistema di data warehouse ed eseguire tutte le query SQL di database che necessitiamo.
● Con Redshift si possono abbattere tutti i costi iniziali di un sistema data warehouse ed evitare tutte le complessità legate a questa tipologia di soluzione.
● Utilizzando Redshift possiamo pensare solo alla gestione dei dati e non preoccuparci della complessità legata alla struttura hardware necessaria.
Amazon Web Services - Sviluppo & Gestione
Cloud AWS
Servizio Pagina ufficiale Guida
CloudFormation http://aws.amazon.com/cloudformation/ http://goo.gl/argDxu
CloudWatch http://aws.amazon.com/cloudwatch/ http://goo.gl/GazPgS
Elastic Beanstalk http://aws.amazon.com/elasticbeanstalk/ http://goo.gl/WTGsev
IAM http://aws.amazon.com/iam/http://goo.gl/W3P2NK
OpsWorks http://aws.amazon.com/opsworks/
CloudTrail http://aws.amazon.com/cloudtrail/ http://goo.gl/7zEG0T
Amazon Web Services - CloudFormation
Cloud AWS
● Con il servizio CloudFormation è possibile creare dei template per la creazione di configurazioni predefinite che possono essere avviate senza passaggi manuali.
● Potremmo preparare una template che configuri la partenza di una istanza con uno specifico OS, elenco di software da installare e avvio dei servizi richiesti.
● Sul sito ufficiale si trovano anche template già pronti per le configurazioni più comuni, ad esempio sono presenti template per WordPress, Joomla e Drupal.
Amazon Web Services - CloudFormation (esempio)
Cloud AWS
EC2 EC2
EC2 EC2
RDS RDSTem
plate
CloudFormation
Amazon Web Services - CloudWatch
Cloud AWS
● Uno degli aspetti fondamentali da tenere sotto controllo dopo aver sviluppato un’applicazione è quella di controllare le performance tramite un monitoring.
● Amazon CloudWatch è la soluzione di monitoring e allarmistica di AWS. L’utilizzo di Simple Notification Service (SNS) permette l’invio degli allarmi.
● Le metriche presenti in CloudWatch posso anche essere usate per le funzioni di auto scaling o essere considerate tramite degli script personalizzati.
Amazon Web Services - CloudWatch
Cloud AWS
RISORSE AWS
CUSTOM DATAMETRICHE Statistiche
Allarmi
Cloudwatch
Amazon Web Services - Elastic Beanstalk
Cloud AWS
● Il servizio EC2 mette a disposizione solo potenza computazionale, la quale una volta avviata e configurata può far girare qualsiasi applicazione.
● Per molti questo si traduce in un’inconveniente, perchè bisogna farsi carico di tutte le problematiche legate alla configurazione e all’avvio dell’istanza virtuale.
● Elastic Beanstalk permette di caricare l’applicazione senza preoccuparsi di altro. I linguaggi supportati sono .NET, Java, PHP, Node.js, Python e Ruby.
Amazon Web Services - Elastic Beanstalk
Cloud AWS
EC2 Instance (1)
application
tomcat
apache
amazon linux
EC2 Instance (n)
application
tomcat
apache
amazon linux
LOAD BALANCER
AUTO SCALING
VERSIONI
EDITOR
Amazon Web Services - IAM
Cloud AWS
● Identity and Access Management: Tramite questo servizio è possibile 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 tramite ruoli e permessi.
● Il servizio IAM permette anche l’integrazione con gli utenti esistenti nella propria rete aziendale, inoltre mette a disposizione una serie di API.
Amazon Web Services - OpsWorks
Cloud AWS
● OpsWorks è un servizio di gestione delle applicazioni creato per agevolare chi utilizza un modello di sviluppo DevOps, ulteriori info http://it.wikipedia.org/wiki/Devops
● OpsWorks può scalare in maniera automatica l'applicazione e mantenere in salute l'infrastruttura sostituendo automaticamente le istanze che si bloccano.
● OpsWorks a differenza di Beanstalk offre maggiore flessibilità e controllo, consentendo di personalizzare i tipi di server e servizi che verranno impiegati.
Amazon Web Services - OpsWorks
Cloud AWS
A stack is a set of Amazon EC2 instances. AWS resources, and configurations that servers a single purpose. For example, one stack might be used for your staging envronment and another for production.
A layer is a blueprint for setting up and configuring a set of instances and related resources such as volumes and Elastic IPs. OpsWorks provides a set o bult-in layers and makes it easy to create custom layers.
Simply tell OpsWorks where to find yourcode and define any additional configuration tasks. OpsWorks take care of deploying your app the way you want.
Scale your stack based on time or load. Clone your production stack to a different region. Setup user permission and access.
Amazon Web Services - CloudTrail
Cloud AWS
● AWS CloudTrail è 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.
Amazon Web Services - CloudTrail
Cloud AWS
AWS Management Console
AWS SDK Applications
AWS CLI
AWSCloudTrail
S3Bucket
Log Analysis Apps
IAM
EC2
RDS EBS
VPC
RedShift
Amazon Web Services - Application Services
Cloud AWS
Servizio Pagina ufficiale Guida
SES http://aws.amazon.com/ses/ http://goo.gl/BeCd42
SNS http://aws.amazon.com/sns/ http://goo.gl/mVVTKr
SQS http://aws.amazon.com/sqs/ http://goo.gl/mdn8T6
SWF http://aws.amazon.com/swf/
Elastic Transcoder http://aws.amazon.com/elastictranscoder/ http://goo.gl/QDZWwQ
CloudSearch http://aws.amazon.com/cloudsearch/ http://goo.gl/WtfLLY
Amazon Web Services - SES
Cloud AWS
● Simple Email Service: Questo servizio permette l’invio di email direttamente 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.
● Per chi utilizza regolamente il servizio EC2 può usufruire di 2000 email gratuite al giorno. Utile per gestire tutti gli avvisi a livello sistemistico.
Amazon Web Services - SNS
Cloud AWS
● Simple Notification Service: Questo servizio è un componente molto importante di AWS e permette la notifica dei messaggi tramite diversi supporti.
● E’ stato aggiunto il supporto SMS (per ora solo su numeri di telefono USA) mentre sono attivi da tempo email, code dati e messaggistica HTTP/HTTPS.
● La notifica è molto utile quando si strutturano sistemi in cluster, infatti è possibile ricevere informazioni sullo stato di altri componenti e reagire di conseguenza.
Amazon Web Services - SNS
EMAILEMAIL/JSON
HTTPS HTTPAMAZON
SQSSMS
WEB SERVERS SQSQUEQUE
APPLICATIONS CLOUDWATCH
Cloud AWS
Amazon Web Services - SQS
Cloud AWS
● 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.
● Potremmo avere un server che analizza una pagina web ed inserisce in una coda 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 completato.
Amazon Web Services - SQS
Cloud AWS
WEBSERVER
Response Queue
Request Queue
PHOTO
PHOTO
PHOTO
PHOTO
PHOTOPROCESSING
SERVER
EC
2 In
stan
ces
Amazon S3
Amazon Web Services - SWF
Cloud AWS
● Simple Workflow Service: Tramite questo servizio è possibile creare un controllore di flusso per coordinare l’esecuzione di vari task secondo una logica predefinita.
● 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.
● Il servizio di SWF si prende carico di questa complessità e deciderà automaticamente i task da elaborare in base alle singole risposte di ogni singola unità di task.
Amazon Web Services - SWF
Cloud AWS
ORDINE
PREPARAZIONE MERCE
CONFERMA PAGAMENTO
CONSEGNA MERCE
CARTA DI CREDITO
Amazon Web Services - Elastic Transcoder
Cloud AWS
● Amazon Elastic Transcoder è un servizio di transcodifica o conversione di file multimediali audio e video elaborato direttamente in ambiente cloud.
● Grazie all'utilizzo di questo servizio è possibile sviluppare applicazioni web per poter eseguire in automatico la conversione di file multimediale in diversi formati.
● Il servizio permette di convertire i file multimediali dal loro formato originale in versioni che possono essere agevolmente visualizzati su smartphone, pc o tablets.
Amazon Web Services - CloudSearch
Cloud AWS
● Questo servizio permette agli utenti di ricercare contenuti all’interno di applicazioni o siti web in modo rapido ed efficace e svincolato dai motori di ricerca.
● La tecnologia CloudSearch è un servizio molto affidabile in quanto è la stessa utilizzata da amazon.com per le ricerche legate ai suoi prodotti.
● Utilizzando questo servizio, gli sviluppatori potranno creare un dominio di ricerca e memorizzare tutte le informazioni in un database personale.
Amazon Web Services - Analytics
Cloud AWS
Servizio Pagina ufficiale Guida
Elastic MapReduce http://aws.amazon.com/elasticmapreduce/ http://goo.gl/u3yI1R
Data Pipeline http://aws.amazon.com/datapipeline/ http://goo.gl/qEGmKd
Amazon Web Services - Elastic MapReduce
Cloud AWS
● Amazon Elastic MapReduce è un servizio web che consente alle aziende, ai ricercatori, agli analisti di dati e sviluppatori di elaborare in modo semplice enormi quantità di dati.
● Amazon EMR utilizza Hadoop, un framework open source che permette di distribuire e processare i dati attraverso un cluster ridimensionabile di istanze EC2.
● Amazon EMR trova il suo impiego in una grande varietà di applicazioni tra cui: l'analisi dei log, l'indicizzazione web, il data warehousing, machine learning, l'analisi finanziaria, la simulazione scientifica e bioinformatica.
Amazon Web Services - Elastic MapReduce
Cloud AWS
Amazon S3
Input Data
Output Results
Amazon EMR job flow
Amazon CloudWatch
Amazon EC2 Instances
Amazon Web Services - Data Pipeline
Cloud AWS
● AWS Data Pipeline è 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à dipendano dal completamento delle precedenti attività.
Amazon Web Services - Data Pipeline
Cloud AWS
Task: Copy Log Files
Task: Launch Data Analysis
EC2 S3 EMR
AWS Data Pipeline
Daily Task Weekly Task
Amazon Web Services - Ringraziamenti
Cloud AWS
Cloud Computing
Amazon Web Service 1
AmazonSNS
AmazonMFA
AmazonCloudFront
AmazonFree Trial
AmazonS3
AmazonGlacier
Amazon Web Service 2
Video consigliati