Bug 1930161 - Add ovs/igmp_snooping_enable support
Summary: Add ovs/igmp_snooping_enable support
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: puppet-neutron
Version: 13.0 (Queens)
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: z16
: 13.0 (Queens)
Assignee: Bernard Cafarelli
QA Contact: nlevinki
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-02-18 12:28 UTC by Miguel Angel Nieto
Modified: 2022-08-26 15:34 UTC (History)
9 users (show)

Fixed In Version: puppet-neutron-12.4.1-15.el7ost
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-06-16 10:58:58 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 773375 0 None MERGED Add ovs/igmp_snooping_enable support 2021-03-10 15:25:42 UTC
Red Hat Issue Tracker OSP-1945 0 None None None 2022-08-26 15:34:01 UTC
Red Hat Product Errata RHBA-2021:2385 0 None None None 2021-06-16 10:59:29 UTC

Description Miguel Angel Nieto 2021-02-18 12:28:04 UTC
Description of problem:
We are configuring the following parameters in our templates for our role ComputeOvsDpdkSriov:

  ComputeOvsDpdkSriovExtraConfig:
    neutron::agents::ml2::ovs::igmp_snooping_enable: true
    neutron::agents::ml2::ovs::other_config:mcast-snooping-disable-flood-unregistered: true

But I can see that parameters are not applied:
[heat-admin@computeovsdpdksriov-1 ~]$ cat /var/lib/config-data/puppet-generated/neutron/etc/neutron/plugins/ml2/openvswitch_agent.ini

[ovs]
bridge_mappings=access:br-access,dpdk-mgmt:br-link0,dpdk-data0:br-dpdk0,dpdk-data1:br-dpdk1,sriov-1:br-sriov1,sriov-2:br-sriov2
integration_bridge=br-int
datapath_type=netdev
vhostuser_socket_dir=/var/lib/vhost_sockets
tunnel_bridge=br-tun
local_ip=10.10.166.139

[agent]
l2_population=False
arp_responder=False
enable_distributed_routing=False
drop_flows_on_start=False
extensions=qos
tunnel_csum=False
tunnel_types=vxlan
vxlan_udp_port=4789

[securitygroup]
firewall_driver=openvswitch


Templates are found in the following url: https://gitlab.cee.redhat.com/mnietoji/deployment_templates/-/tree/b5b366f5257c973457b3127b60824c7d69eb3da6/ospd-13-vxlan-dpdk-sriov-ctlplane-dataplane-bonding-hybrid-panther06



Version-Release number of selected component (if applicable):
[stack@undercloud-0 ~]$ cat core_puddle_version 
2021-01-20.1[stack@undercloud-0 ~]$ 

How reproducible:
Deploy in osp13 with the following parameters:
  ComputeOvsDpdkSriovExtraConfig:
    neutron::agents::ml2::ovs::igmp_snooping_enable: true
    neutron::agents::ml2::ovs::other_config:mcast-snooping-disable-flood-unregistered: true

Check /var/lib/config-data/puppet-generated/neutron/etc/neutron/plugins/ml2/openvswitch_agent.ini to check if parameters are configured properly


Actual results:
Parameters in {{RoleName}}ExtraConfig are ignored


Expected results:
Parameters in {{RoleName}}ExtraConfig should been configured

Additional info:

Comment 2 Alex Schultz 2021-02-18 14:46:16 UTC
Since ExtraConfig is used a lot of places this is likely the missing patch from puppet-neutron. Kicking over to Networking to look into the deployment as it's specifically related to a patch they've only landed last week.  https://review.opendev.org/c/openstack/puppet-neutron/+/773375  You should check the hieradata directory to see if these values are being applied to the system from a Deployment standpoint. The application in the configuration requires that the puppet code understands these extra parameters.  grep igmp_snooping /etc/puppet/hieradata/*

Comment 3 Alex Schultz 2021-02-18 14:47:35 UTC
Also "neutron::agents::ml2::ovs::other_config:mcast-snooping-disable-flood-unregistered: true" is bad.  If this is a dict it should be:


    neutron::agents::ml2::ovs::other_config:
      mcast-snooping-disable-flood-unregistered: true

Comment 4 Rodolfo Alonso 2021-02-23 11:31:55 UTC
Hello:

"neutron::agents::ml2::ovs::other_config:mcast-snooping-disable-flood-unregistered" is not a configuration variable in the Neutron configuration manifest.

Since [1], "igmp_snooping_enable" is available upstream. If needed, this patch can be backported to OSP13. "igmp_snooping_enable" config parameter will set the OVS "mcast-snooping-disable-flood-unregistered" config one.

Regards.

[1]https://review.opendev.org/c/openstack/puppet-neutron/+/773375

Comment 16 Miguel Angel Nieto 2021-05-31 09:35:46 UTC
I verified it using these templates:
https://gitlab.cee.redhat.com/mnietoji/deployment_templates/-/blob/e28bfa62f2ba9a8a17adb504fd502b3135bbf81c/tht/ospd-13-vxlan-dpdk-sriov-ctlplane-dataplane-bonding-lacp-igmp-hybrid/network-environment-overrides.yaml

which contains:
  ComputeOvsDpdkSriovExtraConfig:
    neutron::agents::ml2::ovs::igmp_snooping_enable: true

Used version:
puppet-neutron-12.4.1-15.el7ost.noarch
puddle: 2021-05-13.1

Now it is possible to configure igmp:
[root@computeovsdpdksriov-0 heat-admin]# ovs-vsctl list bridge br-int
_uuid               : 4abbe7b1-dc98-47ce-a724-a61f55883160
auto_attach         : []
controller          : [c4de36f1-cb7c-4f86-8c9d-cdc7b1b120f0]
datapath_id         : "0000b2e7bb4ace47"
datapath_type       : netdev
datapath_version    : "<built-in>"
external_ids        : {}
fail_mode           : secure
flood_vlans         : []
flow_tables         : {}
ipfix               : []
mcast_snooping_enable: true
mirrors             : []
name                : br-int
netflow             : []
other_config        : {mac-table-size="50000", mcast-snooping-disable-flood-unregistered=True}
ports               : [2595acb1-15bb-4d31-ac82-f6103bb63ce9, 3daef19e-8bfb-4723-938e-8819ed909c43, 3f96f73c-cbea-44b9-b94c-cb660020bb3b, 837e1d61-df23-4877-8be3-21885c4e344a, 8b9a4b40-8341-4c32-aef1-adebc55a2371, 8bbe268e-a1b6-4c8f-bcb7-639aa0c0e84b, 921e763a-0f8a-415f-b534-4568c696d26a, 9494452a-5758-44d7-aa74-fdb3bf529679, a1a9bd20-e5b2-43ad-90c3-52eb04550151, be7cfc60-538f-4ad0-ac92-ae9220a66337, bf1adbb7-2222-444a-9ded-4f0cdb4f7ffb, da9b1545-e0ea-4390-9258-e4c9062d3a0e, dc3c2850-7e9e-47cf-9b9f-568832523480]
protocols           : ["OpenFlow10", "OpenFlow11", "OpenFlow12", "OpenFlow13", "OpenFlow14"]
rstp_enable         : false
rstp_status         : {}
sflow               : []
status              : {}
stp_enable          : false

Comment 20 errata-xmlrpc 2021-06-16 10:58:58 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 13.0 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-2021:2385


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