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

OLM operator recurring errors after ansible based operator uninstall

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • None
    • 4.10
    • OLM
    • Important
    • No
    • Refinement Backlog
    • 1
    • Rejected
    • False
    • Hide

      None

      Show
      None

    Description

      Description of problem:

      We are experiencing weird behavior with OLM and an ansible based operator, developed for a customer using the Operator SDK.
      
      The custom operator supports single namespace installation only.
      When it is uninstalled from the OCP namespace deleting the subscription and then the CSV, the OLM operator pod (in the openshift-operator-lifecycle-manager namespace) starts logging recurring errors, referring to missing OperatorCondition and ClusterServiceVersion resources for the uninstalled operator:
      
      {"level":"error","ts":1683101778.578233,"logger":"controller.clusterserviceversion","msg":"Reconciler error","reconciler group":"operators.coreos.com","reconciler kind":"ClusterServiceVersion","name":"adc3.v0.1.20","namespace":"isp-adc-datastore","error":"ClusterServiceVersion.operators.coreos.com \"adc3.v0.1.20\" not found","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227"}
      
      {"level":"error","ts":1683101778.589105,"logger":"controllers.operatorcondition-generator","msg":"Unable to find ClusterServiceVersion","request":"isp-adc-datastore/adc3.v0.1.20","error":"ClusterServiceVersion.operators.coreos.com \"adc3.v0.1.20\" not found","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:311\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:266\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227"}
      
      {"level":"error","ts":1683101778.605787,"logger":"controllers.operatorcondition","msg":"Unable to find operatorcondition","request":"isp-adc-datastore/adc3.v0.1.20","error":"OperatorCondition.operators.coreos.com \"adc3.v0.1.20\" not found","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:311\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:266\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227"}
      
      {"level":"error","ts":1683101778.6060314,"logger":"controller.operatorcondition","msg":"Reconciler error","reconciler group":"operators.coreos.com","reconciler kind":"OperatorCondition","name":"adc3.v0.1.20","namespace":"isp-adc-datastore","error":"OperatorCondition.operators.coreos.com \"adc3.v0.1.20\" not found","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227"}
      
      These 4 messages are recurring and a CsvAbnormalOver30Min alert is triggered.
      
      The adc3.v0.1.20 operator is a custom ansible operator based on the base image: quay.io/operator-framework/ansible-operator:v1.20.0

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

      operator-lifecycle-manager 4.10.43

      How reproducible:

      On OCP cluster 4.10 (or 4.8), after installing the custom operator we simply need to uninstall it in order to start seeing the error messages in the olm-operator pod (corresponding alert is generated after the threeshold is reached)

      Steps to Reproduce:

      1. oc delete subscriptions.operators.coreos.com intesa-adc-subscription
      2. oc delete csv adc3.v0.1.20
      

      Actual results:

      OLM operator pod logs:
      
      {"level":"info","ts":1683101727.3684852,"logger":"controllers.adoption","msg":"Could not find Subscription","request":"isp-adc-datastore/intesa-adc-subscription"}
      
      {"level":"error","ts":1683101778.5724018,"logger":"controllers.operatorcondition-generator","msg":"Unable to find ClusterServiceVersion","request":"isp-adc-datastore/adc3.v0.1.20","error":"ClusterServiceVersion.operators.coreos.com \"adc3.v0.1.20\" not found","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:311\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:266\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227"}
      
      {"level":"error","ts":1683101778.572465,"logger":"controller.clusterserviceversion","msg":"Reconciler error","reconciler group":"operators.coreos.com","reconciler kind":"ClusterServiceVersion","name":"adc3.v0.1.20","namespace":"isp-adc-datastore","error":"ClusterServiceVersion.operators.coreos.com \"adc3.v0.1.20\" not found","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227"}
      
      time="2023-05-03T08:16:18Z" level=info msg="gcing children" csv=adc3.v0.1.20 id=GKMKo namespace=isp-adc-datastore phase=Succeeded
      
      {"level":"error","ts":1683101778.5781834,"logger":"controllers.operatorcondition-generator","msg":"Unable to find ClusterServiceVersion","request":"isp-adc-datastore/adc3.v0.1.20","error":"ClusterServiceVersion.operators.coreos.com \"adc3.v0.1.20\" not found","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:311\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:266\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227"}
      
      {"level":"error","ts":1683101778.578233,"logger":"controller.clusterserviceversion","msg":"Reconciler error","reconciler group":"operators.coreos.com","reconciler kind":"ClusterServiceVersion","name":"adc3.v0.1.20","namespace":"isp-adc-datastore","error":"ClusterServiceVersion.operators.coreos.com \"adc3.v0.1.20\" not found","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227"}
      
      {"level":"error","ts":1683101778.589105,"logger":"controllers.operatorcondition-generator","msg":"Unable to find ClusterServiceVersion","request":"isp-adc-datastore/adc3.v0.1.20","error":"ClusterServiceVersion.operators.coreos.com \"adc3.v0.1.20\" not found","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:311\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:266\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227"}
      
      {"level":"error","ts":1683101778.605787,"logger":"controllers.operatorcondition","msg":"Unable to find operatorcondition","request":"isp-adc-datastore/adc3.v0.1.20","error":"OperatorCondition.operators.coreos.com \"adc3.v0.1.20\" not found","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:311\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:266\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227"}
      
      {"level":"error","ts":1683101778.6060314,"logger":"controller.operatorcondition","msg":"Reconciler error","reconciler group":"operators.coreos.com","reconciler kind":"OperatorCondition","name":"adc3.v0.1.20","namespace":"isp-adc-datastore","error":"OperatorCondition.operators.coreos.com \"adc3.v0.1.20\" not found","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/build/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:227"}

      Expected results:

      No errors regarding missing CSV or OperatorCondition for the uninstalled operator.

      Additional info:

      The error messages are recurring and alert is being triggered continuously until the olm-operator pod is restarted.

      Attachments

        Activity

          People

            agreene1991 Alexander Greene
            rh-ee-fserra Fabrizio Serra
            Kui Wang Kui Wang
            Fabrizio Serra
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: