show me the money! - draft
Post on 22-Jan-2018
332 Views
Preview:
TRANSCRIPT
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
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 - 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 - Delivery Engine Bookkeeper
Oki lets build it!
S3
Cost Reports
AWS Lambda
DynamoDB
Process Files
Bookkeeper
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
top related