Bug 1378200

Summary: Bonding defaults to round robin and should default to a safer mode
Product: Red Hat OpenStack Reporter: joherr
Component: os-net-configAssignee: RHOS Maint <rhos-maint>
Status: CLOSED WONTFIX QA Contact: Shai Revivo <srevivo>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 8.0 (Liberty)CC: dsneddon, hbrock, jcoufal, jslagle, mburns, rhel-osp-director-maint
Target Milestone: ---   
Target Release: 10.0 (Newton)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-10-14 17:27:34 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description joherr 2016-09-21 19:52:16 UTC
Description of problem:
When doing linux bonding and specifying the bonding mode under BondingOptions in the heat template. If this line contains a syntax error, the default bond set up on the overcloud node defaults to balance-roundrobin.

This causes switch issues since this bonding mode requires special switch configuration.

This may be a default behaviour of the RHEL 7 operating system.


Version-Release number of selected component (if applicable):
OSP 8.

How reproducible:
Everytime

Steps to Reproduce:
1. Edit a node template yaml file and create a bond
2. set bonding_options to an value with a syntactical error in it such as "mode=active-backup,miimon=100" instead of "mode=active miimon=100"



Actual results:
A bond is created with the value specified by bonding_options, but the running bond is a round robin bond instead as reported by /proc/net/bonding/*

Expected results:
Should default to a safer bonding mode such as active-passive that requires no special switch configuration.

Additional info:

Comment 2 Dan Sneddon 2016-10-14 17:27:34 UTC
There really isn't much we can do here, since the problem occurs in the network initscripts (the default bonding method is built-in to the bonding driver in the kernel).

Picking a different default bonding mode when a syntax error occurs is likely to lead to silent configuration of the wrong settings, leading to troubleshooting problems.

I would rather the deployment fail if the bonding mode wasn't recognized. It would be better to fail with a warning if the bond mode wasn't formatted correctly. Perhaps this could be addressed in tripleo-validations, but this bug can't be implemented as requested.