Your SlideShare is downloading. ×
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
LET’S BUILD A SYSTEM
LET’S BUILD AHIGHLY AVAILABLE     SYSTEM
AWS BUILDING BLOCKSInherently Highly Available and           Highly Available withFault Tolerant Services                 ...
AWS BUILDING BLOCKSInherently Highly Available and           Highly Available withFault Tolerant Services                 ...
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
#   1DESIGN FOR FAILURE       ●○○○○
« Everything fails  all the time »                 Werner Vogels                CTO of Amazon
AVOID SINGLE POINTS OF FAILURE
AVOID SINGLE POINTS OF FAILUREASSUME EVERYTHING FAILS,AND WORK BACKWARDS
YOUR GOALApplications should continue to function
AMAZON EBS ELASTIC BLOCK STORE
AMAZON ELBELASTIC LOAD BALANCING
HEALTH CHECKS
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
#   2     MULTIPLEAVAILABILITY ZONES       ●●○○○
AVAILABILITY ZONES
US-WEST (N. California)                                                              EU-WEST (Ireland)                    ...
US-WEST (N. California)                                                              EU-WEST (Ireland)                    ...
AMAZON RDSMULTI-AZ
AMAZON ELB ANDMULTIPLE AZs
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
#   3SCALING  ●●●○○
AUTO SCALINGSCALE UP/DOWN EC2 CAPACITY
UNEXPECTED  SPIKES
EXPECTED SPIKES
DATA TIER
AWS BUILDING BLOCKSInherently Highly Available and           Highly Available withFault Tolerant Services                 ...
AWS BUILDING BLOCKSInherently Highly Available and           Highly Available withFault Tolerant Services                 ...
AWS BUILDING BLOCKSInherently Highly Available and           Highly Available withFault Tolerant Services                 ...
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
#   4SELF-HEALING    ●●●●○
HEALTH CHECKS     +AUTO SCALING
HEALTH CHECKS      + AUTO SCALING       =SELF-HEALING
DEGRADED MODE
AMAZON S3   STATIC WEBSITE         +  AMAZON ROUTE53WEIGHTED RESOLUTION
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
#   5 LOOSECOUPLING  ●●●●●
BUILD LOOSELYCOUPLED SYSTEMS   The looser they are coupled,      the bigger they scale, the more fault tolerant they get…
AMAZON SQSSIMPLE QUEUE SERVICE
PUBLISH&RECEIVE   TRANSCODE                       NOTIFY
PUBLISH&RECEIVE   TRANSCODE                       NOTIFY
VISIBILITY TIMEOUT
BUFFERING
CLOUDWATCH METRICS  FOR AMAZON SQS        +   AUTO SCALING
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
YOUR GOALApplications should continue to function
IT’S ALL ABOUT   CHOICEBALANCE COST & HIGH AVAILABILITY
AWS ARCHITECTURE CENTERhttp://aws.amazon.com/architectureAWS TECHNICAL ARTICLEShttp://aws.amazon.com/articlesAWS BLOGhttp:...
4:05PM   ARC301: Intro to Chaos Monkey & the Simian Army4:05PM   MBL303: Scalable Mobile and Web AppsLab 4    ScalingLab 1...
We are sincerely eager to hear your feedback on thispresentation and on re:Invent. Please fill out an evaluation   form wh...
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
ARC202 Architecting for High Availability - AWS re: Invent 2012
Upcoming SlideShare
Loading in...5
×

ARC202 Architecting for High Availability - AWS re: Invent 2012

3,996

Published on

Amazon Web Services (AWS) provides a platform that is ideally suited for building highly available systems, enabling you to build reliable, affordable, fault-tolerant systems that operate with a minimal amount of human interaction. This session covers many of the high-availability and fault-tolerance concepts and features of the various services that you can use to build highly reliable and highly available applications in the AWS Cloud: architectures involving multiple Availability Zones, including EC2 best practices and RDS Multi-AZ deployments; loosely coupled and self-healing systems involving SQS and Auto Scaling; networking best practices for high availability, including Elastic IP addresses, load balancing, and DNS; leveraging services that inherently are built with high-availability and fault tolerance in mind, including S3, Elastic Beanstalk and more.

