SlideShare une entreprise Scribd logo
1  sur  22
Designing Fault-Tolerant Applications
         Miles Ward
         Enterprise Solutions Architect
Building Fault-Tolerant Applications on AWS

       White paper published
       last year

       Sharing best practices

       We’d like to hear your
       best practices as well




http://media.amazonwebservices.com/AWS_Building_Fault_Tolerant_Applications.pdf
                                     Copyright © 2011 Amazon Web Services
AWS Fault-Tolerant Building Blocks
Two approaches:
  1) AWS services that are inherently fault-tolerant and highly
  available:
       • Amazon Simple Storage Service (S3)
       • Amazon SimpleDB
       • Amazon SQS, SNS, SES, CloudWatch, CloudFront, and more.

  2) AWS services that offer tools and features to design fault-
  tolerant and highly available systems:
       • Amazon Elastic Compute Cloud (EC2)
           – Availability Zones, Elastic IPs, EBS, etc.
           – Flexible to trade off budget vs. time to recovery
       • Amazon Relational Database Service (RDS)
           – Multi-AZ Deployments
           – Backup/Restore



                            Copyright © 2011 Amazon Web Services
Amazon EC2 Architecture

       Amazon                              Region
       Machine                         Availability Zone
     Image (AMI)                                                         Ephemeral
                                                                          Storage
                                        EC2 Instance

                                                               Elastic
     CloudWatch                                                 Block
                                                               Storage

                                          Security
                                          Group(s)

         Auto                                                    Amazon S3
        Scaling                           Elastic IP
                                                             EBS             EBS
                                          Address          Snapshot        Snapshot




                                       Load Balancing
Copyright © 2011 Amazon Web Services
EC2 Features

 AMI
   Packaged, reusable functionality

 On-Instance Storage
   Lifetime tied to instance lifetime
   AFR like standard hard disk (around 5%)

 EBS Volumes
     Lifetime independent of any particular EC2 instance
     Redundant within an AZ
     AFR is 0.1% to 0.5%
     Incorporate volume mappings into your architecture
     Use EBS snapshot backups




                       Copyright © 2011 Amazon Web Services
EC2 Features

 Elastic IP Addresses
   Map to any EC2 instance within a given Region
   Detach from failed instance; map to replacement

 Auto Scaling
   Two ways to use it:
     • Respond to changing conditions by adding or terminating EC2
       instances (attach to CloudWatch metrics)
     • Maintain a fixed number of instances running, replacing them if
       they fail or become unhealthy

 Reserved Instances
   Guarantees capacity for when it’s needed




                        Copyright © 2011 Amazon Web Services
EC2 Features

 CloudWatch Alarms




                Copyright © 2011 Amazon Web Services
EC2 Features

 Elastic Load Balancing
   Distributes incoming traffic across multiple instances
   Sends traffic only to healthy instances




                     Copyright © 2011 Amazon Web Services
Amazon EC2 Regions and Availability Zones

   US East (Northern Virginia)                                 EU (Dublin)


    Availability         Availability
     Zone A               Zone B
                                                     Availability      Availability
                                                      Zone A            Zone B
    Availability         Availability
     Zone C               Zone D




Amazon EC2 Regions:
US East (Northern Virginia) / US West (Northern California) /
EU (Ireland) / Asia Pacific (Singapore) / Asia Pacific (Tokyo)




                               Copyright © 2011 Amazon Web Services
Availability Zone Characteristics and Advice

 Distinct physical locations

 Low-latency network connections between AZs

 Independent power, cooling, network, security

 Always partition app stacks across 2 or more AZs

 Elastic Load Balance across instances in multiple AZs




                    Copyright © 2011 Amazon Web Services
Proper Use of Multiple Availability Zones
                       Centralized Services (S3 Backups, SimpleDB, etc)

                    Availability Zone A                           Availability Zone B
                   Database Server or                             Database Server or
                    RDS DB Instance                                RDS DB Instance

                       App Server                                    App Server

                      Web Server                                    Web Server


                                       Requests and Health Checks


                                          Elastic Load Balancer




