-
Task
-
Resolution: Unresolved
-
Undefined
-
None
-
None
-
None
-
False
-
-
False
-
-
--- FAIL: TestTraffic/instanceip (72.83s) --- FAIL: TestTraffic/instanceip/instance_IP_without_sidecar (30.09s) --- FAIL: TestTraffic/instanceip/instance_IP_with_empty_sidecar (30.57s)
The first test, instance_IP_without_sidecar, fails because the echo service is listening on the instance IP only, which is set to the pod IP on the default cluster network. For UDN support this would need to listen on the CUDN IP, not the default pod IP.
The second test, instance_IP_with_empty_sidecar, fails similarly because the echo service is listening on the instance IP only, which is set to the pod IP on the default cluster network. The sidecar in this case forwards traffic to the original destination of the packet, which would be the UDN IP (since we're using Sridhar's code changes to support UDN).
Work was started on modifying the test code to support listening on the UDN IP, however with this change in place, instance_IP_with_wildcard_sidecar starts failing, presumably because per Istio docs, a defaultEndpoint of 0.0.0.0 instructs the sidecar to forward traffic to the instance IP, which again comes from status.podIP. So this code would need to be updated to support UDN (or this use case should be described as unsupported).
Run integration tests with UDN:
go test -v -tags=integ ./tests/integration/pilot --istio.test.enableCUDN=true --istio.test.cudnNetworkName=istio-test-network --istio.test.cudnSelector=istio-test-cudn --istio.test.kube.deploy=true --timeout=90m --istio.test.openshift=true -count=1 --istio.test.ci --istio.test.skipTProxy=true --istio.test.skipVM=true --istio.test.istio.enableCNI=true --istio.test.kube.helm.values=global.platform=openshift
Branch with WIP code changes to echo app to listen on UDN IP if running in UDN: https://github.com/skriss/istio/tree/ovnk-udn-changes-instanceip
(TODO: de-dupe with Sridhar's similar changes in https://github.com/istio/istio/commit/292a095bfd5ef3b5be4238e9f56ed035cf21776c)
Run instanceip integration tests using a custom echo/app image (must be in registry):
ECHO_IMAGE=quay.io/skriss/app:udn go test -v -tags=integ ./tests/integration/pilot -run TestTraffic/instanceip --istio.test.enableCUDN=true --istio.test.cudnNetworkName=istio-test-network --istio.test.cudnSelector=istio-test-cudn --istio.test.kube.deploy=true --timeout=90m --istio.test.openshift=true -count=1 --istio.test.ci --istio.test.skipTProxy=true --istio.test.skipVM=true --istio.test.istio.enableCNI=true --istio.test.kube.helm.values=global.platform=openshift