Bug 1572367

Summary: Update to nic settings not reflected in overcloud
Product: Red Hat OpenStack Reporter: Wojciech Dec <wdec>
Component: rhosp-directorAssignee: RHOS Maint <rhos-maint>
Status: CLOSED NOTABUG QA Contact: Amit Ugol <augol>
Severity: high Docs Contact:
Priority: unspecified    
Version: 12.0 (Pike)CC: bfournie, dbecker, emacchi, mburns, morazi, wdec
Target Milestone: ---   
Target Release: ---   
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: 2018-05-07 12:34:18 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:
Embargoed:

Description Wojciech Dec 2018-04-26 20:16:00 UTC
Description of problem:
On an active overcloud deployment, changes to the nic-template settings on the director are not reflected on the overcloud nodes. The original configuration continues to be pushed out.
Changes to the nic-template settings requires a deletion and redeployment of the overcloud to become effective, which is severely disruptive. Any changes to the network settings


Version-Release number of selected component (if applicable):
This was observed with both OSPD10 and OSPD13

How reproducible:

Easily


Steps to Reproduce:
1. Start with default nic-template (templates/nic-configs/controller.yaml) suitable for the deployment and deploy the overcloud.
2. Modify the compute or controller nic-template on the director node, eg 
change the name of the bridge or the host interface to bridge association
3. Run the deployment update

Actual results:
/etc/os-net-config/element_config.json (OSPD12) or cat /etc/os-net-config/config.json (OSPD10) both contain the same info as pushed in step 1, after step 3.

Expected results:
the os-net-config json config should be updated to the latest.

Additional info:
We have also tried deleting the json config file on the overcloud nodes, but the same, not updated one keeps on being pushed back.

Comment 1 Bob Fournier 2018-05-04 21:05:58 UTC
By default network changes take place on the initial deployment.  In order to force network changes on a redeploy you need to set the following:

NetworkDeploymentActions: ['CREATE','UPDATE']

in the parameters_default section of a local network-environment.yaml file. 

By default the redeploy does not have the UPDATE flag set and will not update the network settings.

Comment 2 Wojciech Dec 2018-05-07 10:33:04 UTC
Thanks. With the new setting I'm seeing the update propagate.
How about adding it as default setting in the templates?

Comment 3 Bob Fournier 2018-05-07 12:34:18 UTC
Great, thanks for testing. Network updates are disabled by default to avoid issues that may arise from network reconfiguration.  For example, when adding an additional compute node we don't want to affect networking to the existing nodes.  It must be set to UPDATE when network updates are required.