IBM Cloud Docs
Why do I see a Cannot complete cluster master upgrade message?

Why do I see a Cannot complete cluster master upgrade message?

Virtual Private Cloud Classic infrastructure Satellite

When upgrading a cluster master, you receive a Cannot complete cluster master upgrade error message similar to the following example.

Cannot complete cluster master upgrade because the Upgradeable status condition is set to False.

There are a variety of reasons why the Cluster Version Operator would report back an Upgradeable status of False. For example, if you are upgrading from Red Hat OpenShift 4.13 to 4.14, and receive this error message, then your cluster administrators likely have not yet acknowledged that they have evaluated and removed the deprecated APIs in Kubernetes version 1.27. For more information, see Preparing to update to OpenShift Container Platform 4.14.

Run the following command to check the reason(s) that your cluster isn't in an upgradeable state.

oc get clusterversion version -o json | jq '.status.conditions[] | select(.type == "Upgradeable")'
  1. Review the Version information and update actions for the version you want to update to. Evaluate your cluster for APIs that have been removed in the new version. For example in Red Hat OpenShift 4.14 and Kubernetes 1.27 the storage.k8s.io/v1beta1 API is removed.

  2. Review the reason and message fields from the JSON object for the False upgradeable status. If you are attempting an upgrade from Red Hat OpenShift 4.13 to Red Hat OpenShift 4.14 and there has not been an administrator acknowledgment, the message includes * Kubernetes 1.27 and therefore OpenShift 4.14 remove several APIs which require admin consideration. Please see https://access.redhat.com/articles/6958395 for details and instructions.. If you don't have access to a Red Hat account to view the solution, you can perform the following steps to resolve the issue as a cluster administrator.

  3. Migrate any affected components to use the appropriate new API version including tools, workloads, or any other components that run or interact with the cluster. For example, Red Hat OpenShift 4.14 clusters use Kubernetes 1.27 and face the same deprecations.

  4. After you've successfully migrated off of removed APIs like storage.k8s.io/v1beta1, you can acknowledge that your cluster is ready to upgrade to the next version of Red Hat OpenShift.

    Cluster administrators are responsible for ensuring that removed APIs are no longer being used and migration to supported APIs is completed before providing this administrator acknowledgment. IBM Cloud can assist with the evaluation, but cannot identify all possible instances where removed APIs are being used, especially in external tools and idle workloads.

  5. Follow the steps to Provide the administrator acknowledgment that you have migrated off the removed APIs.

  6. After you have completed the previous migration steps, run the following command again. Note, it may take several minutes for the Upgradeable status to update. If no data is returned, the Upgradeable status has been removed and you can retry the cluster upgrade.

    oc get clusterversion version -o json | jq '.status.conditions[] | select(.type == "Upgradeable")'