aboutsummaryrefslogtreecommitdiffstats
path: root/puppet
diff options
context:
space:
mode:
authorDan Prince <dprince@redhat.com>2015-02-12 21:54:57 -0500
committerGiulio Fidente <gfidente@redhat.com>2015-02-13 06:11:12 -0500
commitb639d3c7c28b6913da997b823452f33b9bd721c8 (patch)
treed72210a491662cdda844260c41c6fb1f9b6a9fc5 /puppet
parentf98f2bdf4d2a0b78494c96627d8da47b92491ce1 (diff)
Split out allNodesConfig SoftwareConfig
This patch splits out the allNodesConfig config such that alternate implementation (puppet for example) can implement their own SoftwareConfig's via a nested stack. This is controlled by the standard overcloud heat environment. For os-apply-config deployments the implementation should work the same as before. For puppet deployments the implementation uses hiera metadata to configure rabbit_nodes. The puppet deployment doesn't support hosts, or freeform sysctl metadata yet so those are the same for now as well. Change-Id: I34ae30b1f37aca8b39586f7e350511462d66f694
Diffstat (limited to 'puppet')
-rw-r--r--puppet/all-nodes-config.yaml60
-rw-r--r--puppet/controller-puppet.yaml1
2 files changed, 61 insertions, 0 deletions
diff --git a/puppet/all-nodes-config.yaml b/puppet/all-nodes-config.yaml
new file mode 100644
index 00000000..c5193e71
--- /dev/null
+++ b/puppet/all-nodes-config.yaml
@@ -0,0 +1,60 @@
+heat_template_version: 2014-10-16
+description: 'All Nodes Config for Puppet'
+
+parameters:
+ compute_hosts:
+ type: comma_delimited_list
+ controller_hosts:
+ type: comma_delimited_list
+ block_storage_hosts:
+ type: comma_delimited_list
+ object_storage_hosts:
+ type: comma_delimited_list
+ ceph_storage_hosts:
+ type: comma_delimited_list
+ controller_names:
+ type: comma_delimited_list
+
+resources:
+
+ allNodesConfigImpl:
+ type: OS::Heat::StructuredConfig
+ properties:
+ config:
+ completion-signal: {get_input: deploy_signal_id}
+ hosts:
+ list_join:
+ - "\n"
+ - - list_join:
+ - "\n"
+ - {get_param: compute_hosts}
+ - list_join:
+ - "\n"
+ - {get_param: controller_hosts}
+ - list_join:
+ - "\n"
+ - {get_param: block_storage_hosts}
+ - list_join:
+ - "\n"
+ - {get_param: object_storage_hosts}
+ - list_join:
+ - "\n"
+ - {get_param: ceph_storage_hosts}
+ sysctl:
+ net.ipv4.tcp_keepalive_time: 5
+ net.ipv4.tcp_keepalive_probes: 5
+ net.ipv4.tcp_keepalive_intvl: 1
+ hiera:
+ datafiles:
+ rabbit:
+ mapped_data:
+ rabbit_nodes:
+ list_join:
+ - ','
+ - {get_param: controller_names}
+
+outputs:
+ config_id:
+ description: The ID of the allNodesConfigImpl resource.
+ value:
+ {get_resource: allNodesConfigImpl}
diff --git a/puppet/controller-puppet.yaml b/puppet/controller-puppet.yaml
index 845b6b63..a4d68ff3 100644
--- a/puppet/controller-puppet.yaml
+++ b/puppet/controller-puppet.yaml
@@ -555,6 +555,7 @@ resources:
- controller
- object
- swift_devices_and_proxy # provided by SwiftDevicesAndProxyConfig
+ - rabbit # provided by allNodesConfig
- common
datafiles:
common: