PodSecurityPolicy replaced by Pod Security Admission
PSP, deprecated in 1.21, is removed. Its built-in successor, Pod Security Admission, is now stable; clusters relying on PSP must migrate before upgrading.
Kubernetes minor release · “Combiner”
A security-focused release: PodSecurityPolicy is gone and Pod Security Admission becomes stable. Ephemeral containers, cgroups v2 support and core CSI migration also reached GA, and project images moved to registry.k8s.io.
End of life since 28 Oct 2023 (3.0 years ago). No more patches upstream.
Release team note: 1.25.16 was released in November 2023 (after the EOL date) to fix CVE-2023-5528
PSP, deprecated in 1.21, is removed. Its built-in successor, Pod Security Admission, is now stable; clusters relying on PSP must migrate before upgrading.
Short-lived debug containers can be added to a running pod, useful when kubectl exec is impossible because a container crashed or lacks tools.
Kubernetes fully supports the Linux cgroups v2 API, which some distributions now use by default; cgroups v1 remains supported.
Routing in-tree volume plugins to CSI drivers is stable, including GCE PD and AWS EBS. vSphere stays beta (on by default); Portworx is beta, off by default.
The project's container registry moved from k8s.gcr.io to registry.k8s.io.
Custom resources can declare validation rules written in Common Expression Language directly in the CRD schema.
Summarised in our own words from the official “Kubernetes v1.25: Combiner” announcement (40 tracked enhancements), © The Kubernetes Authors, CC BY 4.0.
Upgrading to 1.25 breaks any manifest, Helm chart or client that still uses these API versions. Move them to the version in the last column before you upgrade the control plane.
| Kind | API version | Stops being served | Use instead |
|---|---|---|---|
| HorizontalPodAutoscaler | autoscaling/v2beta1 | 1.25 | autoscaling/v2 |
| CronJob | batch/v1beta1 | 1.25 | batch/v1 |
| EndpointSlice | discovery.k8s.io/v1beta1 | 1.25 | discovery.k8s.io/v1 |
| Event | events.k8s.io/v1beta1 | 1.25 | events.k8s.io/v1 |
| RuntimeClass | node.k8s.io/v1beta1 | 1.25 | node.k8s.io/v1 |
| Eviction | policy/v1beta1 | 1.25 | policy/v1 |
| PodDisruptionBudget | policy/v1beta1 | 1.25 | policy/v1 |
| PodSecurityPolicy | policy/v1beta1 | 1.25 | Pod Security Admission (no API replacement) |
From the release announcement; our wording.
From the official version skew policy as it stands today.
The API server must not skip minor versions.