r/kubernetes
•
u/suman087
•
May 15 '26
r/kubernetes • u/ExplorerIll3697 • Jun 13 '25
What are your stakes as for AI in DevOps?!?!
There is more and more the hype on DevOps AI tools be it terminal tools or just the chat, what are your thoughts about? Are you for or against the immediate adoption??
As for me there is a security concern…
r/kubernetes
•
u/Honest-Associate-485
•
Mar 21 '26
Kubernetes is beautiful.
Every Kubernetes Concept Has a Story.
In k8s, you run your app as a pod. It runs your container. Then it crashes, and nobody restarts it. It is just gone.
So you use a Deployment. One pod dies and another comes back. You want 3 running, it keeps 3 running.
Every pod gets a new IP when it restarts. Another service needs to talk to your app but the IPs keep changing. You cannot hardcode them at scale.
So you use a Service. One stable IP that always finds your pods using labels, not IPs. Pods die and come back. The Service does not care.
But now you have 10 services and 10 load balancers. Your cloud bill does not care that 6 of them handle almost no traffic.
So you use Ingress. One load balancer, all services behind it, smart routing. But Ingress is just rules and nobody executes them.
So you add an Ingress Controller. Nginx, Traefik, AWS Load Balancer Controller. Now the rules actually work.
Your app needs config so you hardcode it inside the container. Wrong database in staging. Wrong API key in production. You rebuild the image every time config changes.
So you use a ConfigMap. Config lives outside the container and gets injected at runtime. Same image runs in dev, staging and production with different configs.
But your database password is now sitting in a ConfigMap unencrypted. Anyone with basic kubectl access can read it. That is not a mistake. That is a security incident.
So you use a Secret. Sensitive data stored separately with its own access controls. Your image never sees it.
Some days 100 users, some days 10,000. You manually scale to 8 pods during the spike and watch them sit idle all night. You cannot babysit your cluster forever.
So you use HPA. CPU crosses 70 percent and pods are added automatically. Traffic drops and they scale back down. You are not woken up at 2am anymore.
But now your nodes are full and new pods sit in Pending state. HPA did its job. Your cluster had nowhere to put the pods.
So you use Karpenter. Pods stuck in Pending and a new node appears automatically. Load drops and the node is removed. You only pay for what you actually use.
One pod starts consuming 4GB of memory and nobody told Kubernetes it was not supposed to. It starves every other pod on that node and a cascade begins. One rogue pod with no limits takes down everything around it.
So you use Resource Requests and Limits. Requests tell Kubernetes the minimum your pod needs to be scheduled. Limits make sure no pod can steal from everything around it. Your cluster runs predictably.
Edit: Some people think this post is plagiarized from X post; they are wrong. That viral X post is written by me only(Akhilesh mishra https://x.com/livingdevops)
r/kubernetes
•
u/ExplorerIll3697
•
May 07 '25
K8s has help me with the character development 😅
r/kubernetes • u/[deleted] • May 18 '21
Kubernetes isn't that hard they said. You'll have no trouble picking it up they said.
r/kubernetes • u/tasrie_amjad • Apr 19 '25
We cut $100K using open-source on Kubernetes
We were setting up Prometheus for a client, pretty standard Kubernetes monitoring setup.
While going through their infra, we noticed they were using an enterprise API gateway for some very basic internal services. No heavy traffic, no complex routing just a leftover from a consulting package they bought years ago.
They were about to renew it for $100K over 3 years.
We swapped it with an open-source alternative. It did everything they actually needed nothing more.
Same performance. Cleaner setup. And yeah — saved them 100 grand.
Honestly, this keeps happening.
Overbuilt infra. Overpriced tools. Old decisions no one questions.
We’ve made it a habit now — every time we’re brought in for DevOps or monitoring work, we just check the rest of the stack too. Sometimes that quick audit saves more money than the project itself.
Anyone else run into similar cases? Would love to hear what you’ve replaced with simpler solutions.
(Or if you’re wondering about your own setup — happy to chat, no pressure.)
r/kubernetes • u/Ok_Egg1438 • Apr 08 '25
Kubernetes Cheat Sheet
Hope this helps someone out or is a good reference.
r/kubernetes • u/xrothgarx • Aug 30 '22
k8s IRL
If you’ve ever wondered how Kubernetes works, here’s an explanation
r/kubernetes • u/One_Paint8721 • 24d ago
PHP blames Chainguard for putting huge chunks of the web at risk
theregister.comWhat happens if you break an embargo? Like, fines or worse? Or nothing?
“On October 21st at 07:41 UTC, more than six hours before the coordinated release, Chainguard unilaterally broke the embargo and published built images containing the fix. Like other distributors, Chainguard had received the patch in advance so its users could update the moment the vulnerabilities were disclosed. Any attacker could now study the fix in binary form while every other PHP user was still waiting for the release. This disregarded weeks of work by many parties toward a coordinated disclosure.”
r/kubernetes
•
u/Honest-Associate-485
•
Apr 11 '26
Every Kubernetes Tool Explained In One Post (And Why They Exist)
The Kubernetes Ecosystem Has a Story. Every tool exists because Kubernetes alone wasn’t enough.
You run everything with kubectl. Get pods, describe, logs, exec, delete, apply, 50 times a day across 5 namespaces. It works, but it is slow and painful, specially -n namespcae in every command.
>> So you use K9s or Lens. A terminal UI that shows your entire cluster in one view. It lets you switch namespaces, different clusters, and tail logs, exec inside pod, and do everything you need.
You deploy with kubectl apply from your laptop. Someone changes a deployment directly on the cluster, and what is running no longer matches what is in Git. That is drift, and it is silent until prod breaks.
>> So you use ArgoCD. Git becomes the single source of truth, every change syncs to the cluster automatically, and if anyone touches a deployment manually ArgoCD overrides it back.
Your Kafka consumer has 200,000 messages piling up, CPU is at 5 percent, and HPA sees no reason to scale. The queue keeps growing, and users are waiting.
>> So you use KEDA. It scales pods on queue depth, SQS message count, or Prometheus metrics, and not just CPU. The backlog clears.
HPA adds pods during a spike, but the nodes are full, and new pods sit in Pending. HPA did its job, but the cluster had nowhere to put them.
>> So you use Karpenter. A new node appears in seconds when pods are stuck in Pending and disappears when the load drops. You only pay for what you use.
Every pod can talk to every other pod by default. Your payment service can reach your database, your internal tool can reach your logging service and nothing is blocked unless you block it.
>> So you use Network Policies. Your database only accepts traffic from the app, everything else is denied and the blast radius of a compromised pod shrinks dramatically.
You have 20 microservices, one starts responding slowly and retries pile up across 4 other services. A cascade begins and you have no visibility into where it started because all traffic is invisible.
>> So you use a Service Mesh. Istio or Linkerd puts a sidecar proxy next to every pod, gives you mTLS between every service, retries, circuit breaking and traffic metrics without touching a single line of app code.
Your secrets are Base64 encoded in Kubernetes, sitting in etcd and readable by anyone with kubectl access. You want them in Vault or AWS Secrets Manager but you do not want to rewrite your app to fetch them.
>> So you use the Secrets Store CSI Driver. Secrets live in Vault or AWS Secrets Manager and get mounted directly into your pod as files. The secret never lives in Kubernetes.
A developer ships a container running as root, another ships with no resource limits and you find out after the incident. Every time.
>> So you use Kyverno. Policies enforced at admission before anything enters the cluster, no root containers, no images without a digest and no deployments without limits.
Something is wrong. Pods are restarting, latency is spiking and memory is climbing but you have no numbers, no history and no way to know when it started.
>> So you use Prometheus and Grafana. Prometheus scrapes metrics from every pod, node and component and Grafana turns those numbers into dashboards. You see the spike, the exact time it started and which service caused it.
Grafana shows the spike but not which request triggered it, which service it hit first or where it slowed down. Logs give you fragments and metrics give you totals. Neither gives you the full story.
>> So you use Jaeger. It follows one request across every service it touches, shows you latency per hop and the exact failure point. The needle in the haystack, found in seconds.
Disclaimer: Used some AI to write & format the post based on the original draft.