Live data from Hacker News

Dear friend, you have built a Kubernetes (2024)

macchaffee.com

171–180 of 183 posts

Re: Dear friend, you have built a Kubernetes (2024)

#171
post #4

The saddest part about Kubernetes is… after you set it all up, you still need a hacky deploy.sh to sed in the image tag to deploy! And pretty soon you’re back to “my dear friend you have built a Helm”. And so the configuration clock continues ticking…

https://fluxcd.io/ + helm + with a CI pipeline that pushes the docker images to a registry means that after the setup, anytime you push a new image and tag, k8s can automatically update without needing to do anything manual.

Re: Dear friend, you have built a Kubernetes (2024)

#172
post #138
post #4

The saddest part about Kubernetes is… after you set it all up, you still need a hacky deploy.sh to sed in the image tag to deploy! And pretty soon you’re back to “my dear friend you have built a Helm”. And so the configuration clock continues ticking…

Anyone remembers the GitOps thingy called flux? Weave was the company name. Git and Kubetnetes configuration cannot go hand in hand. You cannot go back in past indefinitely because cluster state might not be that reversible. If so, git is useless. And no, doesn't apply for database migrations. You can mostly run migrations backwards if each migration was written carefully.

I've used it in the past and personally loved it. Just bumping a yaml file in a git repo to the image tag I wanted deploying was a godsend and nearly automated. I can't speak to your experience though which I am certain is valid and a real problem. We just never had those kind of issues so we could either revert to an earlier tag that worked or publish a new image with the required resolution steps.

Re: Dear friend, you have built a Kubernetes (2024)

#173
post #132

Earlier quoted context omitted.

Yep, this is my main problem with k8s, it really feels like none of the choices have been made, it's all chose and configure components.

This, and because of that, claiming your app "runs in kubernetes" is completely meaningless. Concretely: Take your app. With one button click, or apt-get install ??? on all your machines, configure k8s. Now, run your app. The idea that this could work has been laughable for any k8s production environment I've seen, which means you can't do things like write automated tests that inject failures into the etcd control p…

> If your configuration is megabytes of impossible to understand YAML, and is also not portable to other environments, then what's the point?

If almost all your configuration is about getting Kubernetes set up, and not about your application setup inside Kubernetes, there probably isn't a point. But being able to use roughly the same config inside different Kubernetes is quite good.

Re: Dear friend, you have built a Kubernetes (2024)

#174
post #161
post #105

Earlier quoted context omitted.

> all of those choices have been made and agreed upon Have they really? I have a few apps deployed on k8s and I feel like every time I need something, it turns out it doesn't do that and I'm into some exotic extension or plugin type ecosystem. Something as simple as service autoscaling (this was a few years ago) was an adventure into DIY. Moving from google cloud to AWS was a complete writeoff almost - just build it…

> Moving from google cloud to AWS was a complete writeoff almost - just build it again. Yep. Kubernetes is not just kubernetes when moving between clouds, it becomes a very opinionated product (for better or worse) with lots of vendor addons. Could someone that is familiar with one pick up on the other? Sure! But there are gotchas. And then kubernetes on prem adds the hardware lifecycle piece, and potential data loca…

> Kubernetes is not just kubernetes when moving between clouds, it becomes a very opinionated product (for better or worse) with lots of vendor addons.

I think this is gradually getting better. Networking with Gateways is better than with Ingress in this sense. Things like autoscaling groups need to get better, as they are (or were a couple of years ago) very bespoke.

Re: Dear friend, you have built a Kubernetes (2024)

#175

Earlier quoted context omitted.

Til there's a security issue, right? Nginx is a big target.

The API of Ingress is not Nginx's API. The spec itself is basically a yaml schema, it's hard to have a vulnerability in that.

There have been critical vulns in nginx-ingress (the part which is deprecated) like this: https://kubernetes.io/blog/2025/03/24/ingress-nginx-cve-2025...

If you're using it after it's dead, you're at risk of further problems of this nature that aren't in the underly nginx reverse proxy but in the code wrapping it.

Re: Dear friend, you have built a Kubernetes (2024)

#176

Earlier quoted context omitted.

The API of Ingress is not Nginx's API. The spec itself is basically a yaml schema, it's hard to have a vulnerability in that.

There have been critical vulns in nginx-ingress (the part which is deprecated) like this: https://kubernetes.io/blog/2025/03/24/ingress-nginx-cve-2025... If you're using it after it's dead, you're at risk of further problems of this nature that aren't in the underly nginx reverse proxy but in the code wrapping it.

