Preparing to upgrade to OpenShift Container Platform 4.9

Updated

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.

OpenShift Container Platform 4.9 uses Kubernetes 1.22, which removed a significant number of deprecated v1beta1 APIs.

OpenShift Container Platform 4.8.14 introduced a requirement that an administrator must provide a manual acknowledgment before the cluster can be upgraded from OpenShift Container Platform 4.8 to 4.9. This is to help prevent issues after upgrading to OpenShift Container Platform 4.9, 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.9.

Removed Kubernetes APIs

Kubernetes 1.22 removed the following deprecated v1beta1 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.9.

ResourceAPINotable changes
APIServiceapiregistration.k8s.io/v1beta1No
CertificateSigningRequestcertificates.k8s.io/v1beta1Content from kubernetes.io is not included.Yes
ClusterRolerbac.authorization.k8s.io/v1beta1No
ClusterRoleBindingrbac.authorization.k8s.io/v1beta1No
CSIDriverstorage.k8s.io/v1beta1No
CSINodestorage.k8s.io/v1beta1No
CustomResourceDefinitionapiextensions.k8s.io/v1beta1Content from kubernetes.io is not included.Yes
Ingressextensions/v1beta1Content from kubernetes.io is not included.Yes
Ingressnetworking.k8s.io/v1beta1Content from kubernetes.io is not included.Yes
IngressClassnetworking.k8s.io/v1beta1No
Leasecoordination.k8s.io/v1beta1No
LocalSubjectAccessReviewauthorization.k8s.io/v1beta1Content from kubernetes.io is not included.Yes
MutatingWebhookConfigurationadmissionregistration.k8s.io/v1beta1Content from kubernetes.io is not included.Yes
PriorityClassscheduling.k8s.io/v1beta1No
Rolerbac.authorization.k8s.io/v1beta1No
RoleBindingrbac.authorization.k8s.io/v1beta1No
SelfSubjectAccessReviewauthorization.k8s.io/v1beta1Content from kubernetes.io is not included.Yes
SelfSubjectRulesReviewauthorization.k8s.io/v1beta1Content from kubernetes.io is not included.Yes
StorageClassstorage.k8s.io/v1beta1No
SubjectAccessReviewauthorization.k8s.io/v1beta1Content from kubernetes.io is not included.Yes
TokenReviewauthentication.k8s.io/v1beta1No
ValidatingWebhookConfigurationadmissionregistration.k8s.io/v1beta1Content from kubernetes.io is not included.Yes
VolumeAttachmentstorage.k8s.io/v1beta1No

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.9.

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.9, run the following command:

$ oc -n openshift-config patch cm admin-acks --patch '{"data":{"ack-4.8-kube-1.22-api-removals-in-4.9":"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 to be upgraded to OpenShift Container Platform 4.9.

Category
Article Type