BMYPC6007
A Catalogsource is not ready.
Severity
Error
Problem description
It indicates that a Catalogsource in the OpenShift® is either not ready or not healthy. It
is required for any operator lifecycle management operation, such as installation or upgrade to
function. All catalog sources in the OpenShift cluster must be healthy and ready. Any unhealthy catalog source impacts the OLM functions in the
cluster.
Recommended actions
Do the following steps to resolve the issue:
- Some of the possible reasons with diagnostic steps for a catalog source to not work are as follows:
- Invalid image name in the catalog source:
- Check the pod for the given catalog source in its dedicated namespace or
openshift-marketplacenamespace. - Run the following command to describe the
pod.
oc describe pod <pod name> -n <namespace> - If you find an error with the message
invalid image referenceunder events section, then fix the image field in the catalog source YAML. Wait for the catalog source to turn healthy.
- Check the pod for the given catalog source in its dedicated namespace or
- Missing images in the registry for disconnected setup:
- Check the pod for the given catalog source in its dedicated namespace or
openshift-marketplacenamespace. - Run the following command to describe the
pod.
oc describe pod <pod name> -n <namespace> - If you find an error with the message
unknown manifestunder events section, mirror images to enterprise registry and wait for catalog source to turn healthy.
- Check the pod for the given catalog source in its dedicated namespace or
- Missing
ImageContentSourcePolicyfor disconnected set up:- Check the pod for the given catalog source in its dedicated namespace or
openshift-marketplacenamespace. - Run the following command to describe the
pod.
oc describe pod <pod name> -n <namespace> - If you find an error with the messages
unknown manifestandMirrors failedunder events section, then review theimagecontentsourcepolicyapplied for any incorrect paths or ports or spelling mistakes. Fix them and wait for catalog source to turn healthy.
- Check the pod for the given catalog source in its dedicated namespace or
- Missing credentials for the registry in the global pull-secret of the
openshift-confignamespace. Check the credentials in the global pull-secret in theopenshift-confignamespace:- Check the pod for the given catalog source in its dedicated namespace or
openshift-marketplacenamespace. - Run the following command to describe the
pod.
oc describe pod <pod name> -n <namespace> - If you find an error with the messages
Unknown desc = unable to retrieve auth token: invalidandusername/password: unknown: Authentication is requiredunder events section, then review thepull-secretinopenshift-confignamespace for correct credentials for registry where the image is referenced. Fix auth for registry in secret and wait for catalog source to turn healthy.
- Check the pod for the given catalog source in its dedicated namespace or
- Connection error to the registry. Make sure that the firewall and proxy do not block registry
and port access.
- Check the pod for the given catalog source in its dedicated namespace or
openshift-marketplacenamespace. - Run the following command to describe the
pod.
oc describe pod <pod name> -n <namespace> - If you find an error with the messages
pinging container registry registry.redhat.io: Getand"https://<registryhost>": dial tcp <registryip>: connect: connection refusedunder events section, then review the firewall and proxy settings to make sure that registry access is allowed to the cluster and wait for catalog source to turn healthy.
- Check the pod for the given catalog source in its dedicated namespace or
- Invalid image name in the catalog source:
After the CatalogSource is in a ready state, the upgrade precheck detects the
fix and resumes the upgrade operation automatically.
If you want to override the prechecks that are blocking the upgrade, do the following steps:
It converts the
Error prechecks to Warning prechecks and
triggers the upgrade.Note: Before using the
precheck-acks configmap to override the
pre-checks, ensure that the unhealthy resource does not affect the upgrade. - Run the following command and export IBM Fusion namespace as an environmental
variable.
export FUSION_NS="namespace-where-fusion-is-installed" - Run the following command to create a
precheck-acksconfigmap in the namespace where the IBM Fusion is installed.oc create configmap precheck-acks -n $FUSION_NS - In the
precheck-acksconfig map, add the keyCatalogSourceStatusand set the value totrue.oc patch configmap precheck-acks -n $FUSION_NS --type merge -p '{"data": {"CatalogSourceStatus": "true"}}'