Live data from Hacker News

Why Kubernetes is so complex

cloudplane.org

11–20 of 47 posts

Re: Why Kubernetes is so complex

#11
post #7

Earlier quoted context omitted.

> For a small company, give me a way to run one container in an autoscable way and we can go from there. What's the best way you've found to do that?

ECS/Fargate for long lived things. Lambdas for short lived things.

We used to do this at my current job, but we've recently started transitioning to Kubernetes. There are certainly things I like a lot about it (specifically, the k9s CLI), but I definitely miss the simplicity of ECS/Fargate.

Re: Why Kubernetes is so complex

#13
post #2

After reading TFA I don't feel enlightened. I don't think the author answered or even began to seriously address the question posed in the title; the discussion is approximately a beginner-level introduction to K8s Controllers. A bit disappointed with cloudplane here. Edit: @dollar - good one! Quite plausibly the case.

The piece was meant as a brief behind-the-scenes look for people hesitant to adopt K8s, sorry if the title is misleading. I'm not the best writer, but working to improve.

Re: Why Kubernetes is so complex

#14

People that understand how infrastructure works knows that k8s is not complex. Everyone else gotta complain about it just because.

Not sure how you could deny that it's complex. It adds additional moving parts that weren't there before, and takes control of things that once operated autonomously.

Whether or not that extra complexity is necessary or beneficial is what's debatable.

Re: Why Kubernetes is so complex

#15
It really is interesting.

What was shown was the ability of systemd to have restart policies of units and the ability to load secret over some sort of Unix socket primitive. Plus, it does not even try to do topological sorts, it restarts everytime and accepts that its preconditions are false.

And basically as it can do that for any more or less untyped pile of resource, it is "flexible". Sure, void* + a tag is flexible.

K8s is tiring. Reconciliation is not exclusive to K8s, it's not the best system we have, not even close.

It is a particularly popular system with very specific choices, which has a nice property of assuming that state drifts therefore reconciliation is a must.

The annoying part is that: to show everyone else that K8s is complex, it is necessary to build a reconciliation based piece of software that compose well with the rest of the world and prove that you don't need K8s to achieve the same features that most people use, except if you are $bigcorp. Alas, people have finite time and I do think it is quite clear how to build this using more fundamental pieces such as systemd and more.

Making this kind of article even more frustrating because I get the good intent of convincing people that K8s is not frightening and complicated. I really feel there is a lack of theory and research definitions in this area of computer science. Rigor is missing.

Re: Why Kubernetes is so complex

#16
What about Nomad?, I hear it isn't as complex as K8s, but still offers the same capabilities.

Also in what way is Swarm is abandoned?, I mean if it works fine, and is still supported in Docker-CE than its still OK to use it, at least in small businesses and hobbyist use cases where Swarm's simplicity are attractive.

Re: Why Kubernetes is so complex

#17
I really miss the simplicity of Rancher and their Cattle orchestrator circa 2016 or so.

Kubernetes is way, way to much for many teams to be able to operate properly. It can be done the right way, and it absolutely has it’s use cases, but I see so many people using it that really shouldn’t be.

Re: Why Kubernetes is so complex

#18

It really is interesting. What was shown was the ability of systemd to have restart policies of units and the ability to load secret over some sort of Unix socket primitive. Plus, it does not even try to do topological sorts, it restarts everytime and accepts that its preconditions are false. And basically as it can do that for any more or less untyped pile of resource, it is "flexible". Sure, void* + a tag is flexib…

What hurts me the most is when I was told "it's not that simple" because I wanted a container enabled machine to put a container on that sits behind the public web server which forward requests to it (reverse proxy).

What I was told is that it doesn't scale and k8's is simpler because how does it talk to the database otherwise? Oddly enough, I'm not sure this person has ever _just_ worked with containers without k8's and so it all falls into a black box.

Which is odd, but all of this is to take roughly 100 servers and get them into the cloud.

At some point I have to wonder if it's even possible for many of these same people to work in a way that's simple.

Re: Why Kubernetes is so complex

#19
post #14

People that understand how infrastructure works knows that k8s is not complex. Everyone else gotta complain about it just because.

Not sure how you could deny that it's complex. It adds additional moving parts that weren't there before, and takes control of things that once operated autonomously. Whether or not that extra complexity is necessary or beneficial is what's debatable.

It's the same reason someone thinks putting an entire OS behind the "doIt" function simplified everything.

Re: Why Kubernetes is so complex

#20
post #7

Earlier quoted context omitted.

> For a small company, give me a way to run one container in an autoscable way and we can go from there. What's the best way you've found to do that?

ECS/Fargate for long lived things. Lambdas for short lived things.

+1 for Fargate and Lambda. If you do not like Fargate, you can also run containers in EC2 for a bit more control.
Post reply on HN