-
Notifications
You must be signed in to change notification settings - Fork 7.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TestXdsProxyStatus failures #37169
Comments
Temporary workaround for istio#37169 Might want this long term anyways, to match other jobs
* Turn off autoscaling on externalistiod Temporary workaround for #37169 Might want this long term anyways, to match other jobs * fix
In the integration test environment, an external control plane's istiod is exposed as a loadbalancer-type service: istio/tests/integration/iop-externalistiod-primary-integration-test-defaults.yaml Line 19 in b268554
The framework should use the service IP if there is one, but the problem is that kind doesn't support LoadBalance out of the box, so we use the pod IP instead:
So, the problem is because the integration framework uses kind without metallb or some other loadbalancer support. We could conceivably setup the cluster using metallb, like we suggest users do for testing with kind, or we could set up a gateway, like we do in the external control plane docs.
I'm inclined to think that since this is just for integration testing, and there's no real benefit to scaling up istiod for these tests, why not just fix this by disabling autoscaling of istiod, that is, I think the temporary workaround for this issue, #37170, is the permanent fix. @howardjohn WDYT? |
I think for all of our tests we always deploy metallb. So I feel like we can disable scaling long term and use load balancer -- since that is what any real user would need anyways. |
I wasn't aware that we always deploy metaldb in the integration test env. I ran the tests locally and confirmed that, in fact,
The code uses the service IP for the istiodAddress if there is loadbalancer support. Is the @howardjohn Am I missing something here? |
This is failing recently since we made proxy disconnect from control plane more often. This exposed that these tests fail if they happen to run when not connected. Fixes istio#37169 Fixes istio#40273
This is failing recently since we made proxy disconnect from control plane more often. This exposed that these tests fail if they happen to run when not connected. Fixes istio#37169 Fixes istio#40273
https://prow.istio.io/view/gs/istio-prow/pr-logs/pull/istio_istio/37162/integ-pilot-istiodremote_istio/1489422911918837760
Here
istio/pkg/test/framework/components/istio/operator.go
Line 628 in 7227423
This is a pod IP
Istiod autoscales up to 2 pods, because the istiodless code doesn't set the same config as in cluster (which has autoscaling disable)
We picked the wrong istiod in that code above, so we hit an istiod with 0 connections and fail
The text was updated successfully, but these errors were encountered: