-
Bug
-
Resolution: Unresolved
-
Minor
-
None
-
quay-v3.13.0, quay-v3.12.7
Description:
Quay registry status finally is False when Clair Unmanaged && HPA managed
{ "lastTransitionTime": "2025-02-07T03:14:29Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Some components are not ready", "reason": "ComponentNotReady", "status": "False", "type": "Available" },
Index Image: Quay stable-3.13.4
Note, this is not 3.13.4 specific, this has been long time, looks since Quay 3.12
Steps:
1, Deploy Quay latest 3.13.4, set quay registry with Clair/ClairPostgres Unmanaged and HPA managed
2, Wait for Pod reconcile, check registry status
Actual Result:
Pod startup successfully, registry Type ComponentHPAReady and Available are False status
% oc get quayregistry quayregistry -o json { "apiVersion": "quay.redhat.com/v1", "kind": "QuayRegistry", "metadata": { "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"quay.redhat.com/v1\",\"kind\":\"QuayRegistry\",\"metadata\":{\"annotations\":{},\"name\":\"quayregistry\",\"namespace\":\"quay-enterprise-15131\"},\"spec\":{\"components\":[{\"kind\":\"quay\",\"managed\":true,\"overrides\":{\"env\":[{\"name\":\"DEBUGLOG\",\"value\":\"true\"}]}},{\"kind\":\"postgres\",\"managed\":true},{\"kind\":\"clair\",\"managed\":false},{\"kind\":\"redis\",\"managed\":true},{\"kind\":\"horizontalpodautoscaler\",\"managed\":true},{\"kind\":\"objectstorage\",\"managed\":true},{\"kind\":\"route\",\"managed\":true},{\"kind\":\"mirror\",\"managed\":true},{\"kind\":\"monitoring\",\"managed\":false},{\"kind\":\"tls\",\"managed\":true},{\"kind\":\"clairpostgres\",\"managed\":false}],\"configBundleSecret\":\"test-config-bundle\"}}\n" }, "creationTimestamp": "2025-02-07T03:14:25Z", "finalizers": [ "quay-operator/finalizer" ], "generation": 1, "name": "quayregistry", "namespace": "quay-enterprise-15131", "resourceVersion": "89654", "uid": "94f30678-547d-47ac-884a-5ba3ede65a63" }, "spec": { "components": [ { "kind": "quay", "managed": true, "overrides": { "env": [ { "name": "DEBUGLOG", "value": "true" } ] } }, { "kind": "postgres", "managed": true }, { "kind": "clair", "managed": false }, { "kind": "redis", "managed": true }, { "kind": "horizontalpodautoscaler", "managed": true }, { "kind": "objectstorage", "managed": true }, { "kind": "route", "managed": true }, { "kind": "mirror", "managed": true }, { "kind": "monitoring", "managed": false }, { "kind": "tls", "managed": true }, { "kind": "clairpostgres", "managed": false } ], "configBundleSecret": "test-config-bundle" }, "status": { "conditions": [ { "lastTransitionTime": "2025-02-07T03:14:29Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Horizontal pod autoscaler not found", "reason": "ComponentNotReady", "status": "False", "type": "ComponentHPAReady" }, { "lastTransitionTime": "2025-02-07T03:14:29Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Route admitted", "reason": "ComponentReady", "status": "True", "type": "ComponentRouteReady" }, { "lastTransitionTime": "2025-02-07T03:14:29Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Monitoring not managed by the operator", "reason": "ComponentNotManaged", "status": "True", "type": "ComponentMonitoringReady" }, { "lastTransitionTime": "2025-02-07T03:15:04Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Deployment quayregistry-quay-database healthy", "reason": "ComponentReady", "status": "True", "type": "ComponentPostgresReady" }, { "lastTransitionTime": "2025-02-07T03:14:34Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Object bucket claim bound", "reason": "ComponentReady", "status": "True", "type": "ComponentObjectStorageReady" }, { "lastTransitionTime": "2025-02-07T03:14:29Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Clair not managed by the operator", "reason": "ComponentNotManaged", "status": "True", "type": "ComponentClairReady" }, { "lastTransitionTime": "2025-02-07T03:14:29Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "ClairPostgres not managed by the operator", "reason": "ComponentNotManaged", "status": "True", "type": "ComponentClairPostgresReady" }, { "lastTransitionTime": "2025-02-07T03:14:29Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Using cluster wildcard certs", "reason": "ComponentReady", "status": "True", "type": "ComponentTLSReady" }, { "lastTransitionTime": "2025-02-07T03:14:34Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Deployment quayregistry-quay-redis healthy", "reason": "ComponentReady", "status": "True", "type": "ComponentRedisReady" }, { "lastTransitionTime": "2025-02-07T03:16:34Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Quay component healthy", "reason": "ComponentReady", "status": "True", "type": "ComponentQuayReady" }, { "lastTransitionTime": "2025-02-07T03:18:20Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Deployment quayregistry-quay-mirror healthy", "reason": "ComponentReady", "status": "True", "type": "ComponentMirrorReady" }, { "lastTransitionTime": "2025-02-07T03:14:29Z", "lastUpdateTime": "2025-02-07T03:18:34Z", "message": "Some components are not ready", "reason": "ComponentNotReady", "status": "False", "type": "Available" }, { "lastTransitionTime": "2025-02-07T03:15:04Z", "lastUpdateTime": "2025-02-07T03:15:04Z", "message": "All registry components created", "reason": "ComponentsCreationSuccess", "status": "True", "type": "ComponentsCreated" }, { "lastTransitionTime": "2025-02-07T03:18:20Z", "lastUpdateTime": "2025-02-07T03:18:20Z", "message": "All objects created/updated successfully", "reason": "ComponentsCreationSuccess", "status": "False", "type": "RolloutBlocked" } ], "currentVersion": "v3.13.4", "lastUpdated": "2025-02-07 03:18:20.039977538 +0000 UTC", "registryEndpoint": "https://quayregistry-quay-quay-enterprise-15131.apps.quaytest-15131.qe.devcluster.openshift.com" } }
$ oc get pod NAME READY STATUS RESTARTS AGE quay-operator.v3.13.4-796d9c84bd-r4xjr 1/1 Running 0 4h quayregistry-quay-app-56fc558958-nsfkn 1/1 Running 0 158m quayregistry-quay-app-56fc558958-nzxd5 1/1 Running 0 158m quayregistry-quay-app-upgrade-h7dd2 0/1 Completed 2 159m quayregistry-quay-database-7b759658f9-8mvwh 1/1 Running 0 159m quayregistry-quay-mirror-78d6c6689-2fll6 1/1 Running 0 159m quayregistry-quay-mirror-78d6c6689-7hlp9 1/1 Running 0 159m quayregistry-quay-redis-8599ff9495-2sdhk 1/1 Running 0 159m
This is the same configuration with quay 3.11.8 which Available is True:
% oc get quayregistry quayregistry -o json { "apiVersion": "quay.redhat.com/v1", "kind": "QuayRegistry", "metadata": { "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"quay.redhat.com/v1\",\"kind\":\"QuayRegistry\",\"metadata\":{\"annotations\":{},\"name\":\"quayregistry\",\"namespace\":\"quay-enterprise-15131\"},\"spec\":{\"components\":[{\"kind\":\"quay\",\"managed\":true,\"overrides\":{\"env\":[{\"name\":\"DEBUGLOG\",\"value\":\"true\"}]}},{\"kind\":\"postgres\",\"managed\":true},{\"kind\":\"clair\",\"managed\":false},{\"kind\":\"redis\",\"managed\":true},{\"kind\":\"horizontalpodautoscaler\",\"managed\":true},{\"kind\":\"objectstorage\",\"managed\":true},{\"kind\":\"route\",\"managed\":true},{\"kind\":\"mirror\",\"managed\":true},{\"kind\":\"monitoring\",\"managed\":false},{\"kind\":\"tls\",\"managed\":true},{\"kind\":\"clairpostgres\",\"managed\":false}],\"configBundleSecret\":\"test-config-bundle\"}}\n" }, "creationTimestamp": "2025-02-07T06:25:01Z", "finalizers": [ "quay-operator/finalizer" ], "generation": 1, "name": "quayregistry", "namespace": "quay-enterprise-15131", "resourceVersion": "198816", "uid": "e4024448-82c6-4872-ba19-10d04fab3bb2" }, "spec": { "components": [ { "kind": "quay", "managed": true, "overrides": { "env": [ { "name": "DEBUGLOG", "value": "true" } ] } }, { "kind": "postgres", "managed": true }, { "kind": "clair", "managed": false }, { "kind": "redis", "managed": true }, { "kind": "horizontalpodautoscaler", "managed": true }, { "kind": "objectstorage", "managed": true }, { "kind": "route", "managed": true }, { "kind": "mirror", "managed": true }, { "kind": "monitoring", "managed": false }, { "kind": "tls", "managed": true }, { "kind": "clairpostgres", "managed": false } ], "configBundleSecret": "test-config-bundle" }, "status": { "conditions": [ { "lastTransitionTime": "2025-02-07T06:25:05Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "Horizontal pod autoscaler found", "reason": "ComponentReady", "status": "True", "type": "ComponentHPAReady" }, { "lastTransitionTime": "2025-02-07T06:25:05Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "Route admitted", "reason": "ComponentReady", "status": "True", "type": "ComponentRouteReady" }, { "lastTransitionTime": "2025-02-07T06:25:01Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "Monitoring not managed by the operator", "reason": "ComponentNotManaged", "status": "True", "type": "ComponentMonitoringReady" }, { "lastTransitionTime": "2025-02-07T06:29:04Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "Deployment quayregistry-quay-database healthy", "reason": "ComponentReady", "status": "True", "type": "ComponentPostgresReady" }, { "lastTransitionTime": "2025-02-07T06:25:28Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "Object bucket claim bound", "reason": "ComponentReady", "status": "True", "type": "ComponentObjectStorageReady" }, { "lastTransitionTime": "2025-02-07T06:25:01Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "Clair not managed by the operator", "reason": "ComponentNotManaged", "status": "True", "type": "ComponentClairReady" }, { "lastTransitionTime": "2025-02-07T06:25:01Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "ClairPostgres not managed by the operator", "reason": "ComponentNotManaged", "status": "True", "type": "ComponentClairPostgresReady" }, { "lastTransitionTime": "2025-02-07T06:25:01Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "Using cluster wildcard certs", "reason": "ComponentReady", "status": "True", "type": "ComponentTLSReady" }, { "lastTransitionTime": "2025-02-07T06:25:28Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "Deployment quayregistry-quay-redis healthy", "reason": "ComponentReady", "status": "True", "type": "ComponentRedisReady" }, { "lastTransitionTime": "2025-02-07T06:29:04Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "Quay component healthy", "reason": "ComponentReady", "status": "True", "type": "ComponentQuayReady" }, { "lastTransitionTime": "2025-02-07T06:29:04Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "Deployment quayregistry-quay-mirror healthy", "reason": "ComponentReady", "status": "True", "type": "ComponentMirrorReady" }, { "lastTransitionTime": "2025-02-07T06:29:04Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "All components reporting as healthy", "reason": "HealthChecksPassing", "status": "True", "type": "Available" }, { "lastTransitionTime": "2025-02-07T06:25:48Z", "lastUpdateTime": "2025-02-07T06:25:48Z", "message": "All registry components created", "reason": "ComponentsCreationSuccess", "status": "True", "type": "ComponentsCreated" }, { "lastTransitionTime": "2025-02-07T06:50:31Z", "lastUpdateTime": "2025-02-07T06:50:31Z", "message": "All objects created/updated successfully", "reason": "ComponentsCreationSuccess", "status": "False", "type": "RolloutBlocked" } ], "currentVersion": "v3.11.8", "lastUpdated": "2025-02-07 06:50:31.352446336 +0000 UTC", "registryEndpoint": "https://quayregistry-quay-quay-enterprise-15131.apps.quaytest-15131.qe.devcluster.openshift.com" } }