Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
How to Build Production-Ready
Microservices
Michael Kehoe
Staff Site Reliability Engineer
Today’s
agenda
1 Introductions
2 Tenets of Readiness
3 Creating Measurable guidelines
4 Measuring readiness
5 Key Learning...
Introduction
Michael Kehoe
$ WHOAMI
• Staff Site Reliability Engineer @ LinkedIn
• Production-SRE Team
• Funny accent = Australian + 4 ...
Production-SRE Team @ LinkedIn
$ WHOAMI
• Disaster Recovery - Planning &
Automation
• Incident Response – Process &
Automa...
What is a Production Ready
Service?
O’Reilly 2017
Susan J. Fowler
Production-Ready
Microservices
“A production-ready application or service is
one that can be trusted to serve production
traffic…”
S U S A N J . F O W L ...
“… We trust it to behave reasonably, we trust it
to perform reliably, we trust it to get the job
done and to do its job we...
Tenets of readiness
Tenets of
Readine
ss
1 Stability & Reliability
2 Scalability & Performance
3 Fault Tolerance and DR
4 Monitoring
5 Documen...
Stability & Reliability
Tenets of Readiness
STABILITY
• Stable development cycle
• Stable deployment cycle
Tenets of Readiness
RELIABILITY
• Dependency Management
• Onboarding + Deprecation procedures
• Routing + Discovery
Scalability & Performance
Tenets of Readiness
SCALABILITY
• Understanding growth-scales
• Resource awareness
• Dependency scaling
Tenets of Readiness
PERFORMANCE
• Constant performance evaluation
• Traffic management
• Capacity Planning
Fault Tolerance & DR
Tenets of Readiness
FAULT TOLERANCE
• Avoiding Single Points of Failure (SPOF)
• Resiliency Engineering
Tenets of Readiness
DISASTER RECOVERY
• Understand failure scenario’s
• Disaster Recovery Plans
• Incident Management
Monitoring
Tenets of Readiness
MONITORING
• Dashboards + Alerting for:
• Service
• Resource Allocation
• Infrastructure
• All alerts ...
Documentation
Tenets of Readiness
DOCUMENTATION
• Have one central landing-place for
documentation for the service
• Review of documenta...
Tenets of Readiness
DOCUMENTATION
• What should documentation include:
• Key information (ports/ hostnames
etc)
• Descript...
Creating Measurable
Guidelines
Creating Measurable Guidelines
• Not all guidelines directly translate into
something measurable
• You may need to look ou...
Creating Measurable Guidelines
EXAMPLE
• Stability:
• Stable development cycle
• Stable deployment process
• Stable introd...
Creating Measurable Guidelines
EXAMPLE
• Stable development cycle
 Is the unit-test coverage above X %?
 Has this code-b...
Creating Measurable Guidelines
EXAMPLE
• Stable deployment process
 Has the application been deployed
recently?
 What is...
Measuring Readiness
Measuring Readiness
WHY?
Ensuring that services
are built and operated
in a standard manner
Standardization
Ensuring that ...
Measuring Readiness
HOW?
Create a manual
checklist
Manual
Checklists
Automate the discovery
and measurement of
readiness
A...
Breakdown of scores by team
Automated Service Discovery
Service Score Card
Automated Scorecards
Team Overview
Service Score Card
Automated Scorecards
Breakdown of readiness results
Service Score Card
Automated Scorecards
Key Learnings
Key Learnings
A set of guidelines for
what it means for
your service to be
‘ready’
Create
Automate the
checking and scorin...
Q & A
Building Production-Ready Microservices: DevopsExchangeSF
Upcoming SlideShare
Loading in …5
×

of

