Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-34634

ROSA(classic) Routes API becomes available after a considerable delay when resuming from hibernation

XMLWordPrintable

    • Moderate
    • No
    • Sprint 254, NE Sprint 255, NE Sprint 256
    • 3
    • Rejected
    • False
    • Hide

      None

      Show
      None

      Description of problem:

      When a ROSA classic cluster is hibernated and later resumed, the route API is not available immediately. When I check the status of the ingress cluster operator, it is reporting an error and becomes available after a considerable delay. GitOps operator depends on the availability of the route API to extract the host name of the service. Since the API is not immediately available, the operator assumes that the cluster does not support route API and initializes a wrong URL. The operator also fails to reconcile the Route that was created by it prior to the hibernation process.
      
          

      Version-Release number of selected component (if applicable):

      4.14.0
          

      How reproducible:

      Always
          

      Steps to Reproduce:

          0. Ensure that you have ROSA (Classic) cluster with hibernate/resume capability enabled.
          1.  Hibernate the cluster using the following command 
      ocm hibernate cluster <cluster name or UUID>
          2.  After a while, when the cluster is successfully hibernated, resume the cluster using the following command.
      ocm resume cluster <cluster name or UUID>
          3.  Check for the availability of ingress cluster operator post resume using the below command
      oc get co ingress
          4.  Check for the available APIs using the below command
      oc api-versions
          

      Actual results:

      > oc get co ingress
      ingress                                    4.14.0    False       True          False      21s     The "default" ingress controller reports Available=False: IngressControllerUnavailable: One or more status conditions indicate unavailable: DeploymentAvailable=False (DeploymentUnavailable: The deployment has Available status condition set to False (reason: MinimumReplicasUnavailable) with message: Deployment does not have minimum availability.)
          

      In the pod logs, I see the below error

      2024-05-28T17:39:41.566Z	ERROR	operator.init.controller-runtime.source.EventHandler	wait/loop.go:62	if kind is a CRD, it should be installed before calling Start	{"kind": "Route.route.openshift.io", "error": "no matches for kind \"Route\" in version \"route.openshift.io/v1\""}
      

      Expected results:

          1. Ingress cluster operator should become available without any errors or delays.
          2. oc api-versions command should have Route API listed under route.openshift.io/v1 group.
          

      Additional info:

      
          

              cholman@redhat.com Candace Holman
              rh-ee-anjoseph Anand Francis Joseph
              Hongan Li Hongan Li
              Anand Francis Joseph
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: