Machine Config Operator stuck due to invalid machineconfignodes CRD in RHOCP 4

Solution Verified - Updated -

Issue

  • While upgrading an RHOCP cluster sequentially from 4.16.47 → 4.17.45 → 4.18.30 → 4.19.21, the upgrade is halted due to CRD corruption.

  • The Machine Config Operator (MCO) does not progress, and the cluster upgrade is halted with an error indicating an invalid value in machineconfignodes.machineconfiguration.openshift.io CustomResourceDefinition.

  • On listing the Cluster version it shows the below error :

    $ oc get clusterversion -o yaml 
    
    Message:               Could not update customresourcedefinition "machineconfignodes.machineconfiguration.openshift.io" (785 of 924): the object is invalid, possibly due to local cluster configuration
    
    Reason:                UpdatePayloadResourceInvalid
    Status:                True
    Type:                  Failing
    Last Transition Time:  202x-0x-01T0x:2x:xxx
    Message:               Unable to apply 4.19.21: some cluster configuration is invalid
    Reason:                UpdatePayloadResourceInvalid
    
    : CustomResourceDefinition.apiextensions.k8s.io \"machineconfignodes.machineconfiguration.openshift.io\" is invalid: status.storedVersions[0]: Invalid value: \"v1alpha1\": must appear in spec.versions" logger="UnhandledError"
    

Environment

  • Red Hat OpenShift Container Platform (RHOCP)
    • 4

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content