The PivotNine Blog

Resistance is Futile, Kubernetes Will Assimilate You

science-fiction-7783758_1920-3x2.jpg
13 November 2023
Justin Warren

This article was originally published in The Crux, PivotNine’s weekly newsletter. Subscribe to The Crux to get PivotNine insights early.

PivotNine has been spending a lot of time researching Kubernetes options the past couple of months, and we remain convinced that most people do not need Kubernetes and shouldn’t use it. It’s just too complicated.

However, Kubernetes is getting hard to avoid. So many other people are using it that, if you want to use containers, most of the documentation and examples assume you’ll be using Kubernetes as your container orchestrator. The other major choice remains Docker, mostly via docker-compose.

This has nothing to do with the capabilities of the technology itself. It is due to the social structures that have grown up around the technology.

At PivotNine, we use Docker and HashiCorp Nomad to run container-based applications. We had started to hit limitations with docker-compose (mostly to do with secrets management) and wanted something with a few more features, but not many. Our needs are not overly complex.

Moving to Nomad was surprisingly difficult.

The Internet is replete with examples of how to spin up containers with either Docker or Kubernetes. It’s hard to find documentation or examples of other approaches, even after working around the AI-driven death spiral that Google and Bing search both seem to be fully committed to.

HashiCorp bears some responsibility for this, having neglected Nomad in favour of its other, more profitable projects. Yet other ecosystems have had plenty of enthusiastic participants keen to share advice on how to get things done with the tech, for free. Squadrons of nerds writing blogs about how they built a thing. VMware was like that, back in the day, and so was Docker. We see it still with more recent tech like 3D printing or Mastodon.

People need recipes to follow. Clear instructions that help them solve a specific, concrete problem. Without that guidance, they’re forced to invest time and effort figuring things out for themselves. The early, enthusiastic adopters will do this, but those that come later need more help. That help is missing, or perhaps just vastly less available, for alternatives to Kubernetes.

Which works counter to our “Kubernetes is too hard to use” argument. It is a complex technology, and is probably more than most companies want or need, but when there’s this much social pressure to use it, it’s hard to resist. It’s reaching the point where simply giving in and using Kubernetes may be the path of least resistance, given the other choices available.

Given Kubernetes grew from Google’s Borg project, perhaps this was the plan all along? Or are we in the alternative reality where we have to listen to terrible poetry while our planet is destroyed?