Copyright © 2011 Amazon Web Services       Incoming Requests
Region Characteristics and Advice

 Regions are:
   Functionally separate
   Composed of 2 or more AZs
   Connected via the public internet


 Use regions to:
   Have functionality geographically close to customers
   Comply with national laws and practices
   Implement a DR strategy
RDS Fault-Tolerant Features

 Multi-AZ Deployments
   Synchronous replication across AZs
   Automatic fail-over to standby replica
 Automated Backups
   Enables point-in-time recovery of the DB instance
   Retention period configurable
 Snapshots
   User initiated full backup of DB
   New DB can be created from snapshots
AWS Architectural
   Guidance



     Copyright © 2011 Amazon Web Services
Design For Failure – Basic Principles

  Avoid single points of failure

  Assume everything fails, and design backwards

  Goal: Applications should continue to function even if the
  underlying physical hardware fails or is removed or
  replaced.

  Design your recovery process

  Trade off business needs vs. cost of high -availability




                     Copyright © 2011 Amazon Web Services
Design For Failure – Use AWS Building Blocks

  Use Elastic IP addresses for consistent and re -
  mappable routes
  Use multiple Amazon EC2 Availability Zones (AZs )
  Replicate data across multiple AZs
   Example: Amazon RDS Multi-AZ mode

  Use real-time monitoring (Amazon CloudWatch)
  Use Amazon Elastic Block Store (EBS) for persistent
  file systems
  Take EBS Snapshots and use S3 for backups




                    Copyright © 2011 Amazon Web Services
Copyright ©
                                                                2011 Amazon
                                                                Web Services
 Build Loosely Coupled Systems

    Use independent components

    Design everything as a Black Box

    Load-balance and scale clusters

    Think about graceful degradation

Amazon SQS as Buffers
   Tight              Controller           Controller       Controller
                         A                    B                C
   Coupling
                     Q                 Q                Q
    Loose Coupling
                          Controller       Controller       Controller
    using Queues             A                B                C
Implement Elasticity

 Don’t assume health or fixed location of components

 Use designs that are resilient to reboot and re-launch

 Bootstrap your instances –
   “Who am I am and what is my role?”

 Enable dynamic configuration

 Use configurations in SimpleDB for bootstrapping

 Use Auto Scaling

 Use Elastic Load Balancing on each tier




                        Copyright © 2011 Amazon Web Services
Implementing Elasticity
Elastic Load Balancing, CloudWatch, and AutoScaling


                          Elastic Load
                           Balancing




                                 Utilization

    Auto Scaling                                           CloudWatch
                                                            Metrics



                    Copyright © 2011 Amazon Web Services
Copyright © 2011
                                                                                     Amazon Web

Use a Chaos Monkey                                                                   Services




 From the Netflix blog:




 Simple monkey:
   Kill any instance in the account

 Complex monkey:
   Kill instances with specific tags
   Introduce other faults (e.g. connectivity via Security Group)

 Human monkey:
   Kill instances from the AWS Management Console




         http://techblog.netflix.com/2010/12/5-lessons-weve-learned-using-aws.html
AWS Architecture Center

 aws.amazon.com/architecture

 White papers:
     Cloud architectures
     Building fault-tolerant applications
     Web hosting best practices
     Leveraging different storage options
     AWS security best practices




                      Copyright © 2011 Amazon Web Services
Thank You!




 Copyright © 2011 Amazon Web Services

Contenu connexe

Tendances

AWS Webcast - Best Practices in Architecting for the Cloud
AWS Webcast - Best Practices in Architecting for the CloudAWS Webcast - Best Practices in Architecting for the Cloud
AWS Webcast - Best Practices in Architecting for the CloudAmazon Web Services
 
AWS and Serverless with Alexa
AWS and Serverless with AlexaAWS and Serverless with Alexa
AWS and Serverless with AlexaRory Preddy
 
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012Amazon Web Services
 
