Presented at FOSDEM 2021: https://fosdem.org/2021/schedule/event/k8sconfigmgmtlandscape/
“We are all YAML engineers now” as Bob Walker said in 2018 in Ghent. So we now need something to manage these millions of lines of YAML. There’s the “Kubernetes application management tools” list by Bryan Grant with over 120 tool aiming at config management for Kubernetes. This area is evolving fast, and as k8s users we need some guidance to make informed decisions on what to use. In this talk I’ll describe the problem I need to solve and take a look into what we can learn from the previous generation of cfg mgmt tools. Then, will show some of the new tools and methods. Will not go into details of each solution, but rather compare different approaches and discuss which is good for specific needs.
3. Configuration Management
@ttarczynski
“Of all the problems we have confronted, the ones over
which the most brainpower, ink, and code have been
spilled are related to managing configurations.”
Borg, Omega, and Kubernetes (2016)
Brendan Burns, Brian Grant, David Oppenheimer, Eric Brewer, John Wilkes
8. Kubernetes
@ttarczynski
● Control plane provides a Declarative API
● Declare the desired state
● Control plane makes sure that the actual
state converges to the desired state
14. Kubernetes: Declarative application management
@ttarczynski
● “Declarative application management in
Kubernetes”
– article by Brian Grant, 2017
15. Kubernetes: Declarative application management
@ttarczynski
● Central Idea:
○ Composable tools
○ Manipulate configuration data
○ Declarative data model
● NOT: Configuration as Code
16. Kubernetes: Declarative application management
@ttarczynski
● Configuration as Data
○ Code goes into controllers (control loops)
○ Data in native Kubernetes API format
41. Links
@ttarczynski
1. Borg, Omega, and Kubernetes – Brendan Burns, Brian Grant, David Oppenheimer, Eric Brewer,
John Wilkes, 2016
2. Are we all YAML engineer now? – Bob Walker at CfgMgmtCampt, 2018
3. Declarative application management in Kubernetes – Brian Grant, 2017
4. Kubernetes application management tools – Brian Grant, 2017
5. CNCF End User Technology Radar – Continuous Delivery – CNCF, 2020
6. All materials used for this talk – me, 2021
7. Tools comparison spreadsheet – me, 2021