yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #93313
[Bug 2038413] Re: [OVN] host id in NB database not updated correctly for virtual ports
Reviewed: https://review.opendev.org/c/openstack/neutron/+/896883
Committed: https://opendev.org/openstack/neutron/commit/e68a920c114010a36a667d90866bfb6243148b6d
Submitter: "Zuul (22348)"
Branch: master
commit e68a920c114010a36a667d90866bfb6243148b6d
Author: Michel Nederlof <mnederlof@xxxxxxxxxxxx>
Date: Wed Oct 4 09:31:50 2023 +0200
[OVN] Update lsp host id when virtual parent moves
When a virtual port is moved from one port to another port the
PortBindingUpdateVirtualPortsEvent event would only update the binding
host id in the neutron database, while it is also usefull to keep the
information in the OVN database up to date with the host information
Other plugins that connect to the OVN database can then also rely on the
information stored in the OVN DB's
Closes-Bug: #2038413
Change-Id: I59c6c4b2c8b023b9c9c3bab1741d957fa1f738fc
** Changed in: neutron
Status: In Progress => Fix Released
--
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:
Fix Released
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. -> addressed in
issue https://bugs.launchpad.net/neutron/+bug/2038422
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
References