Troubleshooting catalog issues
Symptom
When you try to install a catalog, like the IBM Operator Catalog or an IBM Cloud Pak CASE catalog, your catalogsource pods encounter an ImagePullBackOff
error. The following pod status and log entries illustrate this issue:
-
Using the kubectl get pods command:
-> kubectl get pods .... -n openshift-marketplace NAME READY STATUS RESTARTS AGE .... 0/1 ImagePullBackOff 0 4m2s
-
Using the kubectl logs command
-> kubectl logs .... -n openshift-marketplace Error from server (BadRequest): container "registry-server" in pod "...." is waiting to start: trying and failing to pull image
-
Using the kubectl describe command
-> kubectl describe pod .... -n openshift-marketplace ... Warning Failed 2m53s (x4 over 4m29s) kubelet Failed to pull image "....": rpc error: code = Unknown desc = choosing image instance: no image found in manifest list for architecture arm64, variant "", OS linux Warning Failed 2m53s (x4 over 4m29s) kubelet Error: ErrImagePull Warning Failed 2m38s (x6 over 4m28s) kubelet Error: ImagePullBackOff ...
Cause
Multi-architecture compute node clusters are supported with Red Hat OpenShift Container Platform 4.14. Not all catalog sources contain node affinity to route catalog correctly in a multi-arch compute node cluster. As a result, when you try to install, for example, a IBM Cloud Pak CASE catalog, it might result in an error because it is landing on a non-compatible node.
Solution
Target a supported architecture within your cluster in your catalogsource definition to route your pods to your architecture. The following example illustrates the catalogsource definition routing catalogsource pods to amd64
.
grpcPodConfig:
nodeSelector:
kubernetes.io/arch: amd64