Table of Contents
The Kubernetes v1.32 release introduces significant advancements in resource management, security, scheduling, and observability. With a mix of 13 graduating features, 12 beta enhancements, and 19 got added in alpha, Kubernetes continues to refine its capabilities for production-grade workloads.
In this blog, we’ll explore the top highlights of Kubernetes v1.32.
🎯 How to try out Kubernetes 1.32?
One of the biggest questions people often have is how they can try out the new Kubernetes version as soon as it is released. Cloud providers take some time to update the Kubernetes version, and until then, if you want to test your applications before planning upgrades, the best way is to use vCluster. vCluster allows you to create a Kubernetes 1.32 version (the latest version at the time of writing this blog) with very simple steps.
Create the below vcluster.yaml file:
controlPlane:
distro:
k8s:
version: v1.32.0
Create the virtual cluster:
vcluster create k8s132 -f vcluster.yaml
Make sure the context is changed to virtual cluster and then you can check using:
Command:
kubectl get nodes
Output:
NAME STATUS ROLES AGE VERSION
pool-wq5qz4aix-wt0h3 Ready <none> 8h v1.32.0
Now on the HOST cluster you can check the stateful set that got created is actually pulling the 1.32 control plane images
Command:
kubectl get ns | grep k8s
Output:
vcluster-k8s132 Active 3m59s
Command:
kubectl get pods -n vcluster-k8s132
Output:
NAME READY STATUS RESTARTS AGE
coredns-76d5454c89-x8xc4-x-kube-system-x-k8s132 1/1 Running 0 3m17s
k8s132-0 1/1 Running 0 3m58s
nginx-x-default-x-k8s132 1/1 Running 0 59s
Command:
kubectl describe pods k8s132-0 -n vcluster-k8s132
Output:
In the events section you can see:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 4m16s default-scheduler 0/3 nodes are available: pod has unbound immediate PersistentVolumeClaims. preemption: 0/3 nodes are available: 3 Preemption is not helpful for scheduling.
Normal Scheduled 4m14s default-scheduler Successfully assigned vcluster-k8s132/k8s132-0 to pool-wq5qz4aix-wt0h8
Normal SuccessfulAttachVolume 4m11s attachdetach-controller AttachVolume.Attach succeeded for volume "pvc-65b85d4a-9d37-405d-9e91-829cb822c9ef"
Normal Pulled 4m10s kubelet Container image "ghcr.io/loft-sh/vcluster-pro:0.21.1" already present on machine
Normal Created 4m10s kubelet Created container vcluster-copy
Normal Started 4m9s kubelet Started container vcluster-copy
Normal Pulling 4m6s kubelet Pulling image "registry.k8s.io/kube-controller-manager:v1.32.0"
Normal Pulled 4m4s kubelet Successfully pulled image "registry.k8s.io/kube-controller-manager:v1.32.0" in 2.553s (2.553s including waiting). Image size: 26254834 bytes.
Normal Created 4m4s kubelet Created container kube-controller-manager
Normal Started 4m3s kubelet Started container kube-controller-manager
Normal Pulling 3m59s kubelet Pulling image "registry.k8s.io/kube-apiserver:v1.32.0"
Normal Pulled 3m57s kubelet Successfully pulled image "registry.k8s.io/kube-apiserver:v1.32.0" in 2.281s (2.281s including waiting). Image size: 28670542 bytes.
It’s simple to get your 1.32 cluster on your existing host cluster and plan your upgrades accordingly.
Note: While Kubernetes 1.32 has not been officially tested with vCluster, you can still try it and help identify any issues as we work towards finalizing support.
🎯 Resource Management and Security enhancements
Strict CPU Reservation for Improved Performance
Kubernetes v1.32 introduces the strict-cpu-reservation option under the CPU Manager Static Policy.
- This enhancement ensures that reserved CPUs for system daemons are isolated, preventing BestEffort and Burstable pods from consuming reserved CPU cores.
- Designed for Telco/NFV workloads requiring latency-sensitive operations, this brings improved reliability and performance consistency.
You need to change the Kubelet config.yaml file and then restart kubelet in order for this to work.
featureGates:
CPUManagerPolicyOptions: true
CPUManagerPolicyAlphaOptions: true
cpuManagerPolicy: static
cpuManagerPolicyOptions:
strict-cpu-reservation: "true"
reservedSystemCPUs: "0,32,1,33,16,48"
Memory Manager Goes GA
After rigorous testing since beta, the Memory Manager feature has officially reached General Availability.
- This ensures better memory alignment and allocation for Guaranteed QoS class pods.
- New metrics like memory_manager_pinning_requests_total provide observability into memory allocation.
Fine-grained Kubelet API Authorization
As per the KEP 2862 This is a new alpha feature that adds fine-grained kubelet API Authz checks for kubelet /configz, /healthz and /pods API. This allows users to access the kubelet API without granting the nodes/proxy resource permission to the caller. Instead the caller can be granted nodes/configz, nodes/healthz and nodes/pods respectively
Enhanced Credential Tracking
Kubernetes v1.32 improves audit capabilities:
- X.509 Certificates generate unique credential IDs.
- JWT tokens now support the jti (JWT ID) claim, enabling detailed tracking of authentication events.
⚙️ Improved Scheduling and Efficiency
Asynchronous Preemption
Scheduling gets smarter with Asynchronous Preemption (alpha), decoupling pod eviction logic from the main scheduling cycle.
- Reduces delays during preemption-heavy workloads.
- Improves scheduling throughput in high-churn clusters.
📦 Storage Innovations
Auto Remove PVCs in StatefulSets
This stable feature simplifies resource management by automatically deleting PVCs created by StatefulSets when no longer in use.
- Reduces manual intervention and avoids orphaned volumes.
Volume Group Snapshots
Beta support for VolumeGroupSnapshot allows crash-consistent snapshots across multiple PVCs.
- Simplifies backup and recovery workflows, especially for stateful applications.
🧵 Observability Improvements
New StatusZ and FlagZ Endpoints
Two new endpoints, /statusz
and /flagz
, enhance debugging for Kubernetes core components:
- /statusz: Provides version, build details, and runtime info.
- /flagz: Displays active command-line flags for easier runtime introspection.
These endpoints streamline cluster diagnostics, reducing time spent debugging misconfigurations.
🖥️ Windows Node Enhancements
Graceful Shutdown for Windows Nodes
Kubernetes v1.32 introduces graceful shutdown for Windows nodes, ensuring proper execution of pre-stop hooks and pod cleanup during node shutdowns.
- Improves reliability for Windows-based workloads.
Conclusion
Kubernetes v1.32 continues to evolve with a focus on performance, security, and developer experience. Whether it’s strict CPU isolation, robust storage management, or advanced observability tools, this release provides valuable improvements for all Kubernetes users.
As Kubernetes celebrates 10 years of innovation, v1.32 reflects the community’s commitment to refining the platform for modern workloads.
What’s Next?
- Test new features like strict CPU reservation and asynchronous preemption in your clusters.
- Review breaking changes and deprecated features to plan for upgrades.
- Get involved with SIG Node, SIG Storage, and SIG Scheduling to help shape future releases.
For the full details, check out the official Kubernetes v1.32 release notes.