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 of 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 pods being used by the operator may have some issue. There are projects that maps to some of the operators.

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

You can check the pods in the project to see if any of the pods have some issue.

 

 




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 992789 in the box below so that we can be sure you are a human.