Building Production-Ready Microservices: DevopsExchangeSF Slide 1 Building Production-Ready Microservices: DevopsExchangeSF Slide 2 Building Production-Ready Microservices: DevopsExchangeSF Slide 3 Building Production-Ready Microservices: DevopsExchangeSF Slide 4 Building Production-Ready Microservices: DevopsExchangeSF Slide 5 Building Production-Ready Microservices: DevopsExchangeSF Slide 6 Building Production-Ready Microservices: DevopsExchangeSF Slide 7 Building Production-Ready Microservices: DevopsExchangeSF Slide 8 Building Production-Ready Microservices: DevopsExchangeSF Slide 9 Building Production-Ready Microservices: DevopsExchangeSF Slide 10 Building Production-Ready Microservices: DevopsExchangeSF Slide 11 Building Production-Ready Microservices: DevopsExchangeSF Slide 12 Building Production-Ready Microservices: DevopsExchangeSF Slide 13 Building Production-Ready Microservices: DevopsExchangeSF Slide 14 Building Production-Ready Microservices: DevopsExchangeSF Slide 15 Building Production-Ready Microservices: DevopsExchangeSF Slide 16 Building Production-Ready Microservices: DevopsExchangeSF Slide 17 Building Production-Ready Microservices: DevopsExchangeSF Slide 18 Building Production-Ready Microservices: DevopsExchangeSF Slide 19 Building Production-Ready Microservices: DevopsExchangeSF Slide 20 Building Production-Ready Microservices: DevopsExchangeSF Slide 21 Building Production-Ready Microservices: DevopsExchangeSF Slide 22 Building Production-Ready Microservices: DevopsExchangeSF Slide 23 Building Production-Ready Microservices: DevopsExchangeSF Slide 24 Building Production-Ready Microservices: DevopsExchangeSF Slide 25 Building Production-Ready Microservices: DevopsExchangeSF Slide 26 Building Production-Ready Microservices: DevopsExchangeSF Slide 27 Building Production-Ready Microservices: DevopsExchangeSF Slide 28 Building Production-Ready Microservices: DevopsExchangeSF Slide 29 Building Production-Ready Microservices: DevopsExchangeSF Slide 30 Building Production-Ready Microservices: DevopsExchangeSF Slide 31 Building Production-Ready Microservices: DevopsExchangeSF Slide 32 Building Production-Ready Microservices: DevopsExchangeSF Slide 33 Building Production-Ready Microservices: DevopsExchangeSF Slide 34 Building Production-Ready Microservices: DevopsExchangeSF Slide 35 Building Production-Ready Microservices: DevopsExchangeSF Slide 36 Building Production-Ready Microservices: DevopsExchangeSF Slide 37 Building Production-Ready Microservices: DevopsExchangeSF Slide 38 Building Production-Ready Microservices: DevopsExchangeSF Slide 39 Building Production-Ready Microservices: DevopsExchangeSF Slide 40
Upcoming SlideShare
What to Upload to SlideShare
Next
Download to read offline and view in fullscreen.

0 Likes

Share

Download to read offline

Building Production-Ready Microservices: DevopsExchangeSF

Download to read offline

Michael Kehoe talks about what production-ready means, how to build production-ready microservices and how to measure their readiness

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all
  • Be the first to like this

