Ingress operator is degraded due to CanaryChecksRepetitiveFailures when Ingress is behind L7 load-balancer (v4.17) #2067
manfuin
started this conversation in
Pre-Release Testing
Replies: 1 comment 1 reply
-
Would this mean all passthrough routes would be non-functional in your cluster environment? |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Upgrade to
4.17.0-okd-scos.0
stuck for us due to Ingress Operator being degraded.The error is:
Indeed, further troubleshooting shows that querying the canary URL
canary-openshift-ingress-canary.apps.<domain>
is failing, however the canary Pods are operational and responding correctly when directly queried via e.g. port-forward.The issue comes down to the fact that our setup uses L7 HAProxy Load-Balancer in front of OKD Ingress Pods that is perfectly fine with Edge/Re-encrypt routes.
The root cause seams the upstream change of Route for canary (https://github.com/openshift/cluster-ingress-operator/blob/master/pkg/manifests/assets/canary/route.yaml) - unconditionally set the type to "passthrough" to address some mTLS issues. It will be great to have a possibility to conditionally specify the route type instead of addressing one corner case while breaking the other.
Mitigation: use L4 HAProxy endpoint in front of Ingress for "canary-openshift-ingress-canary" to let it go with "passthrough". But this makes no sense other that just mitigating upgrade issues - the canary tests are going via completely different L4 path compared to a usual traffic via L7. So the canaries do testing that is not relevant.
Is there actually a way to disable canaries in OKD deployment of Ingress?
I rather disable them if not possible to make them work properly.
Beta Was this translation helpful? Give feedback.
All reactions