1 heat_template_version: 2016-10-14
2 description: 'All Nodes Config for Puppet'
6 type: comma_delimited_list
7 # FIXME(shardy) this can be comma_delimited_list when
8 # https://bugs.launchpad.net/heat/+bug/1617019 is fixed
12 type: comma_delimited_list
14 type: comma_delimited_list
16 type: comma_delimited_list
18 type: comma_delimited_list
20 type: comma_delimited_list
22 type: comma_delimited_list
24 type: comma_delimited_list
26 type: comma_delimited_list
28 type: comma_delimited_list
30 type: comma_delimited_list
31 ceilometer_api_node_ips:
32 type: comma_delimited_list
34 type: comma_delimited_list
36 type: comma_delimited_list
37 nova_metadata_node_ips:
38 type: comma_delimited_list
40 type: comma_delimited_list
41 glance_registry_node_ips:
42 type: comma_delimited_list
44 type: comma_delimited_list
46 type: comma_delimited_list
48 type: comma_delimited_list
50 type: comma_delimited_list
51 keystone_public_api_node_ips:
52 type: comma_delimited_list
53 keystone_admin_api_node_ips:
54 type: comma_delimited_list
56 type: comma_delimited_list
58 type: comma_delimited_list
60 type: comma_delimited_list
62 type: comma_delimited_list
63 opendaylight_api_node_ips:
64 type: comma_delimited_list
68 Setting this to a unique value will re-run any deployment tasks which
69 perform configuration on a Heat stack-update.
73 Setting to a previously unused value during stack-update will trigger
74 package update on all nodes
78 Heat action on performed top-level stack.
80 - allowed_values: ['CREATE', 'UPDATE']
85 type: OS::Heat::StructuredConfig
87 group: os-apply-config
97 bootstrap_nodeid: {get_input: bootstrap_nodeid}
98 bootstrap_nodeid_ip: {get_input: bootstrap_nodeid_ip}
102 - enabled_services: {get_param: enabled_services}
103 # This writes out a mapping of service_name_enabled: 'true'
104 # For any services not enabled, hiera foo_enabled will
105 # return nil, as it's undefined
109 # Note this must be string 'true' due to
110 # https://bugs.launchpad.net/heat/+bug/1617203
111 SERVICE_enabled: 'true'
114 str_split: [',', {get_param: enabled_services}]
115 - controller_node_ips:
118 - {get_param: controller_ips}
119 controller_node_names:
122 - {get_param: controller_names}
126 - {get_param: controller_names}
127 rabbitmq_node_ips: &rabbit_nodes_array
129 template: "['SERVERS_LIST']"
134 - {get_param: rabbit_node_ips}
137 template: "['SERVERS_LIST']"
142 - {get_param: mongo_node_ips}
145 template: "['SERVERS_LIST']"
150 - {get_param: redis_node_ips}
153 template: "['SERVERS_LIST']"
158 - {get_param: memcache_node_ips}
159 memcached_node_ips_v6:
161 template: "['inet6:[SERVERS_LIST]']"
166 - {get_param: memcache_node_ips}
169 template: "['SERVERS_LIST']"
174 - {get_param: mysql_node_ips}
177 template: "['SERVERS_LIST']"
182 - {get_param: horizon_node_ips}
185 template: "['SERVERS_LIST']"
190 - {get_param: heat_api_node_ips}
191 swift_proxy_node_ips:
193 template: "['SERVERS_LIST']"
198 - {get_param: swift_proxy_node_ips}
199 ceilometer_api_node_ips:
201 template: "['SERVERS_LIST']"
206 - {get_param: ceilometer_api_node_ips}
209 template: "['SERVERS_LIST']"
214 - {get_param: aodh_api_node_ips}
215 gnocchi_api_node_ips:
217 template: "['SERVERS_LIST']"
222 - {get_param: gnocchi_api_node_ips}
225 template: "['SERVERS_LIST']"
230 - {get_param: nova_api_node_ips}
231 nova_metadata_node_ips:
233 template: "['SERVERS_LIST']"
238 - {get_param: nova_metadata_node_ips}
241 template: "['SERVERS_LIST']"
246 - {get_param: glance_api_node_ips}
247 glance_registry_node_ips:
249 template: "['SERVERS_LIST']"
254 - {get_param: glance_registry_node_ips}
257 template: "['SERVERS_LIST']"
262 - {get_param: cinder_api_node_ips}
265 template: "['SERVERS_LIST']"
270 - {get_param: manila_api_node_ips}
271 neutron_api_node_ips:
273 template: "['SERVERS_LIST']"
278 - {get_param: neutron_api_node_ips}
279 # TODO: pass a `midonet_api_node_ips` var
280 midonet_api_node_ips:
282 template: "['SERVERS_LIST']"
287 - {get_param: neutron_api_node_ips}
288 keystone_public_api_node_ips:
290 template: "['SERVERS_LIST']"
295 - {get_param: keystone_public_api_node_ips}
296 keystone_admin_api_node_ips:
298 template: "['SERVERS_LIST']"
303 - {get_param: keystone_admin_api_node_ips}
306 template: "['SERVERS_LIST']"
311 - {get_param: sahara_api_node_ips}
314 template: "['SERVERS_LIST']"
319 - {get_param: ironic_api_node_ips}
320 opendaylight_api_node_ips:
322 template: "['SERVERS_LIST']"
327 - {get_param: opendaylight_api_node_ips}
329 tripleo::profile::base::ceph::ceph_mon_initial_members:
332 - {get_param: ceph_mon_node_names}
333 tripleo::profile::base::ceph::ceph_mon_host:
336 - {get_param: ceph_mon_node_ips}
337 tripleo::profile::base::ceph::ceph_mon_host_v6:
339 template: "'[IPS_LIST]'"
344 - {get_param: ceph_mon_node_ips}
345 # NOTE(gfidente): interpolation with %{} in the
346 # hieradata file can't be used as it returns string
347 ceilometer::rabbit_hosts: *rabbit_nodes_array
348 aodh::rabbit_hosts: *rabbit_nodes_array
349 cinder::rabbit_hosts: *rabbit_nodes_array
350 glance::notify::rabbitmq::rabbit_hosts: *rabbit_nodes_array
351 manila::rabbit_hosts: *rabbit_nodes_array
352 heat::rabbit_hosts: *rabbit_nodes_array
353 neutron::rabbit_hosts: *rabbit_nodes_array
354 nova::rabbit_hosts: *rabbit_nodes_array
355 keystone::rabbit_hosts: *rabbit_nodes_array
356 sahara::rabbit_hosts: *rabbit_nodes_array
357 ironic::rabbit_hosts: *rabbit_nodes_array
359 deploy_identifier: {get_param: DeployIdentifier}
360 update_identifier: {get_param: UpdateIdentifier}
361 stack_action: {get_param: StackAction}
365 description: The ID of the allNodesConfigImpl resource.
367 {get_resource: allNodesConfigImpl}
370 The content that should be appended to your /etc/hosts if you want to get
371 hostname-based access to the deployed nodes (useful for testing without
373 value: {get_attr: [allNodesConfigImpl, config, hosts]}