Show me the money! - Draft

29
Show me the money! Micro Services, AWS and Continuous Delivery

Transcript of Show me the money! - Draft

Show me the money!Micro Services, AWS and Continuous Delivery

Micro Services - Vision

Micro Services - Vision

Our Key non functional requirement

One lifecycle per Micro Service- Scaleability per Micro Service- HA per Micro Service

Devops- One team to Build and Host

a Micro Service

Micro Services - Reality

?

Micro Services - Reality

Each Micro Service having its own servers???

Are you crazy???

You know what that would cost???

No you tell me!

....

..

.

Micro Services - Reality

Architects & Developers - We Want Micro Service Architecture!!

Infrastructure Architects - We cannot change our infrastructure

Infrastructure Projects - Resource planning & Purchases

Operations Organization - Gets some infrastructure to manage

Finance - ((leasing/writeOff)^2/keyOut)*12

ITS EXPENSIVE WTF WHERE YOU THINKING!!!

Micro Services - Reality

Co-deploy?

Not able to isolate lifecycle of each MicroService

OS, Java, App Server, ect upgrades risk affecting other applications.

Micro Services - Reality

Docker?

OS version on existing servers.

Not isolated lifecycles per Micro Service- Full Host Server Scenario tricky- Adding Hosts == Resource Planning

Non trivila Docker networking

Micro Services - Reality

AWS!

1 Elastic Load Balancer & 1 Auto Scaling Group per Micro Service

Fully isolated lifecycle of each Micro Service

Scaleability and HA per micro service

Micro Services - Reality!!!

AWS!

What does it cost?

How many servers do we need?

How does Auto Scaling affect cost?

Micro Services - in AWS Auto Scaling

Auto Scaling to the right capacity at the right time!

But!

Our applications can be slow and still scale!!

To slow!

Thats better!

$$$

Micro Services - in AWS Instance Sizes

Some applications are more memory bound some are more cpu bound.

Our applications can be be inefficient scale!!

To slow!

Thats better!

$$$

Micro Services - Who Decides?

How many and what instances to use.

DevOps Team does!

“One team to Build and Host a MicroService”

To slow!

Thats better!

$$$

Micro Services - DevOps

Architects & Developers - Do everything!

Infrastructure Architects - Are pissed!

Infrastructure Projects - Dont exist!

Operations Organization - Conflused?!?!

Finance - pay a bill

ITS EXPENSIVE WTF WHERE YOU THINKING!!!

Micro Services - DevOps Team

Expand responsibility!

Build and Host the right application at the right cost!

Right cost?- Functional & Non Functional Requirements

DevOps Team is accountable for Runtime Cost

Micro Services - Single Tenant

Tagging strategy!

Owner=${teamName}Tenant=${customer}Component=${app}Id=${environment}-${app}-${version}

Customer A

Customer B

Micro Services - Multi Tenant

Tagging strategy!

Owner=${teamName}Tenant=${customer}Component=${app}Id=${environment}-${app}-${version}

Plus Request logging for usage split

Shared

Micro Services - Multi Tenant

Tagging by Convention over Configuration!

Shared

Micro Services - Environment Definition

Account = QARegion = EU-WEST-1Solution = CustomerAEnvironment = PREPROD

Customer A

Customer B

Micro Services - Delivery Engine

Tagging by

Convention over Configuration!

GIT

owner: FleetTeampipe: application-pipe

.delivery-engine.yml

Owner=FleetTeamTenant=CustomerBComponent=Fleetorg..

Customer B

Micro Services - Visualize Cost

AWS Cost Explorer

Nice and all but..

Hidden in AWS ConsoleNot all that intuitiveFar from other information

AWS Does Great Services & APIs

AWS Does Horrible GUIs

I want to see cost and what Im paying for in one view!

Micro Services - Visualize Cost

AWS Cost Explorer API

?

Micro Services - Delivery Engine Bookkeeper

Oki lets build it!

S3

Cost Reports

AWS Lambda

DynamoDB

Process Files

Bookkeeper

Micro Services - Delivery Engine Bookkeeper

I want to see what I pay for

Micro Services - Delivery Engine Bookkeeper

I want to see what I pay for

Micro Services - Delivery Engine Bookkeeper

Domain owners want to see what they pay for

Solution Owners want to see what they pay for

Micro Services - Vision Enabled

DevOps Team can “Build and Host the right application at the right cost!”

Micro Services - with Delivery Engine Reality!!!

AWS!

What does it cost? Look in Delivery Engine

How many servers do we need?Look in Delivery Engine

How does Auto Scaling affect cost?Look in Delivery Engine

Micro Services - in AWS Reality!!!

No more guesstimates, cost estimates made from metrics!

No more capacity planning!