82
Carlos Conde ARCHITECTING FOR HIGH AVAILABILITY

AWS Summit Berlin 2013 - Architecting for high availability

Embed Size (px)

Citation preview

Page 1: AWS Summit Berlin 2013 - Architecting for high availability

Carlos Conde

ARCHITECTING FOR HIGH

AVAILABILITY

Page 2: AWS Summit Berlin 2013 - Architecting for high availability

AWS BUILDING BLOCKS

Inherently Fault-Tolerant

Services

Fault-Tolerant

with the right

architecture Amazon S3

Amazon SimpleDB

Amazon DynamoDB

Amazon CloudFront

Amazon SWF

Amazon SQS

Amazon SNS

Amazon SES

Amazon Route53

Elastic Load

Balancing

AWS IAM

AWS Elastic

Beanstalk

Amazon

ElastiCache

Amazon EMR

Amazon

CloudSearch

Amazon EC2

Amazon EBS

Amazon RDS

Amazon VPC

Page 3: AWS Summit Berlin 2013 - Architecting for high availability
Page 4: AWS Summit Berlin 2013 - Architecting for high availability
Page 5: AWS Summit Berlin 2013 - Architecting for high availability
Page 6: AWS Summit Berlin 2013 - Architecting for high availability
Page 7: AWS Summit Berlin 2013 - Architecting for high availability

#1DESIGN FOR

FAILURE●○○○

Page 8: AWS Summit Berlin 2013 - Architecting for high availability

« Everything fails

all the time »

Werner Vogels

CTO of Amazon

Page 9: AWS Summit Berlin 2013 - Architecting for high availability

YOUR GOAL:

Applications should continue to function even

if the underlying physical hardware fails or is

removed or replaced

Page 10: AWS Summit Berlin 2013 - Architecting for high availability

AVOID SINGLE POINTS OF

FAILURE.

ASSUME EVERYTHING FAILS,

AND DESIGN BACKWARDS.

Page 11: AWS Summit Berlin 2013 - Architecting for high availability

AVOID SINGLE POINTS OF

FAILURE.

ASSUME EVERYTHING FAILS,

AND DESIGN BACKWARDS.

Page 12: AWS Summit Berlin 2013 - Architecting for high availability
Page 13: AWS Summit Berlin 2013 - Architecting for high availability
Page 14: AWS Summit Berlin 2013 - Architecting for high availability
Page 15: AWS Summit Berlin 2013 - Architecting for high availability
Page 16: AWS Summit Berlin 2013 - Architecting for high availability
Page 17: AWS Summit Berlin 2013 - Architecting for high availability

HEALTH CHECKS

Page 18: AWS Summit Berlin 2013 - Architecting for high availability
Page 19: AWS Summit Berlin 2013 - Architecting for high availability
Page 20: AWS Summit Berlin 2013 - Architecting for high availability
Page 21: AWS Summit Berlin 2013 - Architecting for high availability
Page 22: AWS Summit Berlin 2013 - Architecting for high availability
Page 23: AWS Summit Berlin 2013 - Architecting for high availability

#2USE MULTIPLE

AVAILABILITY ZONES

Page 24: AWS Summit Berlin 2013 - Architecting for high availability

US-WEST (Oregon))EU-WEST (Ireland)

ASIA PAC (Tokyo)

ASIA PAC

(Singapore)

US-WEST (N. California)

SOUTH AMERICA (Sao Paulo)

US-EAST (Virginia)

AWS GovCloud (US)

ASIA PAC (Sydney)

Page 25: AWS Summit Berlin 2013 - Architecting for high availability
Page 26: AWS Summit Berlin 2013 - Architecting for high availability

AMAZON RDS

MULTI-AZ

Page 27: AWS Summit Berlin 2013 - Architecting for high availability
Page 28: AWS Summit Berlin 2013 - Architecting for high availability
Page 29: AWS Summit Berlin 2013 - Architecting for high availability
Page 30: AWS Summit Berlin 2013 - Architecting for high availability
Page 31: AWS Summit Berlin 2013 - Architecting for high availability
Page 32: AWS Summit Berlin 2013 - Architecting for high availability
Page 33: AWS Summit Berlin 2013 - Architecting for high availability

#3BUILD FOR SCALE