That's one reason I've always used Traefik as my Ingress (I work mostly with K3S, which uses it by default). Which appears to have had its own security issues too, but it still looks like an implementation issue, not a weakness designed in by the spec.

On EKS I'm using whatever AWS has brewed up to integrate ELB/ALB, but I'll tend to trust it ... though maybe I shouldn't, given all the troubles I have with other integrations like secrets management.

Re: Dear friend, you have built a Kubernetes (2024)

#177
post #2

IMO, Kubernetes isn't inevitable, and this seems to paint it as such. K8s is well suited to dynamically scaling a SaaS product delivered over the web. When you get outside this scenario - for example, on-prem or single node "clusters" that are running K8s just for API compatibility, it seems like either overkill or a bad choice. Even when cloud deployed, K8s mostly functions as a batteries-not-included wrapper around…

> K8s is well suited to dynamically scaling a SaaS product delivered over the web It’s well suited to other things as well, people are just in denial about some of them. “I need to run more than two containers and have a googleable way to manage their behavior” is a very common need.

This is a need it fails at miserably. k8s reminds me of the raid recentralization anti pattern problem where you fix a hardware failure that never occurs in exchange for knowing simple higher level mistakes or security problems will tank something now too large to fail again.

Re: Dear friend, you have built a Kubernetes (2024)

#178
post #132

Earlier quoted context omitted.

This, and because of that, claiming your app "runs in kubernetes" is completely meaningless. Concretely: Take your app. With one button click, or apt-get install ??? on all your machines, configure k8s. Now, run your app. The idea that this could work has been laughable for any k8s production environment I've seen, which means you can't do things like write automated tests that inject failures into the etcd control p…

> If your configuration is megabytes of impossible to understand YAML, and is also not portable to other environments, then what's the point? If almost all your configuration is about getting Kubernetes set up, and not about your application setup inside Kubernetes, there probably isn't a point. But being able to use roughly the same config inside different Kubernetes is quite good.

But I've never seen portable kubernetes configs (except for vendor software that probably wouldn't be needed outside of kubernetes).

If you just tell kubectl to dump your pod configs, then load them on some other cluster, that definitely won't work.

If you use the management software that generated the pod setup somewhere else, that probably won't work either because the somewhere else is going to be missing the CSI and CNI you targeted. Even if those match, it'll be missing the CRDs. God help you if you want to run two programs on one Kubernetes, and there's a CRD versioning conflict in their two dependency sets.

Re: Dear friend, you have built a Kubernetes (2024)

#179
post #48

Earlier quoted context omitted.

Most of the time you don't need redundancy. You need regular backups for exceptional circumstances. And k8s gives you more complexity, and more problems through more moving parts, to give you the possibility of using a feature you'll never need, and if you do start to use it it'll probably be instead of fixing performance problems downstream

Are we talking for personal projects where there are no expectations, or small startups where you don’t have much scale but you still care about down time and data loss? Personal projects are one thing, but even the smallest startup wants to be able to avoid data loss and downtime. If you are running everything on one server, how do you do kernel patches? You need to be able to move your workload to another server to…

Agreed. Upgrading just one piece, and ensuring every committed write survives is critical in most commercial applications.

Re: Dear friend, you have built a Kubernetes (2024)

#180

Earlier quoted context omitted.

>It is if you stick to standard Kubernetes resources "If you stick to standard C..." No one does, that's the issue. Helm charts that only support certain cloud providers, operators and annotations that end up being platform specific, etc. >now give you default storage classes and ingresses Ingress is being deprecated, it's Gateway now! Welcome to hell, er, Kubernetes.

I use Kubernetes every day, and have worked with dozens of helm charts, and have yet to encounter cloud specific helm charts. Are these internal helm charts for your company? Obviously you can lock yourself in if you choose, but I have yet to see third party tools that assume a specific provider (unless you are using tools created BY that provider). At my previous spot, we were running dozens of clusters, with some o…

Tell me you haven't managed Kubernetes at scale without telling me you haven't managed Kubernetes at scale.

Helm charts may not support a cloud platform like Rancher, Azure, etc. or may have platform specific issues. First one I checked: https://docs.jfrog.com/installation/docs/helm-chart-requirem...

"When deploying a JFrog application on an AWS EKS cluster, the AWS EBS CSI Driver is required for dynamic volume provisioning. However, this driver is not included in the JFrog Helm Charts."

"JFrog validates compatibility with core Kubernetes distributions. Some Kubernetes vendors apply additional logic or hardening (for example, Rancher), so JFrog Platform deployment on those vendor-specific distributions might not be fully supported."

Post reply on HN