Bug 1830734

Summary: OVN/DVR inbound Traffic to VIP flows through controllers after VM creation until VM is rebooted
Product: Red Hat OpenStack Reporter: Andreas Karis <akaris>
Component: openstack-neutronAssignee: Jakub Libosvar <jlibosva>
Status: CLOSED EOL QA Contact: Eran Kuris <ekuris>
Severity: high Docs Contact:
Priority: high    
Version: 16.0 (Train)CC: amuller, bhaley, chrisw, ekuris, jlibosva, lmartins, pkundal, ralonsoh, scohen, stchen, svigan
Target Milestone: ---Keywords: Triaged, ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1789836 Environment:
Last Closed: 2020-11-04 19:50:12 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1789836, 1839717, 1839811    
Bug Blocks:    

Comment 1 Andreas Karis 2020-05-03 14:57:47 UTC
Same issue in OSP 16.0:

()[neutron@overcloud-controller-0 /]$ rpm -ql python3-networking-ovn-7.1.0-0.20200204065607.57ac389.el8ost.noarch | grep ovn_client.py
/usr/lib/python3.6/site-packages/networking_ovn/common/ovn_client.py
()[neutron@overcloud-controller-0 /]$ vi /usr/lib/python3.6/site-packages/networking_ovn/common/ovn_client.py
()[neutron@overcloud-controller-0 /]$ grep 'self._nb_idl.lsp_get_up(floatingip['port_id']).execut' /usr/lib/python3.6/site-packages/networking_ovn/common/ovn_client.py -C10
()[neutron@overcloud-controller-0 /]$ grep 'self._nb_idl.lsp_get_up' /usr/lib/python3.6/site-packages/networking_ovn/common/ovn_client.py -C10
            ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY: gw_lrouter_name}
        columns = {'type': 'dnat_and_snat',
                   'logical_ip': floatingip['fixed_ip_address'],
                   'external_ip': floatingip['floating_ip_address']}

        if config.is_ovn_distributed_floating_ip():
            port = self._plugin.get_port(
                context, fip_db['floating_port_id'])
            columns['logical_port'] = floatingip['port_id']
            ext_ids[ovn_const.OVN_FIP_EXT_MAC_KEY] = port['mac_address']
            if self._nb_idl.lsp_get_up(floatingip['port_id']).execute():
                port_net = self._plugin.get_network(context,
                                                    port['network_id'])
                if port_net.get(pnet.NETWORK_TYPE) != const.TYPE_VLAN:
                    columns['external_mac'] = port['mac_address']

        # TODO(dalvarez): remove this check once the minimum OVS required
        # version contains the column (when OVS 2.8.2 is released).
        if self._nb_idl.is_col_present('NAT', 'external_ids'):
            columns['external_ids'] = ext_ids

Comment 2 Jakub Libosvar 2020-06-11 08:58:11 UTC
I originally wanted to fix networking-ovn to make traffic centralized even after the reboot [1] but I think this is actually a problem in configuration that will be fixed by bug 1766930.

Andreas, are you fine closing this BZ as a dup of 1766930 ?

[1] https://github.com/cubeek/neutron/commit/7393cccf12d4d48f0391522e8d1e2959f7d0604e

Comment 3 Andreas Karis 2020-09-27 08:21:47 UTC
Sorry for the long delay. https://bugzilla.redhat.com/show_bug.cgi?id=1789836 is closed. Shouldn't this bug be fixed then, too?

Comment 5 stchen 2020-11-04 19:50:12 UTC
Closing EOL, OSP 16.0 has been retired as of Oct 27, 2020