Page 34: AWS Summit Berlin 2013 - Architecting for high availability
Page 35: AWS Summit Berlin 2013 - Architecting for high availability
Page 36: AWS Summit Berlin 2013 - Architecting for high availability
Page 37: AWS Summit Berlin 2013 - Architecting for high availability
Page 38: AWS Summit Berlin 2013 - Architecting for high availability
Page 39: AWS Summit Berlin 2013 - Architecting for high availability
Page 40: AWS Summit Berlin 2013 - Architecting for high availability
Page 41: AWS Summit Berlin 2013 - Architecting for high availability
Page 42: AWS Summit Berlin 2013 - Architecting for high availability
Page 43: AWS Summit Berlin 2013 - Architecting for high availability
Page 44: AWS Summit Berlin 2013 - Architecting for high availability

HEALTH CHECKS

+AUTO SCALING

Page 45: AWS Summit Berlin 2013 - Architecting for high availability
Page 46: AWS Summit Berlin 2013 - Architecting for high availability
Page 47: AWS Summit Berlin 2013 - Architecting for high availability
Page 48: AWS Summit Berlin 2013 - Architecting for high availability
Page 49: AWS Summit Berlin 2013 - Architecting for high availability

HEALTH CHECKS

+AUTO SCALING

=

SELF-HEALING

Page 50: AWS Summit Berlin 2013 - Architecting for high availability

#4LOOSE COUPLING

Page 51: AWS Summit Berlin 2013 - Architecting for high availability

PUBLISH

& NOTIFYRECEIVE TRANSCODE

Page 52: AWS Summit Berlin 2013 - Architecting for high availability

PUBLISH

& NOTIFYRECEIVE TRANSCODE

Page 53: AWS Summit Berlin 2013 - Architecting for high availability
Page 54: AWS Summit Berlin 2013 - Architecting for high availability
Page 55: AWS Summit Berlin 2013 - Architecting for high availability
Page 56: AWS Summit Berlin 2013 - Architecting for high availability
Page 57: AWS Summit Berlin 2013 - Architecting for high availability
Page 58: AWS Summit Berlin 2013 - Architecting for high availability
Page 59: AWS Summit Berlin 2013 - Architecting for high availability

VISIBILITY

TIMEOUT

Page 60: AWS Summit Berlin 2013 - Architecting for high availability
Page 61: AWS Summit Berlin 2013 - Architecting for high availability
Page 62: AWS Summit Berlin 2013 - Architecting for high availability
Page 63: AWS Summit Berlin 2013 - Architecting for high availability
Page 64: AWS Summit Berlin 2013 - Architecting for high availability
Page 65: AWS Summit Berlin 2013 - Architecting for high availability
Page 66: AWS Summit Berlin 2013 - Architecting for high availability
Page 67: AWS Summit Berlin 2013 - Architecting for high availability

BUFFERING

Page 68: AWS Summit Berlin 2013 - Architecting for high availability
Page 69: AWS Summit Berlin 2013 - Architecting for high availability
Page 70: AWS Summit Berlin 2013 - Architecting for high availability
Page 71: AWS Summit Berlin 2013 - Architecting for high availability
Page 72: AWS Summit Berlin 2013 - Architecting for high availability
Page 73: AWS Summit Berlin 2013 - Architecting for high availability

CLOUDWATCH METRICS

FOR AMAZON SQS

+AUTO SCALING

Page 74: AWS Summit Berlin 2013 - Architecting for high availability
Page 75: AWS Summit Berlin 2013 - Architecting for high availability
Page 76: AWS Summit Berlin 2013 - Architecting for high availability
Page 77: AWS Summit Berlin 2013 - Architecting for high availability
Page 78: AWS Summit Berlin 2013 - Architecting for high availability
Page 79: AWS Summit Berlin 2013 - Architecting for high availability
Page 80: AWS Summit Berlin 2013 - Architecting for high availability

BUILD LOOSELY

COUPLED SYSTEMS

The looser they are coupled,

the bigger they scale,

the more fault tolerant they get…

Page 81: AWS Summit Berlin 2013 - Architecting for high availability

1. DESIGN FOR FAILURE

2. USE MULTI-AZ

3. BUILD FOR SCALE

4. DECOUPLE COMPONENTS

Page 82: AWS Summit Berlin 2013 - Architecting for high availability

THANK YOU!