Live data from Hacker News

Google admits Kubernetes container tech is too complex

theregister.com

21–30 of 449 posts

Re: Google admits Kubernetes container tech is too complex

#21
Kubernetes adds a vast amount of complexity, and in my rationale is because it centers scaling on the wrong unit (the Operating System).

Docker introduced a great level of abstraction and reproducibility over platforms. However, Docker (or OS-based containers) are the most atomic unit of computation on Kubernetes. Which causes centering scaling on the Instance, instead of the Application or even the functions.

This leads to a lot of unintended side-effects. Of which complexity is the most evident since now you need to handle scaling, monitoring and compliance over the VM layer rather than on the functions or the app.

I believe a VM centered on the app (WebAssembly VMs) or functions (serverless approach) is the right computation unit to allow proper scalability and a simpler and more powerful system on the long term.

Re: Google admits Kubernetes container tech is too complex

#22
post #16
post #8

Earlier quoted context omitted.

Build debs, use the package manager. VMs are already an artificial abstraction, just use them.

I would never voluntarily deploy anything using k8s or similar cloud stacks and services. But in practice the bulk of the complexity isn't in pushing and running the actual software, it's in provisioning attached resources (disks, databases), sharing certificates and keys, routing and load balancing, etc. Way too complex for my tastes, but if you're convinced you need a highly automated control plane for those things…

Debs move state (and computation) and provide a way to resolve dependencies. Done right they also provide rollback. Debs can moved a whole lot more than just the software.

Not saying it is the answer to everything, but it can do a whole lot more than software. Most of our problems are self made we can unmake them by changing the rules we operate under.

> As usual it comes down to how you define the problem.

Totally.

Redefine the problem until the solution is tractable and simple. K8s is the problem to a solution.

Re: Google admits Kubernetes container tech is too complex

#23
post #2

Googler, opinions are my own. Direct link to the docs: https://cloud.google.com/kubernetes-engine/docs/concepts/aut... Google has a tool by the same name (autopilot) internally that does close to the same thing. There was a paper published on it 10 months ago talked about here: https://news.ycombinator.com/item?id=22980467

Is this really the same thing? The paper is talking about auto adjusting workload limits based on job history, right?

Re: Google admits Kubernetes container tech is too complex

#24

I think the single biggest mistake people make with Kubernetes is implementing it too soon. Last company I worked for spent piles of time fighting K8s when a simple well implemented cluster would have done the job. It makes a lot of sense to build portable infrastructure, but you can scale a long ways with much simpler technologies.

I've only played with k8s for like an hour in total, but it's pretty obvious to me that k8s fell very much victim to the second system effect. It's an insanely complex solution to a very niche problem - scaling stateless web app backend nodes written in scripting languages. Stray even a little bit off the garden path and you start feeling pain.

You only played with it an hour and you reached all these conclusions?

Re: Google admits Kubernetes container tech is too complex

#25
post #3

I can't fight the feeling that this is all circling back to the application server stuff that was popular for a time. And, really, I can't tell when those went so wrong. :(

The circle of tech: 1. Someone has an idea. It's alright. Really good for their use case. Someone else hears about it, likes it, and adapts it to a similar use case. So and so forth until the idea has a large user base 2. Employees of large companies hear about the idea and implement it 3. Marketing gets a hold of the idea, gives it a flashy name, and uses it in promotions 4. A majority of the loudest voices in the i…

Good news, you can invest in my new startup where we are solving just that issue with a decentralized social technology blockchain oracle that will make and enforce these decisions, reducing tech churn and enhancing developer productivity.

Re: Google admits Kubernetes container tech is too complex

#26

Kubernetes adds a vast amount of complexity, and in my rationale is because it centers scaling on the wrong unit (the Operating System). Docker introduced a great level of abstraction and reproducibility over platforms. However, Docker (or OS-based containers) are the most atomic unit of computation on Kubernetes. Which causes centering scaling on the Instance, instead of the Application or even the functions. This l…

So we circle back to app servers like Java EE WAR/EAR stuff.

Re: Google admits Kubernetes container tech is too complex

#27
post #26

Kubernetes adds a vast amount of complexity, and in my rationale is because it centers scaling on the wrong unit (the Operating System). Docker introduced a great level of abstraction and reproducibility over platforms. However, Docker (or OS-based containers) are the most atomic unit of computation on Kubernetes. Which causes centering scaling on the Instance, instead of the Application or even the functions. This l…

So we circle back to app servers like Java EE WAR/EAR stuff.

With the exception that Wasm apps are based on a open standard, almost any language can target it, are more lightweight, and they can also run on the browser :)

Re: Google admits Kubernetes container tech is too complex

#28

What happened to "focus on the business logic / application"? Are we just making rabbit holes out of rabbit holes of abstraction using kubernetes? I just use and push code to Heroku and I'm done for the day, simple. NoOps I call it. I wish more tools and platforms were like this.

Mind blowing to me that "Heroku but with docker images" doesn't seem to exist. Would love to be corrected!

Re: Google admits Kubernetes container tech is too complex

#30
post #28

What happened to "focus on the business logic / application"? Are we just making rabbit holes out of rabbit holes of abstraction using kubernetes? I just use and push code to Heroku and I'm done for the day, simple. NoOps I call it. I wish more tools and platforms were like this.

Mind blowing to me that "Heroku but with docker images" doesn't seem to exist. Would love to be corrected!

That's pretty much Cloud Run, no?

https://cloud.google.com/run/

Post reply on HN