Splinters coudn't be enabled on per node basis

Bug #1262342 reported by Aleksandr Shaposhnikov
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Confirmed
Undecided
Unassigned

Bug Description

Splinters couldn't be enabled on per node basis. Basically if environment was created with splinters checkbox clean then there is no way to enable them on particular node. Changing "auto" to "true"/true or "on"/on and changing it common area of node yaml file doesn't affect installation so splinters will not be enabled.

Revision history for this message
Aleksandr Shaposhnikov (alashai8) wrote :

Tried to deploy with splinters enabled (in UI) on mixed environment (some nodes have NIC that works without splinters and some not) . After the deployment splinters WASN'T enabled anywhere.
If I go and deploy cloud with using of splinters on environment that consists of non-supported hardware (splinters should be enabled) with ovs_splinter_enabled option turned on, then everything is fine and splinters got enabled on NICs.

Revision history for this message
Aleksandr Shaposhnikov (alashai8) wrote :

Looks like I found what is the issue. This behavior is only occurs when additional transformation was used that includes creating of bonded interfaces. Probably by some reason if interface participating in bond then ovs enable splinters command not applied.

Revision history for this message
Aleksandr Shaposhnikov (alashai8) wrote :

Quick look over the code give me strong impression that bonded interfaces doesn't support using of splinters on bond slaves at all. Easiest way to implement is to add additional parameter "vlan_splinters" to bond creation/transformation procedure in l2_ovs_bond type, and the following lines to l2_ovs_bond function:

        for inter in @resource[:interfaces]
        vsctl('--', "set", "Interface", inter.to_s , "other-config:enable-vlan-splinters=true")
        end

That is the easiest way but kinda copy'n'paste looks not so good. Better to granulate vlan-splinters enabling function and call it BEFORE any transformations and execute it on each required interface because this functions shouldn't be affected by role in which these interfaces used for.

Mike Scherbakov (mihgen)
Changed in fuel:
milestone: none → 4.1
Changed in fuel:
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.