cluster.ninja

beta API version · group policy

policy/v1beta1

Removed in 1.25

No Kubernetes release since 1.25 serves apiVersion: policy/v1beta1. Objects that were stored through it are still in etcd and readable through the replacement version; only manifests and clients that name this version break.

Kinds in policy/v1beta1

KindIntroducedDeprecatedStops being servedUse instead
Eviction 1.5 1.22 1.25 policy/v1
PodDisruptionBudget 1.5 1.21 1.25 policy/v1
PodSecurityPolicy — — 1.25 Pod Security Admission (no API replacement)

Served in which releases

Kind162025303537
Eviction
PodDisruptionBudget
PodSecurityPolicy

served served, deprecated exists but off by default not served · 1.16 to 1.37; release of introduction unknown for kinds removed from the source, treated as served before removal

Migrating off policy/v1beta1

PodDisruptionBudget removed in 1.25

Move to policy/v1, served since 1.21. Existing objects stay readable through the new version.

What changes:

- apiVersion: policy/v1beta1
+ apiVersion: policy/v1
  kind: PodDisruptionBudget

From the Kubernetes Deprecated API Migration Guide, © The Kubernetes Authors, CC BY 4.0.

PodSecurityPolicy removed in 1.25

Migrate to Pod Security Admission or a 3rd party admission webhook. For a migration guide, see Migrate from PodSecurityPolicy to the Built-In PodSecurity Admission Controller. For more information on the deprecation, see PodSecurityPolicy Deprecation: Past, Present, and Future.

From the Kubernetes Deprecated API Migration Guide, © The Kubernetes Authors, CC BY 4.0.

To convert files mechanically: kubectl convert -f old.yaml --output-version policy/v1 (the kubectl-convert plugin, installed separately). Review defaults it fills in.

Other versions of policy

policy/v1 Stable

Check your manifests for policy/v1beta1 and other removed versions →