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
16 type: comma_delimited_list
18 type: comma_delimited_list
20 type: comma_delimited_list
21 keystone_public_api_node_ips:
22 type: comma_delimited_list
23 keystone_admin_api_node_ips:
24 type: comma_delimited_list
26 type: comma_delimited_list
28 type: comma_delimited_list
32 Setting this to a unique value will re-run any deployment tasks which
33 perform configuration on a Heat stack-update.
37 Setting to a previously unused value during stack-update will trigger
38 package update on all nodes
42 Heat action on performed top-level stack.
44 - allowed_values: ['CREATE', 'UPDATE']
49 type: OS::Heat::StructuredConfig
51 group: os-apply-config
61 bootstrap_nodeid: {get_input: bootstrap_nodeid}
62 bootstrap_nodeid_ip: {get_input: bootstrap_nodeid_ip}
66 - enabled_services: {get_param: enabled_services}
67 # This writes out a mapping of service_name_enabled: 'true'
68 # For any services not enabled, hiera foo_enabled will
69 # return nil, as it's undefined
73 # Note this must be string 'true' due to
74 # https://bugs.launchpad.net/heat/+bug/1617203
75 SERVICE_enabled: 'true'
78 str_split: [',', {get_param: enabled_services}]
79 # provides a mapping of service_name_ips to a list of IPs
80 - {get_param: service_ips}
81 - controller_node_ips:
84 - {get_param: controller_ips}
85 controller_node_names:
88 - {get_param: controller_names}
92 - {get_param: controller_names}
93 rabbitmq_node_ips: &rabbit_nodes_array
95 template: "['SERVERS_LIST']"
100 - {get_param: rabbit_node_ips}
101 memcached_node_ips_v6:
103 template: "['inet6:[SERVERS_LIST]']"
108 - {get_param: memcache_node_ips}
109 keystone_public_api_node_ips:
111 template: "['SERVERS_LIST']"
116 - {get_param: keystone_public_api_node_ips}
117 keystone_admin_api_node_ips:
119 template: "['SERVERS_LIST']"
124 - {get_param: keystone_admin_api_node_ips}
125 tripleo::profile::base::ceph::ceph_mon_initial_members:
128 - {get_param: ceph_mon_node_names}
129 tripleo::profile::base::ceph::ceph_mon_host:
132 - {get_param: ceph_mon_node_ips}
133 tripleo::profile::base::ceph::ceph_mon_host_v6:
135 template: "'[IPS_LIST]'"
140 - {get_param: ceph_mon_node_ips}
141 # NOTE(gfidente): interpolation with %{} in the
142 # hieradata file can't be used as it returns string
143 ceilometer::rabbit_hosts: *rabbit_nodes_array
144 aodh::rabbit_hosts: *rabbit_nodes_array
145 cinder::rabbit_hosts: *rabbit_nodes_array
146 glance::notify::rabbitmq::rabbit_hosts: *rabbit_nodes_array
147 manila::rabbit_hosts: *rabbit_nodes_array
148 heat::rabbit_hosts: *rabbit_nodes_array
149 neutron::rabbit_hosts: *rabbit_nodes_array
150 nova::rabbit_hosts: *rabbit_nodes_array
151 keystone::rabbit_hosts: *rabbit_nodes_array
152 sahara::rabbit_hosts: *rabbit_nodes_array
153 ironic::rabbit_hosts: *rabbit_nodes_array
155 deploy_identifier: {get_param: DeployIdentifier}
156 update_identifier: {get_param: UpdateIdentifier}
157 stack_action: {get_param: StackAction}
161 description: The ID of the allNodesConfigImpl resource.
163 {get_resource: allNodesConfigImpl}
166 The content that should be appended to your /etc/hosts if you want to get
167 hostname-based access to the deployed nodes (useful for testing without
169 value: {get_attr: [allNodesConfigImpl, config, hosts]}