Bug 1966443 - [RFE] ovs_options and bonding_options are both using BondInterfaceOvsOptions
Summary: [RFE] ovs_options and bonding_options are both using BondInterfaceOvsOptions
Keywords:
Status: NEW
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 16.1 (Train)
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ---
: ---
Assignee: Dan Sneddon
QA Contact: Joe H. Rahme
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-06-01 08:10 UTC by Joachim von Thadden
Modified: 2023-07-12 16:12 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker OSP-4322 0 None None None 2022-01-18 22:06:49 UTC

Description Joachim von Thadden 2021-06-01 08:10:35 UTC
Description of problem:
We are using 2 different parameters ovs_options and bonding_options for ovs bond and linux bonds. So far so good. In our templates we fill those params with a single variable BondInterfaceOvsOptions, whether it's for ovs or for linux bonds. But the options for the 2 types of bonds are different, e.g.

for OVS:
  bond_mode=active-backup

for Linux bond:
  mode=active-backup

This is a problem for environments with both, linux and ovs bonds. In /usr/share/openstack-tripleo-heat-templates/network/config/bond-with-vlans/role.role.j2.yaml we see:

$ grep -C2 "ovs_options\|bonding_options" /usr/share/openstack-tripleo-heat-templates/network/config/bond-with-vlans/role.role.j2.yaml 
  BondInterfaceOvsOptions:
    default: bond_mode=active-backup
    description: 'The ovs_options or bonding_options string for the bond
      interface. Set things like lacp=active and/or bond_mode=balance-slb
      for OVS bonds or like mode=4 for Linux bonds using this option.'
--
                  mtu:
                    get_attr: [MinViableMtu, value]
                  ovs_options:
                    get_param: BondInterfaceOvsOptions
                  members:
--
                mtu:
                  get_attr: [MinViableMtu, value]
                bonding_options:
                  get_param: BondInterfaceOvsOptions
                use_dhcp: false

I would suggest a different variable BondInterfaceLinuxOptions to be used everywhere were we are using Linux bonds.


Version-Release number of selected component (if applicable):
I think it's in there since OSP12 or so?

How reproducible:
always

Steps to Reproduce:
1. create an env with ovs and linux bond
2. try to set different parameters for both of them


Actual results:
you have to define a new parameter e.g. BondInterfaceLinuxOptions by your own and set it in nic configs accordingly

Expected results:
BondInterfaceOvsOptions and BondInterfaceLinuxOptions are differentiated in the first place in our environment and jinja files.

Comment 1 Steve Baker 2021-06-01 20:15:49 UTC
Could you please describe the use case for having both ovs and linux bonds? I've also assigned this to Dan for some input, and flagged this as a feature request.

Comment 2 Joachim von Thadden 2021-06-02 11:08:52 UTC
Good question. You might have cases where you have linux bonds in one node and ovs bonds in the other - but only one parameter.

Comment 3 pweeks 2022-01-18 21:55:03 UTC
Moving to networking for triage and prioritization.


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