Uploaded image for project: 'OpenShift Service Mesh'
  1. OpenShift Service Mesh
  2. OSSM-12524

Sidecar: TestTraffic/instanceip subtests failing with CUDN network

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • None
    • Istio
    • None

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

       

              rh-ee-skriss Steve Kriss
              rh-ee-skriss Steve Kriss
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: