summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicholas Randon <nicholas.randon@hp.com>2014-07-31 12:46:20 +0100
committerNicholas Randon <nicholas.randon@hp.com>2014-07-31 13:39:00 +0000
commit998c5dda9c6d3ddf0f654c71d4c172b7b6dd3e59 (patch)
treeca342a413eb2d75d231e163ae1469f426a88777f
parent8e462c756ebf20bd39885ba64b80af0bcf49a73e (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.yaml4
-rw-r--r--overcloud-source.yaml1
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}