Description of problem: Customer has a OSP 7.0 environment they are attempting to upgrade to OSP 7.2. When they initially dpeloyed the cluster, it had OVS bonds on the overcloud nodes. Customer proceeded to manually upgrade os-net-config on the overcloud nodes to the version that supports linux bonds. They then manually changed the bond interfaces on the overcloud nodes to linux bonds. They also updated their templates to reflect this change. Now when customer goes to run an openstack update command: openstack overcloud deploy --templates /home/stack/templates --control-flavor control --compute-flavor compute --control-scale 3 --compute-scale 23 --ceph-storage-scale 0 --neutron-disable-tunneling --neutron-network-type vlan --neutron-network-vlan-ranges 'datacentre:2000:2500,datacentre:102:102' -e /home/stack/network-environment.yaml -e --debug --libvirt-type kvm --ntp-server 1.1.1.1 -e /home/stack/overcloud-dev.yaml The linux bonds are being reverted back to ovs bonds. Version-Release number of selected component (if applicable): How reproducible:100% Steps to Reproduce: 1.See Description 2. 3. Actual results: OVS bonds configured Expected results: Linux bonds left in place Additional info:
So, I think this is because NetworkDeploymentActions defaults to run os-net-config only on CREATE: https://github.com/openstack/tripleo-heat-templates/blob/master/puppet/controller.yaml#L737 This default was chosen because some issues with pacemaker were observed in some circumstances when you start bouncing nic's on update, so it wasn't safe to always apply nic config changes on update. The net result of this is that on update, even if you've changed the templates, os-net-config will run with the old values. So, there's probably two possible solutions: 1. Pass an environment file which sets NetworkDeploymentActions to ['CREATE', 'UPDATE'] instead of only 'CREATE' 2. Stop os-net-config running on update after the initial deployment, so the nic configuration can be manually modified on the already deployed nodes. I'd suggest testing carefully in either case to ensure pacemaker doesn't see the network reconfiguration as a node outage.