diff options
author | Nicholas Randon <nicholas.randon@hp.com> | 2014-07-31 12:46:20 +0100 |
---|---|---|
committer | Nicholas Randon <nicholas.randon@hp.com> | 2014-07-31 13:39:00 +0000 |
commit | 998c5dda9c6d3ddf0f654c71d4c172b7b6dd3e59 (patch) | |
tree | ca342a413eb2d75d231e163ae1469f426a88777f | |
parent | 8e462c756ebf20bd39885ba64b80af0bcf49a73e (diff) |
Add strict dependencies to the overcloud template
Currently there is very weak (no) ordering of StructuredDeployments during
heat stack creation (and, importantly, update) on the overcloud. This can
cause the deployment which sends the completion signal back to Heat to
happen before all others have completed, which in turn leads Heat to state
the stack is ready while ORC is still configuring services
The only workaround to this is to wait an unknown amount of time after the
heat stack completes before the system is usable.
This patch prevents the completion signal from being returned early, by
ensuring these are strictly ordered:
controller0Deploy
controller0Passthrough
controller0AllNodesDeploy
NovaCompute0Deploy
NovaCompute0Passthrough
NovaCompute0AllNodesDeploy
Change-Id: I0a549370b7aca55b1145de521ad51218428deaf5
-rw-r--r-- | nova-compute-instance.yaml | 4 | ||||
-rw-r--r-- | overcloud-source.yaml | 1 |
2 files changed, 4 insertions, 1 deletions
diff --git a/nova-compute-instance.yaml b/nova-compute-instance.yaml index baa20e29..baf781df 100644 --- a/nova-compute-instance.yaml +++ b/nova-compute-instance.yaml @@ -181,7 +181,7 @@ Resources: - network: ctlplane user_data_format: SOFTWARE_CONFIG NovaCompute0Deploy: - DependsOn: [controller0Deployment] + DependsOn: [controller0AllNodes] Type: OS::Heat::StructuredDeployment Properties: signal_transport: NO_SIGNAL @@ -225,11 +225,13 @@ Resources: live_update_image_id: {Ref: LiveUpdateComputeImage} ntp_server: {Ref: NtpServer} NovaCompute0AllNodesDeploy: + DependsOn: [NovaCompute0Passthrough] Type: OS::Heat::StructuredDeployment Properties: config: {Ref: AllNodesConfig} server: {Ref: NovaCompute0} NovaCompute0Passthrough: + DependsOn: [NovaCompute0Deploy] Type: OS::Heat::StructuredDeployment Properties: config: {Ref: NovaComputePassthrough} diff --git a/overcloud-source.yaml b/overcloud-source.yaml index 28d66caf..b8216cd9 100644 --- a/overcloud-source.yaml +++ b/overcloud-source.yaml @@ -617,6 +617,7 @@ Resources: - network: ctlplane user_data_format: SOFTWARE_CONFIG controller0AllNodes: + DependsOn: [controller0Deployment,controller0SSLDeployment,controller0Swift,controller0Passthrough] Type: OS::Heat::StructuredDeployment Properties: config: {Ref: allNodesConfig} |