the lean cloud for startups with aws - cost optimisation

Post on 16-Jan-2017

284 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

COST OPTIMIZATION

Ianni Vamvadelis Solutions Architect

Multiple dimensions of optimization

Cost Performance Response time Time to market High-availability Scalability Security Manageability …….

Elastic Capacity

When you turn off your cloud resources, you actually stop paying for them

6 am

10 am

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

We

b S

erv

ers

Hour

25% Savings

during a day

Availability Zone #2

Availability Zone #1

Auto Scaling group : App Tier

Auto Scaling group : Web Tier

Elastic Load Balancer

www.MyWebSite.com (dynamic data)

media.MyWebSite.com (static content,

streaming media)

Amazon Route 53 (DNS)

Amazon EC2

Amazon RDS Amazon RDS

Amazon S3

Amazon CloudFront

Auto scaling options

• Scaling base on Policy – Scale up and down base on metrics

Scaling Up policy - Double the group size if avg cpu > 80%

Scaling Down policy - Decrement by 10% if avg cpu < 30%

• Scaling by Schedule Scheduled Actions to meet known demand

Scheduled up to 31 days into the future

Recurring scheduled scaling activities.

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29

Web

Serv

ers

Days of the Month

75% Savings

during a month

Instance Types

On Demand

Choosing an Instance Type

• Start with the EC2 instance type that best matches

– memory requirements

virtual cores

• Tune your instance type to optimise for cost

– No need to get it right first time

• Run across AZs

Smaller sizes => more granularity => deploy across AZs

Knowing your usage

Instance

Amazon CloudWatch

Alarm

Free Memory

Free CPU Free HDD

At 1-min intervals

Custom Metrics

PUT 2 weeks

Billing alerts

Dev 1

Dev 2

Test Master Account

Production

Internal Systems

Dev 1 reached $100

Dev 2 reached $250

Test reached $1,000

Prod reached $1,200

Int. reached $400

Programmatic access

Dev 1

Dev 2

Test Master Account

Consolidated Billing

Data labeled by

source in S3

Production

Internal Systems

Billing Alerts

Bill reached $x

Cost accounting in

favorite package

Business

Basic

Developer

Enterprise

Offering

24x7x365 ✓

Forum Access ✓

Documentation ✓

Access to support Phone, Chat,

Email

Named Contacts 5

Fastest Response Time 1 Hour

Architecture Support Use Case

Guidance

Best Practice ✓

Diagnostics Tools ✓

Direct Routing ✓

3rd Party Software ✓

Trusted Advisor ✓

Business

Basic

Developer

Enterprise

Offering

24x7x365 ✓

Forum Access ✓

Documentation ✓

Access to support Phone, Chat,

Email

Named Contacts 5

Fastest Response Time 1 Hour

Architecture Support Use Case

Guidance

Best Practice ✓

Diagnostics Tools ✓

Direct Routing ✓

3rd Party Software ✓

Trusted Advisor ✓

Horizontal Scaling and

Vertical Scaling

Reserved Instances

Optimize by using Reserved Instances

Heavy Utilization RI

Medium Utilization RI

Light Utilization RI

1-year and 3-year terms

On-demand Instances

• Pay as you go

• Starts from $0.02/Hour

Reserved Instances

• One time low upfront fee + lower hourly cost

• $23 for 1 year term and $0.012/Hour

Spot Instances

• Requested Bid Price and Pay as you go

• $0.005/Hour as of today at 9 AM

Light Utilization RI

• 15-40% utilization

• Lower costs up to 34%

• Use Cases: Disaster Recovery, Weekly / Monthly reporting, Elastic Map Reduce

Medium Utilization RI

• 41-79% utilization

• Lower costs up to 49%

• Use Cases: Web applications, many heavy processing tasks, running much of the time

Heavy Utilization RI

• > 80% utilization

• Lower costs up to 58%

• Use Cases: Databases, Large Scale HPC, Always-on infrastructure, Baseline

