Amazon Web Services




   Castelfranco Veneto, 29 Maggio 2012




                           Michele Stecca
Amazon Web Services (1/6)
• E’ un IaaS Cloud Provider
• Costituito da 8 Data Center (DC) chiamati Region:
   – 4 in US (di cui 1 dedicato alla PA chiamato GovCloud)
   – Irlanda, Giappone, Singapore, Brasile
• Ogni Region è costituita da più Availability Zones – AZ.
  Le AZ sono progettate in modo che un problema in una
  AZ non si rifletta sulle altre AZ.
Amazon Web Services (2/6)
“Availability Zones are distinct locations that are
  engineered to be insulated from failures in other
  Availability Zones and provide inexpensive, low latency
  network connectivity to other Availability Zones in the
  same Region. By launching instances in separate
  Availability Zones, you can protect your applications from
  failure of a single location”
                                dalla Documentazione di AWS

  20 Luglio 2008: un failure in una AZ causa disservizio in
    altre AZ collocate in altre Region

  21 Aprile 2011: un failure in una AZ causa disservizio in
    altre AZ collocate nella stessa Region. Tra gli altri, anche
    Foursquare e Instagram risentono del problema di AWS
Amazon Web Services (3/6)
• Nel mondo sono presenti 23 Edge Location che
  costituiscono la Content Delivery Network di
  Amazon (nell’immagine mancano Milano e San Paolo
  che sono state aggiunte di recente).
Amazon Web Services (4/6)
Principali componenti:
• Amazon EC2 (macchine virtuali chiamate AMI)
• S3 (Simple Storage Service)
   – Memorizzazione di dati “in-the-cloud”
   – Replicazione automatica
   – Tariffazione a traffico
• EBS (Elastic Block Storage)
   – Solitamente associato alle AMI
• CloudWatch (monitoraggio risorse)
• SQS (Simple Queue Service)
• CloudFront (Content Delivery Network)
   – Dati statici come CSS, immagini, ecc.
• Elastic-cache (memcache in the Cloud)
Amazon Web Services (5/6)
Principali componenti (continua):
• Database
   – Gestione diretta da parte dell’utente (sconsigliata)
   – SimpleDB (noSql DB)
   – RDS (Relational Database Service, per es. MySQL oppure
     Oracle)
   – DynamoDB (noSql DB con funzionalità avanzate)
• MapReduce (Hadoop integrato nel sistema)
• ELB: Elastic Load Balancing
• Ec2tools: supporto alla creazione di AMI

Nota: tutti i vari servizi sono utilizzabili anche mediante
  Web Service
Amazon Web Services (6/6)
Tariffazioni in AWS per quanto riguarda Amazon EC2:
• Pay-as-you-go     (per    es.   0.0001    cents/hour).
  Attenzione ai costi delle macchine Windows…
• Reserved Instances (per es. 100 dollari/year)
• Spot Instances

Altri componenti vengono tariffati in base al traffico
• ELB
• CloudFront*
• S3
• …
Elastic Load Balancing (1/3)
• L’ELB permette di implementare l’Autoscaling
• L’utente può impostare delle soglie che, una volta
  superate, possono scatenare l’accensione (o
  spegnimento) di macchine virtuali. Esempi:
   – Se l’utilizzazione di CPU è superiore all’80% per più di 2
     minuti accendi una macchina;
   – Se il traffico in entrata è inferiore a 10MB/s spegni una
     macchina;
   – Ecc.
• L’ELB è in grado di gestire diversi protocolli (HTTP,
  TCP, ecc.)
• L’ELB bilancia il carico tra macchine in esecuzione
  in diverse AZ
Elastic Load Balancing (2/3)




       (Source: Amazon Web Services web site)
Elastic Load Balancing (3/3)
• E se non usassi l’ELB?




            (Source: Amazon Web Services web site)
Q&A

           Grazie per l’attenzione!

Contatti
E-mail:
  m.stecca@cipi.unige.it
