Changes for configuring Nuage
[apex-tripleo-heat-templates.git] / puppet / all-nodes-config.yaml
index 9345e5c..2bc519b 100644 (file)
@@ -1,4 +1,4 @@
-heat_template_version: 2014-10-16
+heat_template_version: 2015-04-30
 description: 'All Nodes Config for Puppet'
 
 parameters:
@@ -16,6 +16,40 @@ parameters:
     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
+  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
+  cinder_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
 
 resources:
 
@@ -42,30 +76,169 @@ resources:
             - 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:
+            RedHat:
+              raw_data: {get_file: hieradata/RedHat.yaml}
             all_nodes:
               mapped_data:
                 controller_node_ips:
                   list_join:
                   - ','
                   - {get_param: controller_ips}
-                rabbit_node_ips:
+                controller_node_names:
                   list_join:
                   - ','
-                  - {get_param: controller_ips}
-                mongo_node_ips:
+                  - {get_param: controller_names}
+                galera_node_names:
                   list_join:
                   - ','
-                  - {get_param: controller_ips}
+                  - {get_param: controller_names}
+                rabbit_node_ips: &rabbit_nodes_array
+                  str_replace:
+                    template: "['SERVERS_LIST']"
+                    params:
+                      SERVERS_LIST:
+                        list_join:
+                        - "','"
+                        - {get_param: rabbit_node_ips}
+                mongo_node_ips:
+                  str_replace:
+                    template: "['SERVERS_LIST']"
+                    params:
+                      SERVERS_LIST:
+                        list_join:
+                        - "','"
+                        - {get_param: mongo_node_ips}
                 redis_node_ips:
-                  list_join:
-                  - ','
-                  - {get_param: controller_ips}
+                  str_replace:
+                    template: "['SERVERS_LIST']"
+                    params:
+                      SERVERS_LIST:
+                        list_join:
+                        - "','"
+                        - {get_param: redis_node_ips}
+                memcache_node_ips:
+                  str_replace:
+                    template: "['SERVERS_LIST']"
+                    params:
+                      SERVERS_LIST:
+                        list_join:
+                        - "','"
+                        - {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}
+                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}
+                neutron_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}
+
+                # NOTE(gfidente): interpolation with %{} in the
+                # hieradata file can't be used as it returns string
+                ceilometer::rabbit_hosts: *rabbit_nodes_array
+                cinder::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
 
 outputs:
   config_id: