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
-
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