Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
TeamTopologies.com
@TeamTopologies
The Elephant in the
Kubernetes Room
Team Interactions at Scale
Manuel Pais, Consultant
...
2
Is Kubernetes a Platform?
Dev and Ops Equilibrium
Team Cognitive Load
Team Interactions
Team Topologies
4
Organizing business and
technology teams for fast flow
Matthew Skelton & Manuel Pais
IT Revolution Press...
Is Kubernetes a Platform?
5
6
Source: https://www.infoq.com/news/2019/03/airbnb-kubernetes-workflow
Melanie’s talk: https://www.infoq.com/presentation...
7
Kubernetes “platform”
microservices
ops complexity
8
Kubernetes “platform”
deploy & run
abstractions
9
10
11
Still need to...
… sizing hosts
… create/destroy clusters
… update to new K8s versions
… decide on namespaces vs cluste...
12
Still need to...
… sizing hosts
… create/destroy clusters
… update to new K8s versions
… decide on namespaces vs cluste...
Who is responsible ?
13
Who is responsible ?
Who is impacted ?
14
15
“A digital platform is a foundation of
self-service APIs, tools, services,
knowledge and support which are
arranged as a c...
Kubernetes is not your
platform. It’s the foundation.
17
“Create a path of
least resistance.
Make the right thing
the easiest thing to do.”
– Evan Bottcher, 2018
18
The hardest thing about
platforms is to constantly
evolve & adapt to new &
old customers.
19
Dev and Ops:
a fragile equilibrium
20
devopstopologies.com
devopstopologies.com
23
https://cloud.google.com/blog/products/devops-sre/the-2019-accelerate-state-of- devops-elite-
performance-productivity-...
devopstopologies.com
25
26
devopstopologies.com
Team Cognitive Load
32
“Cognitive load is the total
amount of mental effort
being used in the working
memory”
- John Sweller
33
Intrinsic
Extraneous
Germane
34
“How are
classes
defined in
Java?”
Intrinsic
Extraneous
Germane
35
“How do I
deploy
this app,
again?”
Intrinsic
Extraneous
Germane
36
“How do
bank
transfers
work?”
Intrinsic (skills)
Extraneous (mechanics)
Germane (domain focus)
37
Intrinsic (skills)
Extraneous (mechanics)
Germane (domain focus)
38
Intrinsic (skills)
Extraneous (mechanics)
Germane (domain focus)
39
Intrinsic (skills)
Extraneous (mechanics)
Germane (domain focus)
40
More: ‘Hacking Your Head’
41
Jo Pearce
(@jdpearce)
https://www.slideshare.net/JoPearce5/hacking-your-head-managing-informa...
Be mindful of your
platform choices’ impact
on teams’ cognitive load
42
CaseStudy
43
“The best part of my day is when I
update 10 different YAML files to
deploy a one-line code change.”
44
“The best part of my day is when I
update 10 different YAML files to
deploy a one-line code change.”
– No One, Ever
45
46
47
Clarify (platform) service
boundaries and provide
abstractions to reduce the
cognitive load on teams.
48
Team Topologies
49
Organizing business and
technology teams for fast flow
Matthew Skelton & Manuel Pais
IT Revolution Pres...
50
51
CaseStudy
54
55
Source: https://medium.com/@pingles/convergence-to-kubernetes-137ffa7ea2bc
56
Low-level AWS service calls (EC2, IAM, STS, Autoscaling, etc.) from January 2015 to January 2017
“We didn’t change our organization
because we wanted to use
Kubernetes, we used Kubernetes
because we wanted to change
our...
58
Low-level AWS service calls since Kubernetes adoption in January 2017
60
enable stream-aligned
teams to deliver work
autonomously with self-
service capabilities ...
Platform Purpose
61
… in order to reduce
extraneous cognitive load
on stream-aligned teams
Platform Purpose
“We wanted to scale our teams but
maintain the principles of what
helped us move fast: autonomy,
work with minimal coordin...
Treat the platform
as a product
64
Reliable
Fit for Purpose
Focused on DevEx
65
66
on-call support
service status pages
suitable comms channels
response time for incidents
downtime planned & announced
R...
67
prototyping
fast, regular feedback
agile, iterative practices
few(er) services, high(er) quality
skilled product manage...
68
speak the same language
right level of abstractions for
your engineering teams today
#DevEx Focused Platform
69
“Kubernetes helps us in a few ways:
- Application-focused abstractions
- Operate and configure clusters to
minimise coordi...
Dynamic Database Credentials
Multi-Cluster Load Balancing
Alerts + SLOs
Source (Joseph Irving):https://t.co/99gwRH7dU2
72
73
74
2018
Infra platform
started with few
services
First customer
(centralized
logging, metrics,
auto scaling)
75
2018
Infra platform
started with few
services
First customer
(centralized
logging, metrics,
auto scaling)
2019
Started ...
76
...
Addressed critical
cross-functional
needs (GDPR,
security, alerts +
SLOs as a service)
Adoption by HRMT
(Highest Re...
77
...
Addressed critical
cross-functional
needs (GDPR,
security, alerts +
SLOs as a service)
Adoption by HRMT
(Highest Re...
Team Interactions
82
84
85
86service boundary
87service boundarycognitive load
94
strong collaboration with
stream-aligned teams for
any new service or evolution
Platform Behaviors
95
96
provide support and great
documentation for stable
services
Platform Behaviors
97
98
99
105
106
107
108
112
Source: https://landscape.cncf.io
113
114
Getting started with
team-centric
Kubernetes adoption
115
How well can the team understand the
platform/Kubernetes abstractions they
need to use on a regular basis?
1 - Assess cogn...
What’s the gap between your
Kubernetes implementation and an
internal digital platform?
2 - Define your platform
117
Who is responsible for what? Who is
impacted? How do you collaborate on
new platform internal services?
Collaboration vs X...
Zalando Kubernetes at Zalando
Mercedes DevOps Adoption at Mercedes-Benz.io
Twilio Platforms at Twilio: Unlocking Developer...
120
https://techbeacon.com/enterprise-it/why-teams-fail-kubernetes-what-do-about-it
Thank you!
teamtopologies.com
121
Matthew Skelton, Conflux
@matthewpskelton
Manuel Pais, Independent
@manupaisable
Copyrig...
Nächste SlideShare
Wird geladen in …5
×

The Elephant in the Kubernetes Room: Team Interactions at Scale @ DevOpsDaysMadrid, Feb 2020 (keynote)

Kubernetes helps us tame sprawling microservices architectures and addressing the increased operational complexity. Kubernetes gives developers abstractions and APIs to deploy and run their services.

Yet, the elephant in the room is that to run, maintain and evolve the Kubernetes clusters, we need more ops expertise and most likely a dedicated team to do so.

The question that begs to be asked is if we are going back to pre-DevOps isolation between Dev and Ops teams? Is the tradeoff between better operational tools and introducing a new dependency layer on the path for application teams to deliver and run their services worthwhile? Are we making life easier for application teams or instead reducing their end-to-end ownership?

Team Topologies is a structured approach for thinking about teams responsibilities and interactions which can help us get the most value out of Kubernetes adoption.

This talk draws on research and case studies from the Team Topologies book by Matthew Skelton and Manuel Pais (IT Revolution Press, 2019) together with first-hand consulting experience from the authors with organizations around the world.

  • Loggen Sie sich ein, um Kommentare anzuzeigen.

The Elephant in the Kubernetes Room: Team Interactions at Scale @ DevOpsDaysMadrid, Feb 2020 (keynote)

  1. 1. TeamTopologies.com @TeamTopologies The Elephant in the Kubernetes Room Team Interactions at Scale Manuel Pais, Consultant co-author of Team Topologies - @manupaisable DevOpsDays Madrid 2020 #devopsdays
  2. 2. 2 Is Kubernetes a Platform? Dev and Ops Equilibrium Team Cognitive Load Team Interactions
  3. 3. Team Topologies 4 Organizing business and technology teams for fast flow Matthew Skelton & Manuel Pais IT Revolution Press (2019) https://teamtopologies.com
  4. 4. Is Kubernetes a Platform? 5
  5. 5. 6 Source: https://www.infoq.com/news/2019/03/airbnb-kubernetes-workflow Melanie’s talk: https://www.infoq.com/presentations/airbnb-kubernetes-services
  6. 6. 7
  7. 7. Kubernetes “platform” microservices ops complexity 8
  8. 8. Kubernetes “platform” deploy & run abstractions 9
  9. 9. 10
  10. 10. 11 Still need to... … sizing hosts … create/destroy clusters … update to new K8s versions … decide on namespaces vs clusters <insert your fav chore here>
  11. 11. 12 Still need to... … sizing hosts … create/destroy clusters … update to new K8s versions … decide on namespaces vs clusters worry about security
  12. 12. Who is responsible ? 13
  13. 13. Who is responsible ? Who is impacted ? 14
  14. 14. 15
  15. 15. “A digital platform is a foundation of self-service APIs, tools, services, knowledge and support which are arranged as a compelling internal product.” – Evan Bottcher, 2018 16
  16. 16. Kubernetes is not your platform. It’s the foundation. 17
  17. 17. “Create a path of least resistance. Make the right thing the easiest thing to do.” – Evan Bottcher, 2018 18
  18. 18. The hardest thing about platforms is to constantly evolve & adapt to new & old customers. 19
  19. 19. Dev and Ops: a fragile equilibrium 20
  20. 20. devopstopologies.com
  21. 21. devopstopologies.com
  22. 22. 23 https://cloud.google.com/blog/products/devops-sre/the-2019-accelerate-state-of- devops-elite- performance-productivity-and-scaling
  23. 23. devopstopologies.com
  24. 24. 25
  25. 25. 26
  26. 26. devopstopologies.com
  27. 27. Team Cognitive Load 32
  28. 28. “Cognitive load is the total amount of mental effort being used in the working memory” - John Sweller 33
  29. 29. Intrinsic Extraneous Germane 34 “How are classes defined in Java?”
  30. 30. Intrinsic Extraneous Germane 35 “How do I deploy this app, again?”
  31. 31. Intrinsic Extraneous Germane 36 “How do bank transfers work?”
  32. 32. Intrinsic (skills) Extraneous (mechanics) Germane (domain focus) 37
  33. 33. Intrinsic (skills) Extraneous (mechanics) Germane (domain focus) 38
  34. 34. Intrinsic (skills) Extraneous (mechanics) Germane (domain focus) 39
  35. 35. Intrinsic (skills) Extraneous (mechanics) Germane (domain focus) 40
  36. 36. More: ‘Hacking Your Head’ 41 Jo Pearce (@jdpearce) https://www.slideshare.net/JoPearce5/hacking-your-head-managing-information-overload-extended
  37. 37. Be mindful of your platform choices’ impact on teams’ cognitive load 42
  38. 38. CaseStudy 43
  39. 39. “The best part of my day is when I update 10 different YAML files to deploy a one-line code change.” 44
  40. 40. “The best part of my day is when I update 10 different YAML files to deploy a one-line code change.” – No One, Ever 45
  41. 41. 46
  42. 42. 47
  43. 43. Clarify (platform) service boundaries and provide abstractions to reduce the cognitive load on teams. 48
  44. 44. Team Topologies 49 Organizing business and technology teams for fast flow Matthew Skelton & Manuel Pais IT Revolution Press (2019) https://teamtopologies.com
  45. 45. 50
  46. 46. 51
  47. 47. CaseStudy 54
  48. 48. 55 Source: https://medium.com/@pingles/convergence-to-kubernetes-137ffa7ea2bc
  49. 49. 56 Low-level AWS service calls (EC2, IAM, STS, Autoscaling, etc.) from January 2015 to January 2017
  50. 50. “We didn’t change our organization because we wanted to use Kubernetes, we used Kubernetes because we wanted to change our organization.” - Paul Ingles 57
  51. 51. 58 Low-level AWS service calls since Kubernetes adoption in January 2017
  52. 52. 60 enable stream-aligned teams to deliver work autonomously with self- service capabilities ... Platform Purpose
  53. 53. 61 … in order to reduce extraneous cognitive load on stream-aligned teams Platform Purpose
  54. 54. “We wanted to scale our teams but maintain the principles of what helped us move fast: autonomy, work with minimal coordination, self-service infrastructure.” - Paul Ingles 63
  55. 55. Treat the platform as a product 64
  56. 56. Reliable Fit for Purpose Focused on DevEx 65
  57. 57. 66 on-call support service status pages suitable comms channels response time for incidents downtime planned & announced Reliable Platform
  58. 58. 67 prototyping fast, regular feedback agile, iterative practices few(er) services, high(er) quality skilled product management Fit for Purpose Platform
  59. 59. 68 speak the same language right level of abstractions for your engineering teams today #DevEx Focused Platform
  60. 60. 69
  61. 61. “Kubernetes helps us in a few ways: - Application-focused abstractions - Operate and configure clusters to minimise coordination ” - Paul Ingles 70
  62. 62. Dynamic Database Credentials Multi-Cluster Load Balancing Alerts + SLOs Source (Joseph Irving):https://t.co/99gwRH7dU2
  63. 63. 72
  64. 64. 73
  65. 65. 74 2018 Infra platform started with few services First customer (centralized logging, metrics, auto scaling)
  66. 66. 75 2018 Infra platform started with few services First customer (centralized logging, metrics, auto scaling) 2019 Started using SLAs and SLOs, clarifying reliability/latency/etc Growing traffic in platform vs AWS
  67. 67. 76 ... Addressed critical cross-functional needs (GDPR, security, alerts + SLOs as a service) Adoption by HRMT (Highest Revenue Making team) 2018 Infra platform started with few services First customer (centralized logging, metrics, auto scaling) 2019 Started using SLAs and SLOs, clarifying reliability/latency/etc Growing traffic in platform vs AWS
  68. 68. 77 ... Addressed critical cross-functional needs (GDPR, security, alerts + SLOs as a service) Adoption by HRMT (Highest Revenue Making team) 2018 Infra platform started with few services First customer (centralized logging, metrics, auto scaling) 2019 Started using SLAs and SLOs, clarifying reliability/latency/etc Growing traffic in platform vs AWS
  69. 69. Team Interactions 82
  70. 70. 84
  71. 71. 85
  72. 72. 86service boundary
  73. 73. 87service boundarycognitive load
  74. 74. 94 strong collaboration with stream-aligned teams for any new service or evolution Platform Behaviors
  75. 75. 95
  76. 76. 96 provide support and great documentation for stable services Platform Behaviors
  77. 77. 97
  78. 78. 98
  79. 79. 99
  80. 80. 105
  81. 81. 106
  82. 82. 107
  83. 83. 108
  84. 84. 112 Source: https://landscape.cncf.io
  85. 85. 113
  86. 86. 114
  87. 87. Getting started with team-centric Kubernetes adoption 115
  88. 88. How well can the team understand the platform/Kubernetes abstractions they need to use on a regular basis? 1 - Assess cognitive load 116
  89. 89. What’s the gap between your Kubernetes implementation and an internal digital platform? 2 - Define your platform 117
  90. 90. Who is responsible for what? Who is impacted? How do you collaborate on new platform internal services? Collaboration vs X-as-a-Service 3 - Team Interactions 118
  91. 91. Zalando Kubernetes at Zalando Mercedes DevOps Adoption at Mercedes-Benz.io Twilio Platforms at Twilio: Unlocking Developer Effectiveness Adidas Where Cloud Native Meets the Sporting Goods Industry ITV ITV's Common Platform v2 Better, Faster, Cheaper, Happier MAN Truck & Bus How to Manage Cloud Infrastructure at MAN Truck & Bus Farfetch UX I DevOps - The Trojan Horse for Implementing a DevOps Culture More platform examples 119
  92. 92. 120 https://techbeacon.com/enterprise-it/why-teams-fail-kubernetes-what-do-about-it
  93. 93. Thank you! teamtopologies.com 121 Matthew Skelton, Conflux @matthewpskelton Manuel Pais, Independent @manupaisable Copyright © Conflux Digital Ltd 2018-2020. All rights reserved. Registered in England and Wales, number 10890964 Icons made by Freepik from www.flaticon.com - used under license

×