Highly Available Web Properties in Aws

Preview:

Citation preview

Building Highly Available, Scalable

Web Properties with AWS

Joe Ziegler │Technical Evangelist

@jiyosub

1. ELASTICITY

2. DESIGN FOR FAILURE

3. LOOSE COUPLING

4. SECURITY

5. PERFORMANCE

#1ELASTICITY

●○○○○

AMAZON EC2ELASTIC COMPUTE CLOUD

AMAZON CLOUDWATCH

MONITORING FOR AWS RESOURCES

AUTO SCALINGSCALE UP/DOWN EC2 CAPACITY

ELASTIC LOAD BALANCING

NETWORK TRAFFIC DISTRIBUTION

6 am

10 am

10 am

10 am

7 pm

7 pm

7 pm

without elasticity you can't accelerate

what you really need is…

…adjustable capacity

#2DESIGN FOR FAILURE

●●○○○

« Everything failsall the time »

Werner Vogels

CTO of Amazon

YOUR GOAL

Applications should continue to function even if the underlying physical hardware fails or is

removed or replaced

Avoid single points of failure.

Assume everything fails, and design backwards.

Avoid single points of failure.

Assume everything fails, and design backwards.

AMAZON RDSRELATIONAL DATABASE SERVICE

AMAZONROUTE 53

DOMAIN NAME SERVICE

AMAZON RDS

MULTI-AZDEPLOYMENT

AMAZON CLOUDWATCH

ALARMS

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

AmazonElastiCache

Amazon EMR

Amazon CloudSearch

Amazon EC2

Amazon EBS

Amazon RDS

Amazon VPC

NETFLIX

CHAOS MONKEY

#3LOOSE

COUPLING●●●○○

BUILD LOOSELYCOUPLED SYSTEMS

The looser the are coupled,the bigger they scale

Create independent components

Create independent components

Design everything as a Black Box

Create independent components

Design everything as a Black Box

Think in terms of services

RECEIVETRANSCODE& PUBLISH

RECEIVETRANSCODE& PUBLISH

QUEUE

AMAZON SQSSIMPLE QUEUE SERVICE

SPAM?

CHECKVIDEO

TOOLONG?

SHORTENVIDEO

NO

YES NO

YES

TRANSCODE

SPAMCHECK

START

PUBLISH& NOTIFY

STOPREJECT

MAINTENANCE

AUDITABILITY

FLEXIBILITY

LOW-LEVEL

WHAT ARE WETRYING TO DO?

SPAM?

CHECKVIDEO

TOOLONG?

SHORTENVIDEO

NO

YES NO

YES

TRANSCODE

SPAMCHECK

START

PUBLISH& NOTIFY

STOPREJECT

SPAM?

CHECKVIDEO

TOOLONG?

SHORTENVIDEO

NO

YES NO

YES

TRANSCODE

SPAMCHECK

START

PUBLISH& NOTIFY

STOPREJECT

SPAM?

CHECKVIDEO

TOOLONG?

SHORTENVIDEO

NO

YES NO

YES

TRANSCODE

SPAMCHECK

START

PUBLISH& NOTIFY

STOPREJECT

TASKS

DECISIONS

HISTORY

STATELESS !

STATELESS SCALES HORIZONTALLY

AMAZON SWFWORKFLOW SERVICE FOR SCALABLE,

RESILIENT APPLICATIONS

AMAZON SWFKeeps track of :

State Executed tasks Timeouts Errors

WORKFLOWACTORS

DECIDERSCOORDINATION LOGIC

1. Poll for work on a decision listLong polling: 60 seconds

2. Evaluate workflow execution historySWF sends full history in JSON format

3. Return decision to Amazon SWFUsually scheduling another task

WORKERSCOORDINATION LOGIC

1. Poll for work on a specific task listLong polling: 60 seconds

2. Execute works, send heartbeatsSWF sends input data from deciders

3. Return success / failureDetailed data can be provided to deciders

ALLHORIZONTAL SCALING

PATTERNS APPLY

NO NEW LANGUAGETO LEARN

YOUR CODE IS YOUR WORKFLOW LANGUAGESWF MAINTAINS STATE

AWS FLOW FRAMEWORK

Java Library • Entire workflow can be expressed in sequential code •

Integrated with Java Utils API

CHAINED TASKSWITHOUT DECISIONS?

use AMAZON SQS

NOTIFYRECEIVE TRANSCODE

TASK GRAPHWITH DECISIONS?

use AMAZON SWF

SPAMCHECK

RECEIVEVIDEO

CHECKLENGTH

REJECTSHORTEN

VIDEOPUBLISH& NOTIFY

GOOD

LONG

OK

SPAM

TRANSCODE

#4SECURITY

●●●●○

AWS IAMIDENTITY AND ACCESS MANAGEMENT

MULTI-MULTI-FACTOR AUTHENTICATION

SECURITY GROUPSLAYERED SECURITY

CERTIFICATIONS& COMPLIANCE

SAS 70 Type II audit ISO 27001 Certification Sarbanes-Oxley SOX HIPAA healthcare

FISMA US Federal Government

DIACAP MAC III Sensitive IATO

PCI DSS CompliantLEVEL 1 SERVICE PROVIDER

#5PERFORMANCE

●●●●●

VERTICAL SCALING

CLUSTER COMPUTE

EIGHT EXTRA LARGE

Intel Xeon E5-2670, eight-coreSandy Bridge architecture

60.5 GB of memory – 3.3 TB of storage

2x

CLUSTER GPUQUADRUPLE EXTRA LARGE

Intel Xeon X5570, quad-coreNehalem architecture

NVIDIA Tesla FermiM2050 GPUs

22 GB of memory – 1.7 TB of storage

2x

2x

AMAZON ELASTICACHE

MEMCACHED COMPATIBLEIN-MEMORY CACHE

SEARCHENGINES

Relevance & Ranking

Faceting

Range Searching

AMAZON CLOUDSEARCHFULLY-MANAGED SEARCH SERVICE

+

DEMOCRATIZE SEARCH

Amazon CloudSearch delivers a fully-managed search service in the cloud that can be set up and running in less than 1 hour, with automatic scaling for

data & traffic, at a price starting at less than $100 per month.

MEDIA SHARINGREFERENCE ARCHITECTURE

1. ELASTICITY

2. DESIGN FOR FAILURE

3. LOOSE COUPLING

4. SECURITY

5. PERFORMANCE

« If you're not embarrassed when you ship your first version you waited too long »

Matt MullenwegCEO & Founder of WordPress

aws-apac-marketing@amazon.com

AWS ANZ Customer

Appreciation Day

Is Coming to Sydney

November 13th

#AWSCADAU

Recommended