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

HCP: recycler pods are not starting on hostedcontrolplane in disconnected environments ( ImagePullBackOff on quay.io/openshift/origin-tools:latest )

XMLWordPrintable

    • Moderate
    • No
    • Hypershift Sprint 251, Hypershift Sprint 252, Hypershift Sprint 253
    • 3
    • False
    • Hide

      None

      Show
      None
    • Hide
      * Previously, the recycler-pod template in hosted clusters in disconnected environments pointed to `quay.io/openshift/origin-tools:latest`. As a consequence, the recycler pods failed to start. With this update, the recycler pod image now points to the OpenShift Container Platform payload reference. (link:https://issues.redhat.com/browse/OCPBUGS-31398[*OCPBUGS-31398*])
      Show
      * Previously, the recycler-pod template in hosted clusters in disconnected environments pointed to `quay.io/openshift/origin-tools:latest`. As a consequence, the recycler pods failed to start. With this update, the recycler pod image now points to the OpenShift Container Platform payload reference. (link: https://issues.redhat.com/browse/OCPBUGS-31398 [* OCPBUGS-31398 *])
    • Bug Fix
    • Done

      Description of problem:

      Recycler pods are not starting on hostedcontrolplane in disconnected environments ( ImagePullBackOff on quay.io/openshift/origin-tools:latest ).
      
      The root cause is that the recycler-pod template (stored in the recycler-config ConfigMap) on hostedclusters is always pointing to `quay.io/openshift/origin-tools:latest` .
      
      The same configMap for the management cluster is correctly pointing to an image which is part of the release payload:
      $ oc get cm -n openshift-kube-controller-manager recycler-config -o json | jq -r '.data["recycler-pod.yaml"]' | grep "image"
            image: "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:e458f24c40d41c2c802f7396a61658a5effee823f274be103ac22c717c157308"
      
      but on hosted clusters we have:
      $ oc get cm -n clusters-guest414a recycler-config -o json | jq -r '.data["recycler-pod.yaml"]' | grep "image" 
          image: quay.io/openshift/origin-tools:latest
      
      This is likely due to:
      https://github.com/openshift/hypershift/blob/e1b75598a62a06534fab6385d60d0f9a808ccc52/control-plane-operator/controllers/hostedcontrolplane/kcm/config.go#L80
      
      quay.io/openshift/origin-tools:latest is not part of any mirrored release payload and it's referenced by tag so it will not be available on disconnected environments.
      

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

          v4.14, v4.15, v4.16

      How reproducible:

          100%

      Steps to Reproduce:

          1. create an hosted cluster
          2. check the content of the recycler-config configmap in an hostedcontrolplane namespace
          3.
          

      Actual results:

      image field for the recycler-pod template is always pointing to `quay.io/openshift/origin-tools:latest` which is not part of the release payload

      Expected results:

      image field for the recycler-pod template is pointing to the right image (which one???) as extracted from the release payload

      Additional info:

      see: https://github.com/openshift/cluster-kube-controller-manager-operator/blob/64b4c1ba/bindata/assets/kube-controller-manager/recycler-cm.yaml#L21
      to compare with cluster-kube-controller-manager-operator on OCP

              jparrill@redhat.com Juan Manuel Parrilla Madrid
              stirabos Simone Tiraboschi
              Liangquan Li Liangquan Li
              Laura Hinson Laura Hinson
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: