aboutsummaryrefslogtreecommitdiffstats
path: root/puppet/all-nodes-config.yaml
blob: b703d5cba4efa0444f5e55e9e97432561cdbbdb1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
heat_template_version: 2015-04-30
description: 'All Nodes Config for Puppet'

parameters:
  compute_hosts:
    type: comma_delimited_list
  controller_hosts:
    type: comma_delimited_list
  controller_ips:
    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:
            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}
                rabbit_node_ips:
                  list_join:
                  - ','
                  - {get_param: controller_ips}
                mongo_node_ips:
                  list_join:
                  - ','
                  - {get_param: controller_ips}
                redis_node_ips:
                  list_join:
                  - ','
                  - {get_param: controller_ips}
                memcache_node_ips:
                  list_join:
                  - ','
                  - {get_param: controller_ips}

outputs:
  config_id:
    description: The ID of the allNodesConfigImpl resource.
    value:
      {get_resource: allNodesConfigImpl}