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.
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
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.