Transcript of "ARC202 Architecting for High Availability - AWS re: Invent 2012"

  1. 1. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  2. 2. LET’S BUILD A SYSTEM
  3. 3. LET’S BUILD AHIGHLY AVAILABLE SYSTEM
  4. 4. AWS BUILDING BLOCKSInherently Highly Available and Highly Available withFault Tolerant Services the right architecture Amazon S3  Amazon SQS  Amazon EC2 Amazon DynamoDB  Amazon SNS  Amazon EBS Amazon CloudFront  Amazon SES  Amazon RDS Amazon Route53  Amazon SWF  Amazon VPC Elastic Load Balancing  …
  5. 5. AWS BUILDING BLOCKSInherently Highly Available and Highly Available withFault Tolerant Services the right architecture Amazon S3  Amazon SQS  Amazon EC2 Amazon DynamoDB  Amazon SNS  Amazon EBS Amazon CloudFront  Amazon SES  Amazon RDS Amazon Route53  Amazon SWF  Amazon VPC Elastic Load Balancing  …
  6. 6. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  7. 7. # 1DESIGN FOR FAILURE ●○○○○
  8. 8. « Everything fails all the time » Werner Vogels CTO of Amazon
  9. 9. AVOID SINGLE POINTS OF FAILURE
  10. 10. AVOID SINGLE POINTS OF FAILUREASSUME EVERYTHING FAILS,AND WORK BACKWARDS
  11. 11. YOUR GOALApplications should continue to function
  12. 12. AMAZON EBS ELASTIC BLOCK STORE
  13. 13. AMAZON ELBELASTIC LOAD BALANCING
  14. 14. HEALTH CHECKS
  15. 15. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  16. 16. # 2 MULTIPLEAVAILABILITY ZONES ●●○○○
  17. 17. AVAILABILITY ZONES
  18. 18. US-WEST (N. California) EU-WEST (Ireland) GOV CLOUD ASIA PAC (Tokyo) US-EAST (Virginia) ASIA PAC (Sidney)US-WEST (Oregon) ASIA PAC (Singapore) SOUTH AMERICA (Sao Paulo)
  19. 19. US-WEST (N. California) EU-WEST (Ireland) GOV CLOUD ASIA PAC (Tokyo) US-EAST (Virginia) ASIA PAC (Sidney)US-WEST (Oregon) ASIA PAC (Singapore) SOUTH AMERICA (Sao Paulo)
  20. 20. AMAZON RDSMULTI-AZ
  21. 21. AMAZON ELB ANDMULTIPLE AZs
  22. 22. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  23. 23. # 3SCALING ●●●○○
  24. 24. AUTO SCALINGSCALE UP/DOWN EC2 CAPACITY
  25. 25. UNEXPECTED SPIKES
  26. 26. EXPECTED SPIKES
  27. 27. DATA TIER
  28. 28. AWS BUILDING BLOCKSInherently Highly Available and Highly Available withFault Tolerant Services the right architecture Amazon S3  Amazon SQS  Amazon EC2 Amazon DynamoDB  Amazon SNS  Amazon EBS Amazon CloudFront  Amazon SES  Amazon RDS Amazon Route53  Amazon SWF  Amazon VPC Elastic Load Balancing  …
  29. 29. AWS BUILDING BLOCKSInherently Highly Available and Highly Available withFault Tolerant Services the right architecture Amazon S3  Amazon SQS  Amazon EC2 Amazon DynamoDB  Amazon SNS  Amazon EBS Amazon CloudFront  Amazon SES  Amazon RDS Amazon Route53  Amazon SWF  Amazon VPC Elastic Load Balancing  …
  30. 30. AWS BUILDING BLOCKSInherently Highly Available and Highly Available withFault Tolerant Services the right architecture Amazon S3  Amazon SQS  Amazon EC2 Amazon DynamoDB  Amazon SNS  Amazon EBS Amazon CloudFront  Amazon SES  Amazon RDS Amazon Route53  Amazon SWF  Amazon VPC Elastic Load Balancing  …
  31. 31. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  32. 32. # 4SELF-HEALING ●●●●○
  33. 33. HEALTH CHECKS +AUTO SCALING
  34. 34. HEALTH CHECKS + AUTO SCALING =SELF-HEALING
  35. 35. DEGRADED MODE
  36. 36. AMAZON S3 STATIC WEBSITE + AMAZON ROUTE53WEIGHTED RESOLUTION
  37. 37. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  38. 38. # 5 LOOSECOUPLING ●●●●●
  39. 39. BUILD LOOSELYCOUPLED SYSTEMS The looser they are coupled, the bigger they scale, the more fault tolerant they get…
  40. 40. AMAZON SQSSIMPLE QUEUE SERVICE
  41. 41. PUBLISH&RECEIVE TRANSCODE NOTIFY
  42. 42. PUBLISH&RECEIVE TRANSCODE NOTIFY
  43. 43. VISIBILITY TIMEOUT
  44. 44. BUFFERING
  45. 45. CLOUDWATCH METRICS FOR AMAZON SQS + AUTO SCALING
  46. 46. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  47. 47. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  48. 48. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  49. 49. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  50. 50. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  51. 51. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  52. 52. 1. DESIGN FOR FAILURE2. MULTIPLE AVAILABILITY ZONES3. SCALING4. SELF-HEALING5. LOOSE COUPLING
  53. 53. YOUR GOALApplications should continue to function
  54. 54. IT’S ALL ABOUT CHOICEBALANCE COST & HIGH AVAILABILITY
  55. 55. AWS ARCHITECTURE CENTERhttp://aws.amazon.com/architectureAWS TECHNICAL ARTICLEShttp://aws.amazon.com/articlesAWS BLOGhttp://aws.typepad.comAWS PODCASThttp://aws.amazon.com/podcast
  56. 56. 4:05PM ARC301: Intro to Chaos Monkey & the Simian Army4:05PM MBL303: Scalable Mobile and Web AppsLab 4 ScalingLab 12 Loose Coupling
  57. 57. We are sincerely eager to hear your feedback on thispresentation and on re:Invent. Please fill out an evaluation form when you have a chance.

×