Bug 1308733 - Changed nics-config/{control,compute}.yaml files to use linux_bond instead of ovs_bond
Summary: Changed nics-config/{control,compute}.yaml files to use linux_bond instead of...
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: os-net-config
Version: 7.0 (Kilo)
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
: 10.0 (Newton)
Assignee: RHOS Maint
QA Contact: Shai Revivo
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-02-15 21:54 UTC by David Hill
Modified: 2019-10-10 11:12 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-10-17 09:47:21 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description David Hill 2016-02-15 21:54:54 UTC
Description of problem:
Changed nics-config/{control,compute}.yaml files to use linux_bond instead of ovs_bond but when running "openstack overcloud update", everything is rolled back to ovs_bond even though we manually configured the computes/controllers to use linux_bond.

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


How reproducible:
Everytime

Steps to Reproduce:
1. Change the yaml definitions to use linux_bond instead of ovs_bond
2. Manually destroyed ovs-bond from all servers
3. Manually recreated them with linux_bonds
4. Run openstack overcloud update with -e of new compute and controllers
5. Everything was reverted to ovs-bond

Actual results:
Applied old templates

Expected results:
Applied new templates


Additional info:

Comment 1 Dan Sneddon 2016-02-15 22:05:32 UTC
The issue here is handling a situation where the os-net-config template defines a bond, but there is an existing bond.

If you first deploy os-net-config with this:

network_config:
  -
    type: ovs_bond
    name: bond0
    use_dhcp: false
    ovs_options: "bond_mode=balance-tcp lacp=active other-config:lacp-fallback-ab=true"
    addresses:
      -
        ip_netmask: 192.168.1.10
    members:
      -
        type: interface
        name: eth1
        primary: true
      -
        type: interface
        name: nic2

But then change your configuration to this:

network_config:
  -
    type: linux_bond
    name: bond0
    use_dhcp: false
    bonding_options: "mode=4"
    addresses:
      -
        ip_netmask: 192.168.1.10
    members:
      -
        type: interface
        name: eth1
        primary: true
      -
        type: interface
        name: nic2

The old bond reportedly still exists as far as OVS is concerned. This has so far only been observed in OpenStack deployments, but I am going to try testing with os-net-config to see if I can reproduce.

Comment 6 Mike Burns 2016-04-07 21:11:06 UTC
This bug did not make the OSP 8.0 release.  It is being deferred to OSP 10.

Comment 8 Dan Sneddon 2016-10-17 09:47:21 UTC
The network config still defines an OVS bond. This is probably because network actions are only configured for CREATE actions on a stack, not UPDATE.

To deploy a new network config during a stack update, be sure to set the NetworkDeploymentActions to CREATE,UPDATE. This can be done for a single update by including an environment file one time with this content:

parameter_defaults:
  NetworkDeploymentActions: ['CREATE','UPDATE']


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