yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #92886
[Bug 2038413] [NEW] [OVN] host id in NB database not updated correctly for virtual ports
Public bug reported:
We're using the ovn-bgp-agent's nb-bgp driver and noticed that while
trying to expose octavia load balancers there were two issues.
1. The neutron:host_id information on the lsp is one step behind the
actual location, while the information from the neutron API _is_
correct.
2. OVN stores the resolved mac address of this virtual port in the
Mac_Binding table, but does not remove it upon move.
Steps to reproduce (on our end at least):
Create 3 ports:
- virtual port (used for VIP)
- internal port 1 - attached to vm1
- internal port 2 - attached to vm2
Then create keepalived config (or just manually assign the vip ip to one
of the internal ports), and send out gratuitous arp replies or ping from
the other vm so there is a normal arp reply so OVN binds the port to the
virtual port.
Then move the VIP from vm1 to vm2 and make sure OVN picks it up (the
virtual parent and/or chassis changes on the vip lsp).
Now neutron will update the information based on events
PortBindingChassisUpdateEvent and PortBindingUpdateVirtualPortsEvent.
Because these are running simultaniously, the chassis update event
updates the information based on neutron database, which might not have
been updated yet by the virtualport event, causing inconsistency in the
OVN db's
We're running OVN 23.09 and Neutron 2023.1, deployed with kolla.
** Affects: neutron
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/2038413
Title:
[OVN] host id in NB database not updated correctly for virtual ports
Status in neutron:
New
Bug description:
We're using the ovn-bgp-agent's nb-bgp driver and noticed that while
trying to expose octavia load balancers there were two issues.
1. The neutron:host_id information on the lsp is one step behind the
actual location, while the information from the neutron API _is_
correct.
2. OVN stores the resolved mac address of this virtual port in the
Mac_Binding table, but does not remove it upon move.
Steps to reproduce (on our end at least):
Create 3 ports:
- virtual port (used for VIP)
- internal port 1 - attached to vm1
- internal port 2 - attached to vm2
Then create keepalived config (or just manually assign the vip ip to
one of the internal ports), and send out gratuitous arp replies or
ping from the other vm so there is a normal arp reply so OVN binds the
port to the virtual port.
Then move the VIP from vm1 to vm2 and make sure OVN picks it up (the
virtual parent and/or chassis changes on the vip lsp).
Now neutron will update the information based on events
PortBindingChassisUpdateEvent and PortBindingUpdateVirtualPortsEvent.
Because these are running simultaniously, the chassis update event
updates the information based on neutron database, which might not
have been updated yet by the virtualport event, causing inconsistency
in the OVN db's
We're running OVN 23.09 and Neutron 2023.1, deployed with kolla.
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/2038413/+subscriptions
Follow ups