Building Production-Ready Microservices: DevopsExchangeSF

  1. 1. How to Build Production-Ready Microservices Michael Kehoe Staff Site Reliability Engineer
  2. 2. Today’s agenda 1 Introductions 2 Tenets of Readiness 3 Creating Measurable guidelines 4 Measuring readiness 5 Key Learning’s 6 Q&A
  3. 3. Introduction
  4. 4. Michael Kehoe $ WHOAMI • Staff Site Reliability Engineer @ LinkedIn • Production-SRE Team • Funny accent = Australian + 4 years American • Worked on: • Networks • Microservices • Traffic Engineering • Databases
  5. 5. Production-SRE Team @ LinkedIn $ WHOAMI • Disaster Recovery - Planning & Automation • Incident Response – Process & Automation • Visibility Engineering – Making use of operational data • Reliability Principles – Defining best practice & automating it
  6. 6. What is a Production Ready Service?
  7. 7. O’Reilly 2017 Susan J. Fowler Production-Ready Microservices
  8. 8. “A production-ready application or service is one that can be trusted to serve production traffic…” S U S A N J . F O W L E R
  9. 9. “… We trust it to behave reasonably, we trust it to perform reliably, we trust it to get the job done and to do its job well with very little downtime.” S U S A N J . F O W L E R
  10. 10. Tenets of readiness
  11. 11. Tenets of Readine ss 1 Stability & Reliability 2 Scalability & Performance 3 Fault Tolerance and DR 4 Monitoring 5 Documentation
  12. 12. Stability & Reliability
  13. 13. Tenets of Readiness STABILITY • Stable development cycle • Stable deployment cycle
  14. 14. Tenets of Readiness RELIABILITY • Dependency Management • Onboarding + Deprecation procedures • Routing + Discovery
  15. 15. Scalability & Performance
  16. 16. Tenets of Readiness SCALABILITY • Understanding growth-scales • Resource awareness • Dependency scaling
  17. 17. Tenets of Readiness PERFORMANCE • Constant performance evaluation • Traffic management • Capacity Planning
  18. 18. Fault Tolerance & DR
  19. 19. Tenets of Readiness FAULT TOLERANCE • Avoiding Single Points of Failure (SPOF) • Resiliency Engineering
  20. 20. Tenets of Readiness DISASTER RECOVERY • Understand failure scenario’s • Disaster Recovery Plans • Incident Management
  21. 21. Monitoring
  22. 22. Tenets of Readiness MONITORING • Dashboards + Alerting for: • Service • Resource Allocation • Infrastructure • All alerts are actionable and have pre- documented procedures. • Logging
  23. 23. Documentation
  24. 24. Tenets of Readiness DOCUMENTATION • Have one central landing-place for documentation for the service • Review of documentation from Engineer/ SRE/ Partners • Reviewed Regularly
  25. 25. Tenets of Readiness DOCUMENTATION • What should documentation include: • Key information (ports/ hostnames etc) • Description • Architecture Diagram • API description • Oncall information • Onboarding information
  26. 26. Creating Measurable Guidelines
  27. 27. Creating Measurable Guidelines • Not all guidelines directly translate into something measurable • You may need to look outcomes of specific guidance to create measurable guidelines
  28. 28. Creating Measurable Guidelines EXAMPLE • Stability: • Stable development cycle • Stable deployment process • Stable introduction and deprecation procedures
  29. 29. Creating Measurable Guidelines EXAMPLE • Stable development cycle  Is the unit-test coverage above X %?  Has this code-base been built in the last week?  Is there a staging environment for the application?
  30. 30. Creating Measurable Guidelines EXAMPLE • Stable deployment process  Has the application been deployed recently?  What is the successful deployment percentage?
  31. 31. Measuring Readiness
  32. 32. Measuring Readiness WHY? Ensuring that services are built and operated in a standard manner Standardization Ensuring that services are trustworthy Quality Assurance
  33. 33. Measuring Readiness HOW? Create a manual checklist Manual Checklists Automate the discovery and measurement of readiness Automated Scorecards
  34. 34. Breakdown of scores by team Automated Service Discovery Service Score Card Automated Scorecards
  35. 35. Team Overview Service Score Card Automated Scorecards
  36. 36. Breakdown of readiness results Service Score Card Automated Scorecards
  37. 37. Key Learnings
  38. 38. Key Learnings A set of guidelines for what it means for your service to be ‘ready’ Create Automate the checking and scoring of these guidelines Automate Set the expectation between Engineering/ Product/ SRE that these guidelines have to be met Evangelize
  39. 39. Q & A

Michael Kehoe talks about what production-ready means, how to build production-ready microservices and how to measure their readiness

Views

Total views

417

On Slideshare

0

From embeds

0

Number of embeds

2

Actions

Downloads

4

Shares

0

Comments

0

Likes

0

×