How to Fight Kubernetes Complexity Fatigue
In this episode of The New Stack Makers podcast, hosted by TNS founder and publisher Alex Williams, we discuss Kubernetes complexity fatigue, and more importantly, what can be done about it. The guests were Ravi Lachhman, evangelist, for continuous integration and delivery systems provider Harness, and Frank Moley, senior technical engineering manager for datastore provider DataStax.
Ravi Lachhman and Frank Moley – How to Fight the Kubernetes Complexity-Fatigue Monster
Much of Kubernetes complexity fatigue can be attributed to how DevOps teams must expand their areas of expertise, often beyond their comfort zone, when making the shift into cloud native architectures. Infrastructure team members must become more in tune with the needs of developers, while developers’ workloads increasingly cover infrastructure-related tasks.
Kubernetes is “crossing two chasms,” Lachhman said. Developers need to be more aware of infrastructure concerns and, on the other side, “the operational, infrastructure or system engineering folks are coming closer to the development side, because how you go about writing a Kubernetes resource or Kubernetes YAML sometimes mimics software development, since there’s iteration that has to be involved,” said Lachhman. “So, both sides are having to learn a lot more skillsets than their comfort zones [allow] is where I see fatigue.”
Similar to life in general, helping DevOps teams avoid Kubernetes complexity fatigue is a matter of realizing what your limitations are, and how to best manage gaps in such a way that you are able to accomplish your goals.
“I would probably bet a lot of money to say that it truly is impossible to know everything there is to know about any technology tool, not just Kubernetes — but as such, you can know enough that you can figure out the rest,” said Moley. “So, I think it’s managing expectations of what you know, and how you build a strategy to learn what you don’t know… So, to me, managing complexity involves just as much managing your own personal thoughts and feelings about how you do your job, as it is about what you know.”
It is also necessary to be aware that once Kubernetes is adopted — which, of course, represents a gargantuan task for most organizations in and of itself — all of your organization’s software problems will not be solved, Lachhman said. “[Kubernetes] is actually a quite complex system, and for some folks who dive into it, the shiny penny is becoming less shiny now as it becomes more and more mature and is starting to fade,” said Lachhman.
Kubernetes components — their enormous complexity notwithstanding — is something that organizations wisely purchase in “small chunks,” said Lachhman. “What’s overwhelming for the Kubernetes ecosystem is that it’s actually very pluggable, so there’s not a very stringent definition: if you compare it to a Platform as a Service (PaaS), which gives you a very strong opinion, Kubernetes is designed to be pluggable.”