Skip to main content

Command Palette

Search for a command to run...

Sneak Peek into Kubernetes v1.34: What’s Coming and Why It Matters

Updated
4 min read
Sneak Peek into Kubernetes v1.34: What’s Coming and Why It Matters

Kubernetes continues its steady evolution, and with the upcoming v1.34 release, there are some exciting enhancements on the horizon. Scheduled for release in late August 2025, this version focuses on observability, smarter resource handling, enhanced scheduling, and developer experience improvements.

Here’s a preview of the most impactful features coming to Kubernetes v1.34 — based on the official sneak peek — along with concrete examples and thoughts on what this means for platform teams.

Dynamic Resource Allocation (DRA) Goes Stable

One of the biggest highlights: Dynamic Resource Allocation (DRA) is going GA (Generally Available).

DRA allows Kubernetes to schedule Pods that require dynamic or external resources (like GPUs, FPGAs, or licensed software) by coordinating with resource drivers. This opens the door for smarter, safer scheduling without race conditions or pre-binding issues.

Example Use Case

apiVersion: v1
kind: Pod
metadata:
  name: gpu-task
spec:
  containers:
  - name: compute
    image: nvidia/cuda:11.0-base
    resources:
      claims:
      - name: my-gpu
  resourceClaims:
  - name: my-gpu
    source:
      resourceClassName: nvidia.com/gpu

With DRA, Kubernetes dynamically allocates the required GPU from a compatible pool — improving isolation and usage efficiency.

ServiceAccount Tokens for Image Pulls (Beta)

Previously, long-lived imagePullSecrets were used to authenticate against container registries. Kubernetes v1.34 introduces automatic short-lived tokens derived from ServiceAccounts, allowing the kubelet to securely authenticate image pulls using projected tokens.

This change reduces token leakage risks and simplifies rotation.

Key Benefit

You no longer need to manually create and mount secrets for private registry authentication — Kubernetes handles it for you securely and automatically.

Pod Replacement Policy (Alpha)

In complex deployments, replacing Pods too early (while the old one is still terminating) can cause unexpected issues like conflicting ports, database reconnects, or resource contention.

Kubernetes v1.34 introduces a new field:

spec:
  podReplacementPolicy: TerminationStarted  # or TerminationComplete

This allows developers to control when a new Pod should be scheduled during rolling updates.

Example Use Case

apiVersion: apps/v1
kind: Deployment
metadata:
  name: api-server
spec:
  replicas: 3
  strategy:
    type: RollingUpdate
  template:
    spec:
      podReplacementPolicy: TerminationComplete

With TerminationComplete, Kubernetes waits for the old Pod to fully shut down before starting a replacement — perfect for stateful or resource-heavy applications.

PreferSameNode and PreferSameZone (Beta)

Load balancing just got smarter. Instead of relying on externalTrafficPolicy: Local and hoping for the best, Kubernetes now introduces more precise topology preferences in routing.

This allows Services to prefer nodes/zones that are closer to the caller — improving latency and network performance.

Why It Matters

In multi-zone clusters or edge deployments, this routing optimization can drastically reduce cross-zone traffic — reducing cost and improving user experience.

KYAML Output Format

Here’s where KYAML truly shines. In my Medium article, “KYAML in Kubernetes v1.34: A Safer, Leaner Alternative to YAML and JSON”, I explore why KYAML is designed to overcome YAML’s quirks — like whitespace sensitivity, implicit type coercion (hello, “Norway Bug”!) — and offer a cleaner, more predictable serialization format.

You can now use:

kubectl get deployment api-server -o kyaml

Expect more consistent diffs, better tooling support, and fewer surprises.

Observability with Tracing (Beta/Stable)

Kubernetes v1.34 embraces OpenTelemetry-based tracing in both the API Server and kubelet. Now you get visibility into:

  • gRPC communications between kubelet and container runtimes

  • Admission control chains

  • API request lifecycle tracing

This enhanced observability is invaluable for diagnosing control plane latency or debugging performance regressions.

Bonus Highlights (v1.34 Release — Of Wind and Will)

Additionally, the final v1.34 release includes:

  • PSI Metrics (Beta) — better insights into CPU & memory pressure.

  • Node Swap Support (GA) — smoother memory management, fewer OOMs.

  • CPUManager Uncore Cache Alignment (Beta) — improved performance for NUMA-aware workloads.

  • kuberc (User Preferences) — customize kubectl defaults and output.

Why It Matters for Platform Teams

This release is operator-focused, tackling real-world challenges:

  • Secure, lightweight image pulls

  • Fine control over rollout timing

  • Richer observability (tracing and PSI)

  • Smarter, topology-aware routing

  • Cleaner, safer configuration via KYAML

What to Try Next

  • Enable DRA for GPU or other specialized hardware.

  • Switch to ServiceAccount token pulls — more secure and simpler.

  • Experiment with Pod replacement policies in canary/rolling deployments.

  • Activate tracing in staging — boost observability.

  • Start using KYAML and see the cleaner diffs — I dive into this in my article! Medium

Resources

In Summary

Kubernetes v1.34 is a quietly powerful release — improving the developer and operator experience without flashy headlines. From KYAML to tracing, resource efficiency to rollout control, it’s a substantial step forward.

Check out my Medium article for a deep dive into KYAML, and let me know what features you’re exploring.

More from this blog

DevOps

16 posts