Best RI for Utilisation

$-

$2,000

$4,000

$6,000

$8,000

$10,000

$12,000

$14,000

$16,000

$18,000

Heavy

Medium

Light

O-Demand

Optimizing Cost with RIs

0

2

4

6

8

10

12

14

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

On Demand

Light Utilization RI

Medium Utilization RI

Heavy utilization RI

http://aws.amazon.com/whitepapers

Spot Instances Bid on unused Amazon EC2 capacity.

Optimize by using Spot Instances

On-demand Instances

• Pay as you go

• Starts from $0.025/Hour

Reserved Instances

• One time low upfront fee + Pay as you go

• $23 for 1 year term and $0.015/Hour

Spot Instances

• Requested Bid Price and Pay as you go

• $0.005/Hour as of today at 9 AM

What are Spot Instances?

Availability Zone

Region

Availability Zone

Unused

Unused

Unused

Unused

Unused

Unused

Sold at 50% Discount!

Sold at 56% Discount!

Sold at 66% Discount!

Sold at 59% Discount!

Sold at 54% Discount!

Sold at 63% Discount!

What is the tradeoff?

Availability Zone

Region

Availability Zone

Unused

Unused

Unused

Unused

Unused

Unused

Reclaimed

Reclaimed

Architecting for Spot Instances

Decouple Components Separate interactive and backend processing

Design for interruption Use SQS, SWF

data in a durable store

save progress regularly

Use Cases for Spot

Analytics Financial Modelling

and Analysis

Media Encoding Geospatial Analysis

Testing Scientific Computing

Web Crawling Big Data

#1: Cost without Spot 4 instances *14 hrs * $0.50 = $28 Job Flow

14 Hours

Duration:

EMR with Spot Instances

#2: Cost with Spot 4 instances *7 hrs * $0.50 = $14 +

5 instances * 7 hrs * $0.25 = $8.75

Total = $22.75

Scenario #1

Duration:

Job Flow

7 Hours

Scenario #2

Time Savings: 50%

Cost Savings: ~22%

Bidding Strategies

Strategy: Optimize for Cost

• Engineered application towards a cost

• Set low maximum bid price to minimize costs

• Comfortable if process takes longer or jobs were re-run

• When interrupted, no charge for that hour.

$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $

Strategy: Price History Momentum

• Monitor spot market price

• Bid 10% above Average Spot Price of the Last Hour

• Maximum bid of 80% of On-Demand Price

• Expect fewer interruptions than Optimize for Cost

Strategy: Price History Momentum

Strategy: Discount over On-Demand

• Bid around the On-Demand price

• Use On-Demand instance when Spot Price exceeds On-Demand price (or slightly higher)

• May pay more some hours, but on average they pay significantly less

• This bidding strategy ensures a discount over On-Demand

Strategy: Discount over On-Demand

Switch to

On-Demand Switch Back

to Spot

Substantial

Savings

Much lower

costs than

On-Demand

Strategy: Minimize Interruption ~57%

Savings

On Average

Substantial

Savings

Complementary services

Web Servers

$0.085 per hour

(small instance) Availability Zone

$0.028 per hour

Web Servers

Availability Zone

EC2 instance

+ software LB

Elastic Load

Balancer DNS

DNS

Producer

SQS queue

Consumers

Consumers Producer

EC2 instance

+ software queue

$0.01 per

10,000 Requests ($0.000001 per Request)

$0.085 per hour

(small instance)

Software v/s Services

SNS, SQS, SES, SWF

Pros

• Pay as you go

• Scalability

• Availability

• High performance

Software on EC2

Pros

• Custom features

Cons

• Requires an instance

• SPOF

• Limited to one AZ

• DIY administration

1. Elastic Capacity

2. Instance Types

3. Reserved Instances

4. Spot Instances

5. Complementary services

aws.amazon.com/economics

aws.amazon.com/calculator

Next Steps:

top related