Bootstrap FreeKB - OpenShift - Resolve cluster operator degraded
OpenShift - Resolve cluster operator degraded

Updated:   |  OpenShift articles

The oc get clusteroperator (or oc get co) command can be used to list the cluster operators. Something like this should be returned. Notice in this example that the authentication operator is degraded.

~]$ oc get clusteroperator
NAME                                       VERSION   AVAILABLE   PROGRESSING   DEGRADED   SINCE
authentication                             4.6.41    False       True          True       3h17m
cloud-credential                           4.6.41    True        False         False      335d
cluster-autoscaler                         4.6.41    True        False         False      335d
config-operator                            4.6.41    True        False         False      335d
console                                    4.6.41    True        False         True       6d14h
csi-snapshot-controller                    4.6.41    True        False         False      6d15h
dns                                        4.6.41    True        False         False      225d
etcd                                       4.6.41    True        False         False      335d
image-registry                             4.6.41    True        False         False      6d15h
ingress                                    4.6.41    True        False         False      40d
insights                                   4.6.41    True        False         False      335d
kube-apiserver                             4.6.41    True        False         False      335d
kube-controller-manager                    4.6.41    True        False         False      335d
kube-scheduler                             4.6.41    True        False         False      335d
kube-storage-version-migrator              4.6.41    True        False         False      6d13h
machine-api                                4.6.41    True        False         False      335d
machine-approver                           4.6.41    True        False         False      335d
machine-config                             4.6.41    True        False         False      6d12h
marketplace                                4.6.41    True        False         False      6d14h
monitoring                                 4.6.41    True        False         False      6d12h
network                                    4.6.41    True        False         False      335d
node-tuning                                4.6.41    True        False         False      6d15h
openshift-apiserver                        4.6.41    True        False         False      6d14h
openshift-controller-manager               4.6.41    True        False         False      17d
openshift-samples                          4.6.41    True        False         False      6d15h
operator-lifecycle-manager                 4.6.41    True        False         False      335d
operator-lifecycle-manager-catalog         4.6.41    True        False         False      335d
operator-lifecycle-manager-packageserver   4.6.41    True        False         False      6d14h
service-ca                                 4.6.41    True        False         False      335d
storage                                    4.6.41    True        False         False      225d

 

The oc describe clusteroperator command can be used to display more information about a cluster operator. In this example, the details of the authentication operator will be displayed, where the Status section might have details on why the operator is degraded.

There are a wide variety of issues that can cause an operator to become degraded, far too many to list here, so this is just a starting point when looking into why an operator is degraded.

~]# oc describe clusteroperator authentication
Status:
  Conditions:
    Last Transition Time:  2022-06-15T01:27:40Z
    Message:               OAuthRouteCheckEndpointAccessibleControllerDegraded: Get "https://oauth-openshift.apps.openshift.example.com/healthz": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
ProxyConfigControllerDegraded: endpoint("https://oauth-openshift.apps.openshift.example.com/healthz") found in NO_PROXY(".cluster.local,.svc,.example.com,localhost") is unreachable with proxy(Get "https://oauth-openshift.apps.openshift.example.com/healthz": context deadline exceeded) and without proxy(Get "https://oauth-openshift.apps.openshift.example.com/healthz": context deadline exceeded)
    Reason:                OAuthRouteCheckEndpointAccessibleController_SyncError::ProxyConfigController_SyncError
    Status:                True
    Type:                  Degraded

 

Sometimes, when an operator is degraded, one or more resources associated with the operator may have some issue, such as some issue with pods or services or nodes, and so on, so you will almost always want to check the condition of the resources being used by the operator.

There are projects that maps to some of the operators.

  • authentication operator = openshift-authentication project
  • monitoring operator = openshift-monitoring project

 

 

 




Did you find this article helpful?

If so, consider buying me a coffee over at Buy Me A Coffee



Comments


Add a Comment


Please enter af852b in the box below so that we can be sure you are a human.