Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-46042

ETP=Local EgressService can not receive traffic on SGW

XMLWordPrintable

    • None
    • False
    • Hide

      None

      Show
      None

      Description of problem:

      An ETP=Local EgressService can not receive traffic when the cluster is on Shared Gateway mode.

      The fix might be implementing https://github.com/ovn-kubernetes/ovn-kubernetes/pull/4265 for EgressServices

      Version-Release number of selected component (if applicable): 4.14+

      How reproducible: Always

      Steps to Reproduce (on a kind cluster):

      1. Create the EgressService:

      apiVersion: apps/v1

      kind: Deployment

      metadata:

        name: example-deployment

        namespace: default

        labels:

          app: example

      spec:

        replicas: 3

        selector:

          matchLabels:

            app: example

        template:

          metadata:

            labels:

              app: example

          spec:

            containers:

            - name: agnhost

              image: registry.k8s.io/e2e-test-images/agnhost:2.26

              command:

                - /agnhost

                - netexec

                - --http-port=9090

              ports:

              - containerPort: 9090

      apiVersion: v1

      kind: Service

      metadata:

        name: example-service

        namespace: default

        annotations:

          metallb.universe.tf/address-pool: example-pool

      spec:

        selector:

          app: example

        ports:

          - name: http

            protocol: TCP

            port: 9090

            targetPort: 9090

        type: LoadBalancer

        externalTrafficPolicy: Cluster

      apiVersion: k8s.ovn.org/v1

      kind: EgressService

      metadata:

        name: example-service

        namespace: default

      spec:

        sourceIPBy: "LoadBalancerIP"

      apiVersion: metallb.io/v1beta1

      kind: IPAddressPool

      metadata:

        name: example-pool

        namespace: metallb-system

      spec:

        addresses:

        - 10.89.0.100/32

        autoAssign: false

      apiVersion: metallb.io/v1beta1

      kind: L2Advertisement

      metadata:

        name: example-l2-adv

        namespace: metallb-system

      spec:

        ipAddressPools:

        - example-pool

        nodeSelectors:

        - matchLabels:

            egress-service.k8s.ovn.org/default-example-service: ""

      2. Trying to hit the service from outside hands:

      $ curl 10.89.0.100:9090/hostname && echo ""

      <HANGS>

      Expected results: the external client should be able to reach the service

       

              sdn-team-bot sdn-team bot
              obraunsh@redhat.com Ori Braunshtein
              Anurag Saxena Anurag Saxena
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated: