The Kubernetes API is constantly evolving, which means that older APIs are regularly reorganized or updated. With the release of Kubernetes 1.22, scheduled for August 2021, several important changes are on the horizon. In this version, several deprecated beta APIs will be removed and replaced by more stable versions. Here's what this means specifically for developers and DevOps teams.
What Specifically Changes for Developers/DevOps Teams?
The upcoming API removals affect all beta APIs that have already been marked as deprecated. These changes could impact the workflow and compatibility in your projects. It's important to review the new stable API versions and adjust your implementations accordingly to ensure a smooth migration.
The following beta APIs will no longer be supported with version 1.22:
- The beta versions of
ValidatingWebhookConfigurationandMutatingWebhookConfiguration(API versions admissionregistration.k8s.io/v1beta1) - The beta
CustomResourceDefinitionAPI (apiextensions.k8s.io/v1beta1) - The beta
APIServiceAPI (apiregistration.k8s.io/v1beta1) - The beta
TokenReviewAPI (authentication.k8s.io/v1beta1) - Beta API versions of
SubjectAccessReview,LocalSubjectAccessReview,SelfSubjectAccessReview(API versions of authorization.k8s.io/v1beta1) - The beta
CertificateSigningRequestAPI (certificates.k8s.io/v1beta1) - The beta
LeaseAPI (coordination.k8s.io/v1beta1) - All beta
IngressAPIs (the API versions extensions/v1beta1 and networking.k8s.io/v1beta1)
Practical Examples or Use Cases
Let's say you use the CustomResourceDefinition API in your project. As of version 1.22, the beta version apiextensions.k8s.io/v1beta1 will no longer be available. Therefore, you should switch to the stable version apiextensions.k8s.io/v1. This might mean that you need to make some adjustments in your YAML configurations to ensure everything works smoothly.
Another example is the use of webhooks. If you employ ValidatingWebhookConfiguration or MutatingWebhookConfiguration in your application, you will also need to switch to the stable versions to remain functional under Kubernetes 1.22.
The Kubernetes documentation provides a detailed overview of the API removals for v1.22 and explains the differences between the beta and stable versions.
Stay up to date with ayedo to ensure your Kubernetes projects are always at the cutting edge of technology and benefit from best practices!
Source: Kubernetes Blog