K8s 1.35 Sneak Peek: What's Coming Next?

A Software Product Engineer, Cloud enthusiast | Blogger | DevOps | SRE | Python Developer. I usually automate my day-to-day stuff and Blog my experience on challenging items.
Search for a command to run...

A Software Product Engineer, Cloud enthusiast | Blogger | DevOps | SRE | Python Developer. I usually automate my day-to-day stuff and Blog my experience on challenging items.
No comments yet. Be the first to comment.
The way we consume tech content has changed - my blog is changing with it. Introducing the Prompts series.

Deep metrics, log shipping, and a ready dashboard before your performance test starts - plus the war story of why it matters.
One prompt that lets an LLM read, draft, and publish on your Hashnode blog - token stays safe in an env var.
Hello All, If you've been running Argo CD on EKS, you know the drill — install the helm chart, manage the controllers, handle upgrades, configure SSO, worry about HA, and repeat for every cluster. It'

Introduction If you've spent any time managing data pipelines in the real world, you know the pain of deploying changes manually — copy-pasting notebooks, praying nothing breaks in prod, and maintaini

Kubernetes never sleeps! Just when we get comfortable, a new release brings features that make our lives easier (and our clusters safer). Here is a quick sneak peek at what is landing in Kubernetes 1.35.
KEP-5495: Deprecate ipvs mode in kube-proxy
Since the iptables scalability issues are being solved using nftables, ipvs mode is essentially redundant. It's time to say goodbye to the complexity of IPVS. If you want the gritty details on why iptables needed a replacement, check out this deep dive.
KEP-4033: Discover cgroup driver from CRI
This solves the "does this node actually support what I need?" problem without manual labeling. Nodes can now self-report specific capabilities (like hardware or plugins) directly to the control plane via the API. This allows the scheduler to automatically place Pods on compatible nodes without you having to manually manage feature labels!
status:
declaredFeatures:
example.com/gpu: "true" # Node says: "I explicitly support this!"
KEP-1287: In-place Update of Pod Resources
This has been in the works for a while, but it's a game changer! Vertical Pod Autoscaling (VPA) can finally resize CPU and Memory limits without restarting the Pod. No more disruptions just to give a hungry container a bit more RAM.
KEP-5471: Enable SLA-based Scheduling
Taints used to be boolean (it exists or it doesn't). Now, we get math!
Before: taint key=HighPriority:NoSchedule (You either match "HighPriority" exactly, or you don't).
After: taint reliability=999:NoSchedule Pod Toleration: operator: Gt, value: 950 (The Pod says: "I can only tolerate nodes with reliability > 950" — much more expressive!)
KEP-127: User Namespaces
This is a massive security upgrade for running containers safely.
Before: Container root (UID 0) == Host root (UID 0). (If they break out of the container, they are root on your server. Scary!)
After: Container root (UID 0) == Host nobody (UID 65534). (They are root inside, but powerless outside. Much better.)
KEP-4639: OCI Volume Source
Stop building massive images just to include data!
Before: InitContainer runs wget https://... -> saves to emptyDir -> MainContainer reads it. (Slow, complex startup scripts, wasted bandwidth.)
After:
volumes:
- name: data
image:
reference: "my-data-layer:latest" # Mounts directly!
That's a wrap for the 1.35 highlights!
If you found this useful, feel free to reach out to me on LinkedIn. Let's discuss what feature you are most excited about!
For more detailed Reading:
1.35 Release notes: https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.35.md
https://isovalent.com/blog/post/why-replace-iptables-with-ebpf/