Journey Through the AWS Cloud; Application Services
Journey Through the AWS Cloud; Application ServicesJourney Through the AWS Cloud; Application Services
Journey Through the AWS Cloud; Application ServicesAmazon Web Services
 
AWSome Day, Milan | 5 Marzo 2015 - Contenuto Tecnico (Danilo Poccia - AWS Sol...
AWSome Day, Milan | 5 Marzo 2015 - Contenuto Tecnico (Danilo Poccia - AWS Sol...AWSome Day, Milan | 5 Marzo 2015 - Contenuto Tecnico (Danilo Poccia - AWS Sol...
AWSome Day, Milan | 5 Marzo 2015 - Contenuto Tecnico (Danilo Poccia - AWS Sol...lanfranf
 
Aws tutorial for beginners- tibacademy.in
Aws tutorial for beginners- tibacademy.inAws tutorial for beginners- tibacademy.in
Aws tutorial for beginners- tibacademy.inTIB Academy
 
AWS CloudFormation template with single & redundant system
AWS CloudFormation template with single & redundant systemAWS CloudFormation template with single & redundant system
AWS CloudFormation template with single & redundant systemNaoya Hashimoto
 
AWS Webcast - Design for Availability
AWS Webcast - Design for AvailabilityAWS Webcast - Design for Availability
AWS Webcast - Design for AvailabilityAmazon Web Services
 
Building a CICD Pipeline for Deploying to Containers
Building a CICD Pipeline for Deploying to ContainersBuilding a CICD Pipeline for Deploying to Containers
Building a CICD Pipeline for Deploying to ContainersAmazon Web Services
 
Workshop; Deploy a Deep Learning Framework on Amazon ECS and Spot Instances
Workshop; Deploy a Deep Learning Framework on Amazon ECS and Spot InstancesWorkshop; Deploy a Deep Learning Framework on Amazon ECS and Spot Instances
Workshop; Deploy a Deep Learning Framework on Amazon ECS and Spot InstancesAmazon Web Services
 
Amazon Web Services - 9 Posts.
Amazon Web Services - 9 Posts.Amazon Web Services - 9 Posts.
Amazon Web Services - 9 Posts.Shagun Rathore
 
Introducing AWS Elastic Beanstalk
Introducing AWS Elastic BeanstalkIntroducing AWS Elastic Beanstalk
Introducing AWS Elastic BeanstalkAmazon Web Services
 
Architecting for High Availability - Pop-up Loft Tel Aviv
Architecting for High Availability - Pop-up Loft Tel AvivArchitecting for High Availability - Pop-up Loft Tel Aviv
Architecting for High Availability - Pop-up Loft Tel AvivAmazon Web Services
 

Tendances (20)

AWS Webcast - Best Practices in Architecting for the Cloud
AWS Webcast - Best Practices in Architecting for the CloudAWS Webcast - Best Practices in Architecting for the Cloud
AWS Webcast - Best Practices in Architecting for the Cloud
 
AWS and Serverless with Alexa
AWS and Serverless with AlexaAWS and Serverless with Alexa
AWS and Serverless with Alexa
 
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
 
Journey Through the AWS Cloud; Application Services
Journey Through the AWS Cloud; Application ServicesJourney Through the AWS Cloud; Application Services
Journey Through the AWS Cloud; Application Services
 
AWSome Day, Milan | 5 Marzo 2015 - Contenuto Tecnico (Danilo Poccia - AWS Sol...
AWSome Day, Milan | 5 Marzo 2015 - Contenuto Tecnico (Danilo Poccia - AWS Sol...AWSome Day, Milan | 5 Marzo 2015 - Contenuto Tecnico (Danilo Poccia - AWS Sol...
AWSome Day, Milan | 5 Marzo 2015 - Contenuto Tecnico (Danilo Poccia - AWS Sol...
 
Intro to Amazon ECS
Intro to Amazon ECSIntro to Amazon ECS
Intro to Amazon ECS
 
Aws tutorial for beginners- tibacademy.in
Aws tutorial for beginners- tibacademy.inAws tutorial for beginners- tibacademy.in
Aws tutorial for beginners- tibacademy.in
 
AWS CloudFormation template with single & redundant system
AWS CloudFormation template with single & redundant systemAWS CloudFormation template with single & redundant system
AWS CloudFormation template with single & redundant system
 
AWS Containers Day.pdf
AWS Containers Day.pdfAWS Containers Day.pdf
AWS Containers Day.pdf
 
AWS Webcast - Design for Availability
AWS Webcast - Design for AvailabilityAWS Webcast - Design for Availability
AWS Webcast - Design for Availability
 
Building a CICD Pipeline for Deploying to Containers
Building a CICD Pipeline for Deploying to ContainersBuilding a CICD Pipeline for Deploying to Containers
Building a CICD Pipeline for Deploying to Containers
 
AWS 101 Event - 16 July 2013
AWS 101 Event - 16 July 2013AWS 101 Event - 16 July 2013
AWS 101 Event - 16 July 2013
 
Introduction to Amazon EC2
Introduction to Amazon EC2Introduction to Amazon EC2
Introduction to Amazon EC2
 
Workshop; Deploy a Deep Learning Framework on Amazon ECS and Spot Instances
Workshop; Deploy a Deep Learning Framework on Amazon ECS and Spot InstancesWorkshop; Deploy a Deep Learning Framework on Amazon ECS and Spot Instances
Workshop; Deploy a Deep Learning Framework on Amazon ECS and Spot Instances
 
AWS 101 Event London - Feb 2014
AWS 101 Event London - Feb 2014AWS 101 Event London - Feb 2014
AWS 101 Event London - Feb 2014
 
Compute@Scale
Compute@ScaleCompute@Scale
Compute@Scale
 
AWS Partner Presentation - SAP
AWS Partner Presentation - SAP AWS Partner Presentation - SAP
AWS Partner Presentation - SAP
 
Amazon Web Services - 9 Posts.
Amazon Web Services - 9 Posts.Amazon Web Services - 9 Posts.
Amazon Web Services - 9 Posts.
 
Introducing AWS Elastic Beanstalk
Introducing AWS Elastic BeanstalkIntroducing AWS Elastic Beanstalk
Introducing AWS Elastic Beanstalk
 
Architecting for High Availability - Pop-up Loft Tel Aviv
Architecting for High Availability - Pop-up Loft Tel AvivArchitecting for High Availability - Pop-up Loft Tel Aviv
Architecting for High Availability - Pop-up Loft Tel Aviv
 

Similaire à AWS Summit 2011: Designing Fault Tolerant Applicatons

Best Practices for Architecting in the Cloud - Jeff Barr
Best Practices for Architecting in the Cloud - Jeff BarrBest Practices for Architecting in the Cloud - Jeff Barr
Best Practices for Architecting in the Cloud - Jeff BarrAmazon Web Services
 
Disaster Recovery with the AWS Cloud
Disaster Recovery with the AWS CloudDisaster Recovery with the AWS Cloud
Disaster Recovery with the AWS CloudAmazon Web Services
 
Architecting Cloud Apps
Architecting Cloud AppsArchitecting Cloud Apps
Architecting Cloud Appsjineshvaria
 
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWSGetting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWSAmazon Web Services
 
Getting Started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting Started in the AWS Cloud, Glen Robinson, Solutions Architect, AWSGetting Started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting Started in the AWS Cloud, Glen Robinson, Solutions Architect, AWSAmazon Web Services
 
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...Amazon Web Services
 
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh Varia
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh VariaAWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh Varia
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh VariaAmazon Web Services
 
Architecting for the Cloud: Best Practices
Architecting for the Cloud: Best PracticesArchitecting for the Cloud: Best Practices
Architecting for the Cloud: Best PracticesAmazon Web Services
 
Amazon Web Services - Elastic Beanstalk
Amazon Web Services - Elastic BeanstalkAmazon Web Services - Elastic Beanstalk
Amazon Web Services - Elastic BeanstalkAmazon Web Services
 
NWCloud Cloud Track - Best Practices for Architecting in the Cloud
NWCloud Cloud Track - Best Practices for Architecting in the CloudNWCloud Cloud Track - Best Practices for Architecting in the Cloud
NWCloud Cloud Track - Best Practices for Architecting in the Cloudnwcloud
 
An intro to Amazon Web Services (AWS)
An intro to Amazon Web Services (AWS)An intro to Amazon Web Services (AWS)
An intro to Amazon Web Services (AWS)Andreas Chatzakis
 
How to Extend your Datacenter into the Cloud - 2nd Watch - Webinar
How to Extend your Datacenter into the Cloud - 2nd Watch - WebinarHow to Extend your Datacenter into the Cloud - 2nd Watch - Webinar
How to Extend your Datacenter into the Cloud - 2nd Watch - WebinarAmazon Web Services
 
Seattle Technical Forum Eucalyptus talk
Seattle Technical Forum Eucalyptus talkSeattle Technical Forum Eucalyptus talk
Seattle Technical Forum Eucalyptus talkyewen
 
Deploy PHP Apps on AWS Beanstalk & Deploy with Git
Deploy PHP Apps on AWS Beanstalk & Deploy with GitDeploy PHP Apps on AWS Beanstalk & Deploy with Git
Deploy PHP Apps on AWS Beanstalk & Deploy with GitAmazon Web Services
 
Keynote - Cloud e o Futuro com Werner Vogels, CTO da amazon
Keynote - Cloud e o Futuro com Werner Vogels, CTO da amazonKeynote - Cloud e o Futuro com Werner Vogels, CTO da amazon
Keynote - Cloud e o Futuro com Werner Vogels, CTO da amazonAmazon Web Services LATAM
 

Similaire à AWS Summit 2011: Designing Fault Tolerant Applicatons (20)

Best Practices for Architecting in the Cloud - Jeff Barr
Best Practices for Architecting in the Cloud - Jeff BarrBest Practices for Architecting in the Cloud - Jeff Barr
Best Practices for Architecting in the Cloud - Jeff Barr
 
Disaster Recovery with the AWS Cloud
Disaster Recovery with the AWS CloudDisaster Recovery with the AWS Cloud
Disaster Recovery with the AWS Cloud
 
Architecting Cloud Apps
Architecting Cloud AppsArchitecting Cloud Apps
Architecting Cloud Apps
 
AMAZON CLOUD Course Content
AMAZON CLOUD Course ContentAMAZON CLOUD Course Content
AMAZON CLOUD Course Content
 
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWSGetting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
 
Getting Started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting Started in the AWS Cloud, Glen Robinson, Solutions Architect, AWSGetting Started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting Started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
 
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...
ARC205 Building Web-scale Applications Architectures with AWS - AWS re: Inven...
 
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh Varia
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh VariaAWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh Varia
AWS Architecting Cloud Apps - Best Practices and Design Patterns By Jinesh Varia
 
Architecting for the Cloud: Best Practices
Architecting for the Cloud: Best PracticesArchitecting for the Cloud: Best Practices
Architecting for the Cloud: Best Practices
 
Amazon Web Services - Elastic Beanstalk
Amazon Web Services - Elastic BeanstalkAmazon Web Services - Elastic Beanstalk
Amazon Web Services - Elastic Beanstalk
 
Aws
AwsAws
Aws
 
Amazon EC2: What is this and what can I do with it?
Amazon EC2: What is this and what can I do with it?Amazon EC2: What is this and what can I do with it?
Amazon EC2: What is this and what can I do with it?
 
NWCloud Cloud Track - Best Practices for Architecting in the Cloud
NWCloud Cloud Track - Best Practices for Architecting in the CloudNWCloud Cloud Track - Best Practices for Architecting in the Cloud
NWCloud Cloud Track - Best Practices for Architecting in the Cloud
 
An intro to Amazon Web Services (AWS)
An intro to Amazon Web Services (AWS)An intro to Amazon Web Services (AWS)
An intro to Amazon Web Services (AWS)
 
AWS Architecting In The Cloud
AWS Architecting In The CloudAWS Architecting In The Cloud
AWS Architecting In The Cloud
 
How to Extend your Datacenter into the Cloud - 2nd Watch - Webinar
How to Extend your Datacenter into the Cloud - 2nd Watch - WebinarHow to Extend your Datacenter into the Cloud - 2nd Watch - Webinar
How to Extend your Datacenter into the Cloud - 2nd Watch - Webinar
 
Aws coi7
Aws coi7Aws coi7
Aws coi7
 
Seattle Technical Forum Eucalyptus talk
Seattle Technical Forum Eucalyptus talkSeattle Technical Forum Eucalyptus talk
Seattle Technical Forum Eucalyptus talk
 
Deploy PHP Apps on AWS Beanstalk & Deploy with Git
Deploy PHP Apps on AWS Beanstalk & Deploy with GitDeploy PHP Apps on AWS Beanstalk & Deploy with Git
Deploy PHP Apps on AWS Beanstalk & Deploy with Git
 
Keynote - Cloud e o Futuro com Werner Vogels, CTO da amazon
Keynote - Cloud e o Futuro com Werner Vogels, CTO da amazonKeynote - Cloud e o Futuro com Werner Vogels, CTO da amazon
Keynote - Cloud e o Futuro com Werner Vogels, CTO da amazon
 

Plus de Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Plus de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Dernier

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dashnarutouzumaki53779
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 

Dernier (20)

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dash
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 

AWS Summit 2011: Designing Fault Tolerant Applicatons

  • 1. Designing Fault-Tolerant Applications Miles Ward Enterprise Solutions Architect
  • 2. Building Fault-Tolerant Applications on AWS White paper published last year Sharing best practices We’d like to hear your best practices as well http://media.amazonwebservices.com/AWS_Building_Fault_Tolerant_Applications.pdf Copyright © 2011 Amazon Web Services
  • 3. AWS Fault-Tolerant Building Blocks Two approaches: 1) AWS services that are inherently fault-tolerant and highly available: • Amazon Simple Storage Service (S3) • Amazon SimpleDB • Amazon SQS, SNS, SES, CloudWatch, CloudFront, and more. 2) AWS services that offer tools and features to design fault- tolerant and highly available systems: • Amazon Elastic Compute Cloud (EC2) – Availability Zones, Elastic IPs, EBS, etc. – Flexible to trade off budget vs. time to recovery • Amazon Relational Database Service (RDS) – Multi-AZ Deployments – Backup/Restore Copyright © 2011 Amazon Web Services
  • 4. Amazon EC2 Architecture Amazon Region Machine Availability Zone Image (AMI) Ephemeral Storage EC2 Instance Elastic CloudWatch Block Storage Security Group(s) Auto Amazon S3 Scaling Elastic IP EBS EBS Address Snapshot Snapshot Load Balancing Copyright © 2011 Amazon Web Services
  • 5. EC2 Features AMI  Packaged, reusable functionality On-Instance Storage  Lifetime tied to instance lifetime  AFR like standard hard disk (around 5%) EBS Volumes  Lifetime independent of any particular EC2 instance  Redundant within an AZ  AFR is 0.1% to 0.5%  Incorporate volume mappings into your architecture  Use EBS snapshot backups Copyright © 2011 Amazon Web Services
  • 6. EC2 Features Elastic IP Addresses  Map to any EC2 instance within a given Region  Detach from failed instance; map to replacement Auto Scaling  Two ways to use it: • Respond to changing conditions by adding or terminating EC2 instances (attach to CloudWatch metrics) • Maintain a fixed number of instances running, replacing them if they fail or become unhealthy Reserved Instances  Guarantees capacity for when it’s needed Copyright © 2011 Amazon Web Services
  • 7. EC2 Features CloudWatch Alarms Copyright © 2011 Amazon Web Services
  • 8. EC2 Features Elastic Load Balancing  Distributes incoming traffic across multiple instances  Sends traffic only to healthy instances Copyright © 2011 Amazon Web Services
  • 9. Amazon EC2 Regions and Availability Zones US East (Northern Virginia) EU (Dublin) Availability Availability Zone A Zone B Availability Availability Zone A Zone B Availability Availability Zone C Zone D Amazon EC2 Regions: US East (Northern Virginia) / US West (Northern California) / EU (Ireland) / Asia Pacific (Singapore) / Asia Pacific (Tokyo) Copyright © 2011 Amazon Web Services
  • 10. Availability Zone Characteristics and Advice Distinct physical locations Low-latency network connections between AZs Independent power, cooling, network, security Always partition app stacks across 2 or more AZs Elastic Load Balance across instances in multiple AZs Copyright © 2011 Amazon Web Services
  • 11. Proper Use of Multiple Availability Zones Centralized Services (S3 Backups, SimpleDB, etc) Availability Zone A Availability Zone B Database Server or Database Server or RDS DB Instance RDS DB Instance App Server App Server Web Server Web Server Requests and Health Checks Elastic Load Balancer Copyright © 2011 Amazon Web Services Incoming Requests
  • 12. Region Characteristics and Advice Regions are:  Functionally separate  Composed of 2 or more AZs  Connected via the public internet Use regions to:  Have functionality geographically close to customers  Comply with national laws and practices  Implement a DR strategy
  • 13. RDS Fault-Tolerant Features Multi-AZ Deployments  Synchronous replication across AZs  Automatic fail-over to standby replica Automated Backups  Enables point-in-time recovery of the DB instance  Retention period configurable Snapshots  User initiated full backup of DB  New DB can be created from snapshots
  • 14. AWS Architectural Guidance Copyright © 2011 Amazon Web Services
  • 15. Design For Failure – Basic Principles Avoid single points of failure Assume everything fails, and design backwards Goal: Applications should continue to function even if the underlying physical hardware fails or is removed or replaced. Design your recovery process Trade off business needs vs. cost of high -availability Copyright © 2011 Amazon Web Services
  • 16. Design For Failure – Use AWS Building Blocks Use Elastic IP addresses for consistent and re - mappable routes Use multiple Amazon EC2 Availability Zones (AZs ) Replicate data across multiple AZs  Example: Amazon RDS Multi-AZ mode Use real-time monitoring (Amazon CloudWatch) Use Amazon Elastic Block Store (EBS) for persistent file systems Take EBS Snapshots and use S3 for backups Copyright © 2011 Amazon Web Services
  • 17. Copyright © 2011 Amazon Web Services Build Loosely Coupled Systems Use independent components Design everything as a Black Box Load-balance and scale clusters Think about graceful degradation Amazon SQS as Buffers Tight Controller Controller Controller A B C Coupling Q Q Q Loose Coupling Controller Controller Controller using Queues A B C
  • 18. Implement Elasticity Don’t assume health or fixed location of components Use designs that are resilient to reboot and re-launch Bootstrap your instances –  “Who am I am and what is my role?” Enable dynamic configuration Use configurations in SimpleDB for bootstrapping Use Auto Scaling Use Elastic Load Balancing on each tier Copyright © 2011 Amazon Web Services
  • 19. Implementing Elasticity Elastic Load Balancing, CloudWatch, and AutoScaling Elastic Load Balancing Utilization Auto Scaling CloudWatch Metrics Copyright © 2011 Amazon Web Services
  • 20. Copyright © 2011 Amazon Web Use a Chaos Monkey Services From the Netflix blog: Simple monkey:  Kill any instance in the account Complex monkey:  Kill instances with specific tags  Introduce other faults (e.g. connectivity via Security Group) Human monkey:  Kill instances from the AWS Management Console http://techblog.netflix.com/2010/12/5-lessons-weve-learned-using-aws.html
  • 21. AWS Architecture Center aws.amazon.com/architecture White papers:  Cloud architectures  Building fault-tolerant applications  Web hosting best practices  Leveraging different storage options  AWS security best practices Copyright © 2011 Amazon Web Services
  • 22. Thank You! Copyright © 2011 Amazon Web Services