Preparing For a Future Microservices Journey Susanne Kaiser - - PowerPoint PPT Presentation
Preparing For a Future Microservices Journey Susanne Kaiser - - PowerPoint PPT Presentation
Preparing For a Future Microservices Journey Susanne Kaiser Independent Tech Consultant @suksr @suksr @suksr @suksr Source: http://www.thomasthwaites.com @suksr @suksr Source: http://www.thomasthwaites.com @suksr @suksr Data Store
@suksr
@suksr
@suksr Source: http://www.thomasthwaites.com
@suksr
@suksr Source: http://www.thomasthwaites.com
@suksr
@suksr
Data Store
@suksr
Hardware O/S Virtualization Container Runtime
@suksr
API Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery
- 1. Register
- 3. Connect
- 2. Discover
Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer API Timeout-Handling Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer API Timeout-Handling Retries Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer API Timeout-Handling Retries Idempotency Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer API Timeout-Handling Retries Bulk- heads Idempotency Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer API Timeout-Handling Retries Bulk- Heads Circuit Breaker Idempotency Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer API Timeout-Handling Retries Bulk- heads Circuit Breaker Idempotency Message Broker Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer API Timeout-Handling Retries Bulk- heads Circuit Breaker Idempotency Message Broker API-Gateway Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer API Timeout-Handling Retries Bulk- heads Idempotency Message Broker API-Gateway Circuit Breaker Config-Mngmt. Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer API Timeout-Handling Retries Bulk- heads Idempotency Message Broker API-Gateway Circuit Breaker Config-Mngmt. Monitoring Log Aggreation Metrics Distributed Tracing Health Checks Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer API Timeout-Handling Retries Bulk- heads Idempotency Message Broker API-Gateway Circuit Breaker Config-Mngmt. Monitoring Log Aggreation Metrics Distributed Tracing Health Checks SCM
Checkout Test Build
CI/CD Pipeline
Deploy
Hardware O/S Virtualization Container Runtime
@suksr
API API API Service Discovery Load-Balancer API Timeout-Handling Retries Bulk- heads Idempotency Message Broker API-Gateway Circuit Breaker Config-Mngmt. Monitoring Log Aggreation Metrics Distributed Tracing Health Checks SCM
Checkout Test Build
CI/CD Pipeline
Deploy
Hardware O/S Virtualization Container Runtime Backup Recovery
@suksr
µService
@suksr
Hardware Data Store API API-Gateway Service Discovery Load-Balancer Message Broker Timeout-Handling Retries Idempotency Bulkheads Circuit Breaker Config-Mngmt. Monitoring Log Aggreation Metrics Distributed Tracing Health Checks SCM O/S Virtualization Container Runtime
Checkout Test Build
CI/CD Pipeline
Deploy
µService Backup Recovery
@suksr
Hardware Data Store API API-Gateway
Service Discovery Load-Balancer
Message Broker Timeout-Handling Retries Idempotency Bulkheads Circuit Breaker Config-Mngmt. Monitoring Log Aggreation Metrics Distributed Tracing Health Checks
SCM
O/S Virtualization Container Runtime Checkout Test Build
CI/CD Pipeline
Deploy Backup Recovery
@suksr
Complexities
Source: http://www.thomasthwaites.com/folio5/wp-content/uploads/2010/10/Toaster_Project1-PhotoCredit-Daniel_Alexanderx630.jpg
@suksr Source: http://www.thomasthwaites.com
How can a small team handle infrastructure complexities and deliver user & business value?
@suksr
Core Domain Focus User Value
@suksr
User Needs Build in-house
@suksr
Offloading commodities Business Needs Business Value Core Domain Focus User Value User Needs Build in-house Outsource to utility suppliers
What to build in-house? What to outsource?
@suksr
Wardley Maps
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Uncha harted ed Ind ndus ustrialised ed Chaotic Uncertain Unpredictable Changing ... Ordered Known Measured Stable ...
By Simon Wardley
P
- s
i t i
- n
Movement
Visualisation of a value chain’s evolution
@suksr
Who are your users?
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Value Chain
@suksr
Who are your users? What are your users’ needs?
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Value Chain
@suksr
Who are your users? What are your users’ needs? What are the components/activities to fulfil your users’ needs incl. dependencies?
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Value Chain
P
- s
i t i
- n
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Evolution
Wardley Maps
Landscape
Components along evolution axes
Genesis Custom-Built Product (+rental) Commodity (+utility) P
- s
i t i
- n
Movement
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Everything evolves
Past Current Future
Supply Competition Demand Competition
Wardley Maps
Patterns
Uncharted Industrialised @suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Everything evolves
Past Current Future
Continuous adaption
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Efficiency enables innovation
Uncharted Industrialised
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Efficiency enables innovation
Uncharted Industrialised
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Efficiency enables innovation
Uncharted Industrialised
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Efficiency enables innovation
Uncharted Industrialised
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Past Current
Success breeds inertia
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Success breeds inertia
Past Current
Inertia can kill an organisation
Wardley Maps
Patterns
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Speakers Feedback
Focus on user needs
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Schedule Management Speaker Management Survey Platform Speakers Feedback Session Rating Ticketing Platform
P
- s
i t i
- n
Understand the involved components and their dependencies (position)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Schedule Management Speaker Management Survey Platform Speakers Feedback Session Rating Ticketing Platform
P
- s
i t i
- n
Data Storage
Understand the involved components and their dependencies (position)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Schedule Management Speaker Management Survey Platform Speakers Feedback Session Rating Ticketing Platform Search Engine
P
- s
i t i
- n
Data Storage
Understand the involved components and their dependencies (position)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Schedule Management Speaker Management Survey Platform Speakers Feedback Session Rating Ticketing Platform Search Engine Message Broker
P
- s
i t i
- n
Data Storage
Understand the involved components and their dependencies (position)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Schedule Management Speaker Management Survey Platform Speakers Feedback Session Rating Ticketing Platform Search Engine Compute Platform Message Broker
P
- s
i t i
- n
Data Storage
Understand the involved components and their dependencies (position)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule Schedule Management Speaker Management Survey Platform Speakers Feedback Session Rating Ticketing Platform Search Engine Compute Platform Message Broker VM
P
- s
i t i
- n
Data Storage
Understand the involved components and their dependencies (position)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule Mgmnt. Speaker Mgmnt. Survey Platform
Speakers Feedback
Session Rating Ticketing Platform Search Engine Compute Platform Data Storage VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Movement Message Broker
Plot components along evolution axes (movement)
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule Mgmnt. Speaker Mgmnt. Survey Platform
Speakers Feedback
Session Rating Ticketing Platform Search Engine Compute Platform Data Storage VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Movement Message Broker
Discuss & plan
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS Search Engine Compute Platform DB aaS VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Movement Message Broker
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS Search Engine Compute Platform DB aaS VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution
Movement Message Broker
Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Use appropriate methods per evolution stage
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS Compute Platform DB aaS VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Search Engine Message Broker
Infrastructure complexities
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS Compute Platform DB aaS VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Search Engine Message Broker
Plan offloading infrastructure complexities
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS Compute Platform DB aaS VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Search Engine Message Broker Worker Nodes Master Node
Container Orchestration
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS Compute Platform DB aaS VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Search Engine Message Broker Worker Nodes Master Node Pod Deploym. Service Volume
New Primitives
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS Compute Platform DB aaS VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Search Engine Message Broker Worker Nodes Master Node
Container Orchestration w/ Kubernetes
Pod Deploym. Service Volume
New Primitives
Stateful Set Job Daemon Set Cron Job Ingress Egress Secret Config Map Persistent Volume Claim Replication Controller Replica Set Horizontal Pod Autoscaler … and more
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS Compute Platform DB aaS VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Search Engine Message Broker Worker Nodes Master Node Container Orchestration
Plan offloading application networking concerns
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS Compute Platform DB aaS VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Search Engine Message Broker Worker Nodes Master Node Container Orchestration Sidecar Proxy Pilot Mixer Citadel
Service Mesh
e.g. Istio
New Primitives
@suksr
Value Chain
I n v i s i b l e V i s i b l e
Wardley Maps
Example Conference Solution Attendee
Ticket Schedule
Schedule M. Speaker M. Survey aaS
Speakers Feedback
Session Rating Ticketing aaS Compute Platform DB aaS VM Genesis Custom-Built Product (+rental) Commodity (+utility)
Evolution Build in-house Use/buy off-the-shelf product Outsource to utility suppliers
Search Engine Message Broker
Serverless
Function Orchestration Compute Platform
@suksr
Build your core domain in-house
@suksr
Outsource commodities to utility suppliers Focus on user needs
@suksr