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

the annotaion k8s.ovn.org/bridge-egress-ips does not update correctly when egress ip assignment has changed

XMLWordPrintable

    • Quality / Stability / Reliability
    • False
    • Hide

      None

      Show
      None
    • None
    • Moderate
    • No
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description of problem:

      on openstack, config egress ip exceeding the capacity, then reboot the egress node, the annotaion k8s.ovn.org/bridge-egress-ips does not update correctly when egress ip assignment has changed 

       

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

      4.21.0-0.nightly-2025-10-23-225733, 4.20.0-0.nightly-2025-10-22-141500 

       

      How reproducible:

      always
      

       

      Steps to Reproduce:

      1. label one node with k8s.ovn.org/egress-assignable=""
      % oc label node/qiowang-osp3-3-trl8b-worker-0-9rdbp  k8s.ovn.org/egress-assignable=""
      node/qiowang-osp3-3-trl8b-worker-0-9rdbp labeled
      
      
      2. create 15 egress ips, exceeding the capacity 8 
      % oc apply -f egressips.yaml
      % oc get egressip
      NAME              EGRESSIPS      ASSIGNED NODE                         ASSIGNED EGRESSIPS
      egressip-test1    192.168.0.51   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.51
      egressip-test10   192.168.0.60                                         
      egressip-test11   192.168.0.61                                         
      egressip-test12   192.168.0.62                                         
      egressip-test13   192.168.0.63                                         
      egressip-test14   192.168.0.64                                         
      egressip-test15   192.168.0.65                                         
      egressip-test2    192.168.0.52   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.52
      egressip-test3    192.168.0.53   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.53
      egressip-test4    192.168.0.54   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.54
      egressip-test5    192.168.0.55   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.55
      egressip-test6    192.168.0.56   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.56
      egressip-test7    192.168.0.57   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.57
      egressip-test8    192.168.0.58   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.58
      egressip-test9    192.168.0.59        
      
      
      
      3. check the annotation k8s.ovn.org/bridge-egress-ips, it shows the 8 egress ips assigned to the node
      % oc get node/qiowang-osp3-3-trl8b-worker-0-9rdbp -oyaml | grep egress
          cloud.network.openshift.io/egress-ipconfig: '[{"interface":"cdd322db-b5bb-47da-9f22-5227c8137f3e","ifaddr":{"ipv4":"192.168.0.0/18"},"capacity":{"ip":8}}]'
          k8s.ovn.org/bridge-egress-ips: '["192.168.0.54","192.168.0.55","192.168.0.57","192.168.0.58","192.168.0.56","192.168.0.53","192.168.0.51","192.168.0.52"]'
      
      
      4. reboot the node
      
      
      5. after the node back to Ready, we can see some egress ips previously assigned to the node are unassigned now, like egressip-test3(192.168.0.53), and some other egress ips are assigned to the node, like egressip-test10(192.168.0.60)
      % oc get egressip                                                     
      NAME              EGRESSIPS      ASSIGNED NODE                         ASSIGNED EGRESSIPS
      egressip-test1    192.168.0.51   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.51
      egressip-test10   192.168.0.60   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.60
      egressip-test11   192.168.0.61   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.61
      egressip-test12   192.168.0.62   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.62
      egressip-test13   192.168.0.63   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.63
      egressip-test14   192.168.0.64   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.64
      egressip-test15   192.168.0.65   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.65
      egressip-test2    192.168.0.52   qiowang-osp3-3-trl8b-worker-0-9rdbp   192.168.0.52
      egressip-test3    192.168.0.53                                         
      egressip-test4    192.168.0.54                                         
      egressip-test5    192.168.0.55                                         
      egressip-test6    192.168.0.56                                         
      egressip-test7    192.168.0.57                                         
      egressip-test8    192.168.0.58                                         
      egressip-test9    192.168.0.59 
      
      
      6. check the annotation k8s.ovn.org/bridge-egress-ips on the node 

       

      Actual results:

      the annotation does not update correctly when egress ip assignment has changed, the previously assigned egress ips are still shown here:
      
      
      % oc get node/qiowang-osp3-3-trl8b-worker-0-9rdbp -oyaml | grep egress
          cloud.network.openshift.io/egress-ipconfig: '[{"interface":"cdd322db-b5bb-47da-9f22-5227c8137f3e","ifaddr":{"ipv4":"192.168.0.0/18"},"capacity":{"ip":5}}]'
          k8s.ovn.org/bridge-egress-ips: '["192.168.0.62","192.168.0.63","192.168.0.64","192.168.0.60","192.168.0.55","192.168.0.65","192.168.0.51","192.168.0.53","192.168.0.57","192.168.0.54","192.168.0.58","192.168.0.61","192.168.0.52","192.168.0.56"]' 
      
      
      p.s. the capacity is also incorrect, there is another bug follows the issue, so let's ignore it here 

      Expected results:

      the annotation should be update correctly if egress ip assignment has changed 

              bbennett@redhat.com Ben Bennett
              rh-ee-qiowang Qiong Wang
              None
              None
              Qiong Wang Qiong Wang
              None
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: