Preparing to upgrade to OpenShift Container Platform 4.12
Disclaimer: Links contained herein to external website(s) are provided for convenience only. Red Hat has not reviewed the links and is not responsible for the content or its availability. The inclusion of any link to an external website does not imply endorsement by Red Hat of the website or their entities, products or services. You agree that Red Hat is not responsible or liable for any loss or expenses that may result due to your use of (or reliance on) the external site or content.
This article is part of series covering API removals and deprecations. See Navigating Kubernetes API deprecations and removals for more information on evaluating API usage and migrating away from these APIs.
Per the Kubernetes documentation, Kubernetes 1.25 removed several deprecated APIs. OpenShift Container Platform 4.12 uses Kubernetes 1.25.
OpenShift Container Platform 4.11.6 introduced a requirement that an administrator must provide a manual acknowledgment before the cluster can be upgraded from OpenShift Container Platform 4.11 to 4.12. This is to help prevent issues after upgrading to OpenShift Container Platform 4.12, where APIs that have been removed are still in use by workloads, tools, or other components running on or interacting with the cluster. Administrators must evaluate their cluster for any APIs in use that will be removed and migrate the affected components to use the appropriate new API version. After this is done, the administrator can provide the administrator acknowledgment.
All clusters require this administrator acknowledgment before they can be upgraded to OpenShift Container Platform 4.12.
Removed Kubernetes APIs
Kubernetes 1.25 removed the following deprecated APIs. If your cluster, or any idle workloads or tools use any of these APIs, you must migrate them to the appropriate new version before upgrading to OpenShift Container Platform 4.12, once it is available.
Resource | API | Notable changes |
---|---|---|
CronJob |
batch/v1beta1 |
No |
EndpointSlice |
discovery.k8s.io/v1beta1 |
Yes |
Event |
events.k8s.io/v1beta1 |
Yes |
HorizontalPodAutoscaler |
autoscaling/v2beta1 |
Yes |
PodDisruptionBudget |
policy/v1beta1 |
Yes |
PodSecurityPolicy |
policy/v1beta1 |
Yes |
RuntimeClass |
node.k8s.io/v1beta1 |
No |
Providing the administrator acknowledgement
IMPORTANT: See Navigating Kubernetes API deprecations and removals for information on evaluating API usage and migrating away from these removed APIs.
After you have evaluated your cluster for any removed APIs and have migrated any removed APIs, you can acknowledge that your cluster is ready to upgrade to OpenShift Container Platform 4.12, once it is available.
NOTE: This method of acknowledgement does not apply to OpenShift Dedicated (OSD) or Red Hat OpenShift Service on AWS (ROSA). Please refer to the relevant KCS for OSD and for ROSA.
WARNING: Be aware that all responsibility falls on the administrator to ensure that all uses of removed APIs have been resolved and migrated as necessary before providing this administrator acknowledgment. OpenShift Container Platform can assist with the evaluation, but cannot identify all possible uses of removed APIs, especially idle workloads or external tools.
To acknowledge that you have completed the evaluation and your cluster is ready to upgrade to OpenShift Container Platform 4.12, run the following command:
$ oc -n openshift-config patch cm admin-acks --patch '{"data":{"ack-4.11-kube-1.25-api-removals-in-4.12":"true"}}' --type=merge
Note: You must have access to the cluster as a user with the
cluster-admin
role in order to run this command.
Your cluster is now ready for the Kubernetes API removals in OpenShift Container Platform 4.12.
Comments