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:
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.
This bug did not make the OSP 8.0 release. It is being deferred to OSP 10.
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']