ovn-org / ovn-kubernetes

A robust Kubernetes networking platform
https://ovn-kubernetes.io/
Apache License 2.0
825 stars 347 forks source link

UDN, non-IC: egress on layer2 topology e2e tests fail on non-IC deployments #4642

Open maiqueb opened 2 months ago

maiqueb commented 2 months ago

What happened?

The e2e tests about egress on layer2 topology are failing on non-IC deployments:

• [FAILED] [256.356 seconds]
Network Segmentation pod2Egress on a user defined primary network can be accessed to from the pods running in the Kubernetes cluster [It] by one pod with dualstack addresses over a layer2 network
/home/runner/work/ovn-kubernetes/ovn-kubernetes/test/e2e/network_segmentation.go:762

  [FAILED] Timed out after 120.000s.
  Expected success, but got an error:
      <exec.CodeExitError>: 
      error running /usr/local/bin/kubectl --server=https://127.0.0.1:41447/ --kubeconfig=/home/runner/ovn.conf --namespace=network-segmentation-2127 exec client-pod -- curl --connect-timeout 2 172.18.0.5:9000:
      Command stdout:

      stderr:
        % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                       Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
      curl: (28) Connection timeout after 2000 ms
      command terminated with exit code 28

      error:
      exit status 28
      {
          Err: <*errors.errorString | 0xc0011e0030>{
              s: "error running /usr/local/bin/kubectl --server=https://127.0.0.1:41447/ --kubeconfig=/home/runner/ovn.conf --namespace=network-segmentation-2127 exec client-pod -- curl --connect-timeout 2 172.18.0.5:9000:\nCommand stdout:\n\nstderr:\n  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n                                 Dload  Upload   Total   Spent    Left  Speed\n\r  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0\r  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0\r  0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0\ncurl: (28) Connection timeout after 2000 ms\ncommand terminated with exit code 28\n\nerror:\nexit status 28",
          },
          Code: 28,
      }
  In [It] at: /home/runner/work/ovn-kubernetes/ovn-kubernetes/test/e2e/network_segmentation.go:755 @ 08/20/24 08:54:57.028

We currently do not have a way to support this for non-IC.

It will probably involve a new design.

What did you expect to happen?

The e2e tests should pass.

How can we reproduce it (as minimally and precisely as possible)?

Run the UDN layer2 topology egress e2e tests on a non-IC cluster.

Check the presubmit results on the network segmentation, non-IC deployment lane after https://github.com/ovn-org/ovn-kubernetes/pull/4561 is merged.

Anything else we need to know?

No response

OVN-Kubernetes version

All

Kubernetes version

All

OVN version

```console $ oc rsh -n ovn-kubernetes ovnkube-node-xxxxx (pick any ovnkube-node pod on your cluster) $ rpm -q ovn # paste output here ```

OVS version

```console $ oc rsh -n ovn-kubernetes ovs-node-xxxxx (pick any ovs pod on your cluster) $ rpm -q openvswitch # paste output here ```

Platform

Is it baremetal? GCP? AWS? Azure?

OS version

```console # On Linux: $ cat /etc/os-release # paste output here $ uname -a # paste output here # On Windows: C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture # paste output here ```

Install tools

Container runtime (CRI) and version (if applicable)

github-actions[bot] commented 10 hours ago

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 5 days.