Bug 2244631 - Manual sync misidentifies Octavia OVN Load Balancer health monitor port and deletes metadata port
Summary: Manual sync misidentifies Octavia OVN Load Balancer health monitor port and d...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: python-ovn-octavia-provider
Version: 17.1 (Wallaby)
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: z2
: 17.1
Assignee: Fernando Royo
QA Contact: Omer Schwartz
URL:
Whiteboard:
Depends On:
Blocks: 2245300
TreeView+ depends on / blocked
 
Reported: 2023-10-17 12:46 UTC by Fernando Royo
Modified: 2024-01-16 14:31 UTC (History)
7 users (show)

Fixed In Version: python-ovn-octavia-provider-1.0.3-17.1.20231025110804.d779786.el9ost
Doc Type: Bug Fix
Doc Text:
Before this update, performing a manual OVN DB sync while the OVN metadata and the OVN LB health monitor ports were present in the same environment caused the OVN DB sync to delete one of the ports. If the OVN metadata port was deleted, you lost communication with the VMs. With this update, a manual OVN DB sync does not delete one of the ports because the OVN-provider uses the `ovn-lb-hm:distributed` value for the `device_owner` parameter. OVN provider updates existing OVN LB Health Monitor ports to the `ovn-lb-hm:distributed` value.
Clone Of:
: 2245300 (view as bug list)
Environment:
Last Closed: 2024-01-16 14:31:26 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Launchpad 2038091 0 None None None 2023-10-17 12:48:34 UTC
OpenStack gerrit 897345 0 None MERGED Add constant to identify OVN LB HM ports 2023-10-17 12:49:45 UTC
OpenStack gerrit 897348 0 None MERGED Change device_owner used for OVN LB HM port 2023-10-23 09:27:10 UTC
OpenStack gerrit 898535 0 None MERGED Add maintenance task to update entities on component start 2023-10-23 09:27:12 UTC
Red Hat Issue Tracker OSP-29798 0 None None None 2023-10-17 12:48:05 UTC
Red Hat Product Errata RHBA-2024:0209 0 None None None 2024-01-16 14:31:29 UTC

Description Fernando Royo 2023-10-17 12:46:55 UTC
Description of problem:
Doing manual ovn sync:
neutron-ovn-db-sync-util --config-file=/etc/neutron/neutron.conf --config-file=/etc/neutron/plugins/ml2/ml2_conf.ini --ovn-neutron_sync_mode repair

Misidentifies Octavia OVN Load Balancer Health Monitor Port and Deletes Metadata Port:

47:2023-09-28 13:22:29.565 2053 WARNING neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.ovn_db_sync [req-b037dd97-5936-4981-b0be-d4c88c6e806d - - - - -] Unnecessary DHCP port 77cc790a-1712-4fc2-b184-918842588a06 for network dd8dbcd7-0f6f-424f-aa2e-256630af44fd found in Neutron
48:2023-09-28 13:22:29.565 2053 WARNING neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.ovn_db_sync [req-b037dd97-5936-4981-b0be-d4c88c6e806d - - - - -] Deleting unnecessary DHCP port 77cc790a-1712-4fc2-b184-918842588a06 for network dd8dbcd7-0f6f-424f-aa2e-256630af44fd

OVN LB health monitor port got .3 IP, and metadata uses it now as its port:

ip netns exec ovnmeta-dd8dbcd7-0f6f-424f-aa2e-256630af44fd ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: tapdd8dbcd7-01@if2868: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether fa:16:3e:c9:12:45 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet 169.254.169.254/32 brd 169.254.169.254 scope global tapdd8dbcd7-01
       valid_lft forever preferred_lft forever
    inet 192.168.100.3/24 brd 192.168.100.255 scope global tapdd8dbcd7-01
       valid_lft forever preferred_lft forever

openstack port show ovn-lb-hm-b7383d04-9220-48cd-bac9-3e2c53ad2d5f
+-------------------------+------------------------------------------------------------------------------+
| Field | Value |
+-------------------------+------------------------------------------------------------------------------+
| admin_state_up | UP |
| allowed_address_pairs | |
| binding_host_id | |
| binding_profile | |
| binding_vif_details | |
| binding_vif_type | unbound |
| binding_vnic_type | normal |
| created_at | 2023-09-14T12:30:30Z |
| data_plane_status | None |
| description | |
| device_id | |
| device_owner | network:distributed |
| device_profile | None |
| dns_assignment | None |
| dns_domain | None |
| dns_name | None |
| extra_dhcp_opts | |
| fixed_ips | ip_address='192.168.100.3', subnet_id='b7383d04-9220-48cd-bac9-3e2c53ad2d5f' |
| id | 2831bc8f-60e4-4a44-88e1-f3010cce3cbd |
| ip_allocation | None |
| mac_address | fa:16:3e:c9:12:45 |
| name | ovn-lb-hm-b7383d04-9220-48cd-bac9-3e2c53ad2d5f |
| network_id | dd8dbcd7-0f6f-424f-aa2e-256630af44fd |
| numa_affinity_policy | None |
| port_security_enabled | False |
| project_id | e4529e5a687e4128af2935fb33cfa7c2 |
| propagate_uplink_status | None |
| qos_network_policy_id | None |
| qos_policy_id | None |
| resource_request | None |
| revision_number | 1 |
| security_group_ids | |
| status | DOWN |
| tags | |
| trunk_details | None |
| updated_at | 2023-09-14T12:30:30Z |
+-------------------------+------------------------------------------------------------------------------+

Workaround - removed health monitor, readded manually ovnmeta port, restart metadata agents.

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


How reproducible:
Easily having a OVN LB HM port with device_owner=network:distributed and another ovn-metadata ports.

Steps to Reproduce:
1. Create a OVN LB Health monitor 
2. Run neutron-db-sync tool

Actual results:
OVN-metadata port will dissapear if its uuid is "bigger" than the OVN LB HM port uuid.

Expected results:
OVN metadata and OVN LB HM port are not deleted.

Comment 26 errata-xmlrpc 2024-01-16 14:31:26 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Red Hat OpenStack Platform 17.1.2 bug fix and enhancement advisory), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2024:0209


Note You need to log in before you can comment on or make changes to this bug.