Kubernetes 1.22 removed APIs
Kubernetes 1.22 removed more APIs than any other release. Most were beta versions of core building blocks: Ingress, CustomResourceDefinition, RBAC, webhooks and storage.
Every replacement below was available by 1.19, so clusters could migrate before upgrading.
Check a manifest against 1.22.
Removed in 1.22
The API server no longer serves these from 1.22. Each kind links to its migration steps.
| Kind | Removed version | Migrate to | Available since |
|---|---|---|---|
| APIService | apiregistration.k8s.io/v1beta1 | apiregistration.k8s.io/v1 | 1.10 |
| CertificateSigningRequest | certificates.k8s.io/v1beta1 | certificates.k8s.io/v1 | 1.19 |
| ClusterRole | rbac.authorization.k8s.io/v1beta1 | rbac.authorization.k8s.io/v1 | 1.8 |
| ClusterRoleBinding | rbac.authorization.k8s.io/v1beta1 | rbac.authorization.k8s.io/v1 | 1.8 |
| CSIDriver | storage.k8s.io/v1beta1 | storage.k8s.io/v1 | 1.18 |
| CSINode | storage.k8s.io/v1beta1 | storage.k8s.io/v1 | 1.17 |
| CustomResourceDefinition | apiextensions.k8s.io/v1beta1 | apiextensions.k8s.io/v1 | 1.16 |
| Ingress | extensions/v1beta1 | networking.k8s.io/v1 | 1.19 |
| Ingress | networking.k8s.io/v1beta1 | networking.k8s.io/v1 | 1.19 |
| IngressClass | networking.k8s.io/v1beta1 | networking.k8s.io/v1 | 1.19 |
| Lease | coordination.k8s.io/v1beta1 | coordination.k8s.io/v1 | 1.14 |
| LocalSubjectAccessReview | authorization.k8s.io/v1beta1 | authorization.k8s.io/v1 | 1.6 |
| MutatingWebhookConfiguration | admissionregistration.k8s.io/v1beta1 | admissionregistration.k8s.io/v1 | 1.16 |
| PriorityClass | scheduling.k8s.io/v1beta1 | scheduling.k8s.io/v1 | 1.14 |
| Role | rbac.authorization.k8s.io/v1beta1 | rbac.authorization.k8s.io/v1 | 1.8 |
| RoleBinding | rbac.authorization.k8s.io/v1beta1 | rbac.authorization.k8s.io/v1 | 1.8 |
| SelfSubjectAccessReview | authorization.k8s.io/v1beta1 | authorization.k8s.io/v1 | 1.6 |
| SelfSubjectRulesReview | authorization.k8s.io/v1beta1 | authorization.k8s.io/v1 | 1.6 |
| StorageClass | storage.k8s.io/v1beta1 | storage.k8s.io/v1 | 1.6 |
| SubjectAccessReview | authorization.k8s.io/v1beta1 | authorization.k8s.io/v1 | 1.6 |
| TokenReview | authentication.k8s.io/v1beta1 | authentication.k8s.io/v1 | 1.6 |
| ValidatingWebhookConfiguration | admissionregistration.k8s.io/v1beta1 | admissionregistration.k8s.io/v1 | 1.16 |
| VolumeAttachment | storage.k8s.io/v1beta1 | storage.k8s.io/v1 | 1.13 |
Deprecated in 1.22
These still work in 1.22. Each kind links to its migration steps.
- Event
events.k8s.io/v1beta1: removed in 1.25 - HorizontalPodAutoscaler
autoscaling/v2beta1: removed in 1.25 - RuntimeClass
node.k8s.io/v1beta1: removed in 1.25
The official migration guide covers the APIs it lists for each release. See every version with API removals.