Twitter:
 @steccami

Cloud Amazon IaaS aws

  • 1.
    Amazon Web Services Castelfranco Veneto, 29 Maggio 2012 Michele Stecca
  • 2.
    Amazon Web Services(1/6) • E’ un IaaS Cloud Provider • Costituito da 8 Data Center (DC) chiamati Region: – 4 in US (di cui 1 dedicato alla PA chiamato GovCloud) – Irlanda, Giappone, Singapore, Brasile • Ogni Region è costituita da più Availability Zones – AZ. Le AZ sono progettate in modo che un problema in una AZ non si rifletta sulle altre AZ.
  • 3.
    Amazon Web Services(2/6) “Availability Zones are distinct locations that are engineered to be insulated from failures in other Availability Zones and provide inexpensive, low latency network connectivity to other Availability Zones in the same Region. By launching instances in separate Availability Zones, you can protect your applications from failure of a single location” dalla Documentazione di AWS 20 Luglio 2008: un failure in una AZ causa disservizio in altre AZ collocate in altre Region 21 Aprile 2011: un failure in una AZ causa disservizio in altre AZ collocate nella stessa Region. Tra gli altri, anche Foursquare e Instagram risentono del problema di AWS
  • 4.
    Amazon Web Services(3/6) • Nel mondo sono presenti 23 Edge Location che costituiscono la Content Delivery Network di Amazon (nell’immagine mancano Milano e San Paolo che sono state aggiunte di recente).
  • 5.
    Amazon Web Services(4/6) Principali componenti: • Amazon EC2 (macchine virtuali chiamate AMI) • S3 (Simple Storage Service) – Memorizzazione di dati “in-the-cloud” – Replicazione automatica – Tariffazione a traffico • EBS (Elastic Block Storage) – Solitamente associato alle AMI • CloudWatch (monitoraggio risorse) • SQS (Simple Queue Service) • CloudFront (Content Delivery Network) – Dati statici come CSS, immagini, ecc. • Elastic-cache (memcache in the Cloud)
  • 6.
    Amazon Web Services(5/6) Principali componenti (continua): • Database – Gestione diretta da parte dell’utente (sconsigliata) – SimpleDB (noSql DB) – RDS (Relational Database Service, per es. MySQL oppure Oracle) – DynamoDB (noSql DB con funzionalità avanzate) • MapReduce (Hadoop integrato nel sistema) • ELB: Elastic Load Balancing • Ec2tools: supporto alla creazione di AMI Nota: tutti i vari servizi sono utilizzabili anche mediante Web Service
  • 7.
    Amazon Web Services(6/6) Tariffazioni in AWS per quanto riguarda Amazon EC2: • Pay-as-you-go (per es. 0.0001 cents/hour). Attenzione ai costi delle macchine Windows… • Reserved Instances (per es. 100 dollari/year) • Spot Instances Altri componenti vengono tariffati in base al traffico • ELB • CloudFront* • S3 • …
  • 8.
    Elastic Load Balancing(1/3) • L’ELB permette di implementare l’Autoscaling • L’utente può impostare delle soglie che, una volta superate, possono scatenare l’accensione (o spegnimento) di macchine virtuali. Esempi: – Se l’utilizzazione di CPU è superiore all’80% per più di 2 minuti accendi una macchina; – Se il traffico in entrata è inferiore a 10MB/s spegni una macchina; – Ecc. • L’ELB è in grado di gestire diversi protocolli (HTTP, TCP, ecc.) • L’ELB bilancia il carico tra macchine in esecuzione in diverse AZ
  • 9.
    Elastic Load Balancing(2/3) (Source: Amazon Web Services web site)
  • 10.
    Elastic Load Balancing(3/3) • E se non usassi l’ELB? (Source: Amazon Web Services web site)
  • 11.
    Q&A Grazie per l’attenzione! Contatti E-mail: m.stecca@cipi.unige.it Twitter: @steccami