65619843d2
This aligns with the new naming conventions in puppet-tripleo, so the keys can be more easily generated from the service_names. Change-Id: Idb4a740e70257e3c69d8ec7d0c88594cc091b6a7 Partially-Implements: blueprint custom-roles Depends-On: I423b544df174254ac511b906b0c570e701678022
346 lines
12 KiB
YAML
346 lines
12 KiB
YAML
heat_template_version: 2015-04-30
|
|
description: 'All Nodes Config for Puppet'
|
|
|
|
parameters:
|
|
hosts:
|
|
type: comma_delimited_list
|
|
controller_ips:
|
|
type: comma_delimited_list
|
|
controller_names:
|
|
type: comma_delimited_list
|
|
rabbit_node_ips:
|
|
type: comma_delimited_list
|
|
mongo_node_ips:
|
|
type: comma_delimited_list
|
|
redis_node_ips:
|
|
type: comma_delimited_list
|
|
memcache_node_ips:
|
|
type: comma_delimited_list
|
|
mysql_node_ips:
|
|
type: comma_delimited_list
|
|
horizon_node_ips:
|
|
type: comma_delimited_list
|
|
heat_api_node_ips:
|
|
type: comma_delimited_list
|
|
swift_proxy_node_ips:
|
|
type: comma_delimited_list
|
|
ceilometer_api_node_ips:
|
|
type: comma_delimited_list
|
|
aodh_api_node_ips:
|
|
type: comma_delimited_list
|
|
nova_api_node_ips:
|
|
type: comma_delimited_list
|
|
nova_metadata_node_ips:
|
|
type: comma_delimited_list
|
|
glance_api_node_ips:
|
|
type: comma_delimited_list
|
|
glance_registry_node_ips:
|
|
type: comma_delimited_list
|
|
gnocchi_api_node_ips:
|
|
type: comma_delimited_list
|
|
cinder_api_node_ips:
|
|
type: comma_delimited_list
|
|
manila_api_node_ips:
|
|
type: comma_delimited_list
|
|
neutron_api_node_ips:
|
|
type: comma_delimited_list
|
|
keystone_public_api_node_ips:
|
|
type: comma_delimited_list
|
|
keystone_admin_api_node_ips:
|
|
type: comma_delimited_list
|
|
sahara_api_node_ips:
|
|
type: comma_delimited_list
|
|
ironic_api_node_ips:
|
|
type: comma_delimited_list
|
|
ceph_mon_node_ips:
|
|
type: comma_delimited_list
|
|
ceph_mon_node_names:
|
|
type: comma_delimited_list
|
|
DeployIdentifier:
|
|
type: string
|
|
description: >
|
|
Setting this to a unique value will re-run any deployment tasks which
|
|
perform configuration on a Heat stack-update.
|
|
UpdateIdentifier:
|
|
type: string
|
|
description: >
|
|
Setting to a previously unused value during stack-update will trigger
|
|
package update on all nodes
|
|
StackAction:
|
|
type: string
|
|
description: >
|
|
Heat action on performed top-level stack.
|
|
constraints:
|
|
- allowed_values: ['CREATE', 'UPDATE']
|
|
|
|
resources:
|
|
|
|
allNodesConfigImpl:
|
|
type: OS::Heat::StructuredConfig
|
|
properties:
|
|
group: os-apply-config
|
|
config:
|
|
hosts:
|
|
list_join:
|
|
- "\n"
|
|
- {get_param: hosts}
|
|
hiera:
|
|
datafiles:
|
|
bootstrap_node:
|
|
mapped_data:
|
|
bootstrap_nodeid: {get_input: bootstrap_nodeid}
|
|
bootstrap_nodeid_ip: {get_input: bootstrap_nodeid_ip}
|
|
all_nodes:
|
|
mapped_data:
|
|
controller_node_ips:
|
|
list_join:
|
|
- ','
|
|
- {get_param: controller_ips}
|
|
controller_node_names:
|
|
list_join:
|
|
- ','
|
|
- {get_param: controller_names}
|
|
galera_node_names:
|
|
list_join:
|
|
- ','
|
|
- {get_param: controller_names}
|
|
rabbitmq_node_ips: &rabbit_nodes_array
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: rabbit_node_ips}
|
|
mongodb_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: mongo_node_ips}
|
|
redis_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: redis_node_ips}
|
|
memcached_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: memcache_node_ips}
|
|
memcached_node_ips_v6:
|
|
str_replace:
|
|
template: "['inet6:[SERVERS_LIST]']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "]','inet6:["
|
|
- {get_param: memcache_node_ips}
|
|
mysql_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: mysql_node_ips}
|
|
horizon_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: horizon_node_ips}
|
|
heat_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: heat_api_node_ips}
|
|
swift_proxy_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: swift_proxy_node_ips}
|
|
ceilometer_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: ceilometer_api_node_ips}
|
|
aodh_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: aodh_api_node_ips}
|
|
gnocchi_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: gnocchi_api_node_ips}
|
|
nova_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: nova_api_node_ips}
|
|
nova_metadata_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: nova_metadata_node_ips}
|
|
glance_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: glance_api_node_ips}
|
|
glance_registry_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: glance_registry_node_ips}
|
|
cinder_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: cinder_api_node_ips}
|
|
manila_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: manila_api_node_ips}
|
|
neutron_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: neutron_api_node_ips}
|
|
# TODO: pass a `midonet_api_node_ips` var
|
|
midonet_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: neutron_api_node_ips}
|
|
keystone_public_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: keystone_public_api_node_ips}
|
|
keystone_admin_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: keystone_admin_api_node_ips}
|
|
sahara_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: sahara_api_node_ips}
|
|
ironic_api_node_ips:
|
|
str_replace:
|
|
template: "['SERVERS_LIST']"
|
|
params:
|
|
SERVERS_LIST:
|
|
list_join:
|
|
- "','"
|
|
- {get_param: ironic_api_node_ips}
|
|
|
|
tripleo::profile::base::ceph::ceph_mon_initial_members:
|
|
list_join:
|
|
- ','
|
|
- {get_param: ceph_mon_node_names}
|
|
tripleo::profile::base::ceph::ceph_mon_host:
|
|
list_join:
|
|
- ','
|
|
- {get_param: ceph_mon_node_ips}
|
|
tripleo::profile::base::ceph::ceph_mon_host_v6:
|
|
str_replace:
|
|
template: "'[IPS_LIST]'"
|
|
params:
|
|
IPS_LIST:
|
|
list_join:
|
|
- '],['
|
|
- {get_param: ceph_mon_node_ips}
|
|
# NOTE(gfidente): interpolation with %{} in the
|
|
# hieradata file can't be used as it returns string
|
|
ceilometer::rabbit_hosts: *rabbit_nodes_array
|
|
aodh::rabbit_hosts: *rabbit_nodes_array
|
|
cinder::rabbit_hosts: *rabbit_nodes_array
|
|
glance::notify::rabbitmq::rabbit_hosts: *rabbit_nodes_array
|
|
manila::rabbit_hosts: *rabbit_nodes_array
|
|
heat::rabbit_hosts: *rabbit_nodes_array
|
|
neutron::rabbit_hosts: *rabbit_nodes_array
|
|
nova::rabbit_hosts: *rabbit_nodes_array
|
|
keystone::rabbit_hosts: *rabbit_nodes_array
|
|
sahara::rabbit_hosts: *rabbit_nodes_array
|
|
ironic::rabbit_hosts: *rabbit_nodes_array
|
|
|
|
deploy_identifier: {get_param: DeployIdentifier}
|
|
update_identifier: {get_param: UpdateIdentifier}
|
|
stack_action: {get_param: StackAction}
|
|
|
|
outputs:
|
|
config_id:
|
|
description: The ID of the allNodesConfigImpl resource.
|
|
value:
|
|
{get_resource: allNodesConfigImpl}
|
|
hosts_entries:
|
|
description: |
|
|
The content that should be appended to your /etc/hosts if you want to get
|
|
hostname-based access to the deployed nodes (useful for testing without
|
|
setting up a DNS).
|
|
value: {get_attr: [allNodesConfigImpl, config, hosts]}
|