aboutsummaryrefslogtreecommitdiffstats
path: root/sample-env-generator/composable-roles.yaml
blob: 2c929a4b31307e44b2bef5b3bfedef5a851c10eb (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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
#
# This environment generator is used to generate some sample composable role
# environment files.
#
environments:
  -
    name: composable-roles/monolithic-nonha
    title: Monolithic Controller Non-HA deployment
    description: |
      A Heat environment that can be used to deploy controller and compute
      services in an Non-HA configuration with SSL undercloud only and a
      flat network.
      This should be used with a roles_data.yaml containing the Controller,
      Compute and CephStorage roles.
      openstack overcloud roles generate -o ~/roles_data.yaml Controller Compute CephStorage
    files:
      overcloud.yaml:
        parameters:
          - ControllerHostnameFormat
          - ComputeHostnameFormat
          - CephStorageHostnameFormat
          - ControllerCount
          - ComputeCount
          - CephStorageCount
      puppet/services/time/ntp.yaml:
        parameters:
          - NtpServer
      sample-env-generator/composable-roles.yaml:
        parameters:
          - DnsServers
          - OvercloudControllerFlavor
          - OvercloudComputeFlavor
          - OvercloudCephStorageFlavor
    sample_values:
      ControllerCount: 1
      OvercloudControllerFlavor: control
      ComputeCount: 1
      OvercloudComputeFlavor: compute
      CephStorageCount: 1
      OvercloudCephStorageFlavor: ceph

  -
    name: composable-roles/monolithic-ha
    title: Monolithic Controller HA deployment
    description: |
      A Heat environment that can be used to deploy controller and compute
      services in an HA configuration with SSL everywhere and network
      isolation.
      This should be used with a roles_data.yaml containing the Controller,
      Compute and CephStorage roles.
      openstack overcloud roles generate -o ~/roles_data.yaml Controller Compute CephStorage
    files:
      overcloud.yaml:
        parameters:
          - ControllerHostnameFormat
          - ComputeHostnameFormat
          - CephStorageHostnameFormat
          - ControllerCount
          - ComputeCount
          - CephStorageCount
      puppet/services/time/ntp.yaml:
        parameters:
          - NtpServer
      sample-env-generator/composable-roles.yaml:
        parameters:
          - DnsServers
          - OvercloudControllerFlavor
          - OvercloudComputeFlavor
          - OvercloudCephStorageFlavor
    sample_values:
      ControllerCount: 3
      OvercloudControllerFlavor: control
      ComputeCount: 3
      OvercloudComputeFlavor: compute
      CephStorageCount: 1
      OvercloudCephStorageFlavor: ceph

  -
    name: composable-roles/standalone
    title: Controller HA deployment with standalone Database, Messaging and Networker nodes.
    description: |
      A Heat environment that can be used to deploy controller, database,
      messaging, networker and compute services in an HA configuration with SSL
      everywhere and network isolation.
      This should be used with a roles_data.yaml containing the
      ControllerOpenstack, Database, Messaging, Networker, Compute and
      CephStorage roles.
      openstack overcloud roles generate -o ~/roles_data.yaml ControllerOpenstack Database Messaging Networker Compute CephStorage
    files:
      overcloud.yaml:
        parameters:
          - ComputeHostnameFormat
          - CephStorageHostnameFormat
          - ComputeCount
          - CephStorageCount
      puppet/services/time/ntp.yaml:
        parameters:
          - NtpServer
      sample-env-generator/composable-roles.yaml:
        parameters:
          - ControllerOpenstackHostnameFormat
          - DnsServers
          - ControllerOpenstackCount
          - DatabaseCount
          - MessagingCount
          - NetworkerCount
          - OvercloudControllerOpenstackFlavor
          - OvercloudComputeFlavor
          - OvercloudCephStorageFlavor
          - OvercloudDatabaseFlavor
          - OvercloudMessagingFlavor
          - OvercloudNetworkerFlavor
    sample_values:
      ControllerOpenstackCount: 3
      OvercloudControllerOpenstackFlavor: control
      ComputeCount: 1
      OvercloudComputeFlavor: compute
      CephStorageCount: 1
      OvercloudCephStorageFlavor: ceph
      DatabaseCount: 3
      OvercloudDatabaseFlavor: db
      MessagingCount: 3
      OvercloudMessagingFlavor: messaging
      NetworkerCount: 2
      OvercloudNetworkerFlavor: networker


# NOTE(aschultz): So because these are dynamic based on the roles used, we
# do not currently define these in any heat files. So we're defining them here
# so that the sample env generator can still provide these configuration items
# in the generated config files.
parameters:
  DnsServers:
    default: ['8.8.8.8', '8,8.4.4']
    description: DNS servers to use for the Overcloud
    type: comma_delimited_list
  # Dynamic vars based on roles
  ControllerOpenstackCount:
    default: 0
    description: Number of ControllerOpenstack nodes
    type: number
  DatabaseCount:
    default: 0
    description: Number of Database nodes
    type: number
  MessagingCount:
    default: 0
    description: Number of Messaging nodes
    type: number
  NetworkerCount:
    default: 0
    description: Number of Networker nodes
    type: number
  ControllerOpenstackHostnameFormat:
    type: string
    description: >
      Format for ControllerOpenstack node hostnames
      Note %index% is translated into the index of the node, e.g 0/1/2 etc
      and %stackname% is replaced with the stack name e.g overcloud
    default: "%stackname%-controller-%index%"
  OvercloudControllerFlavor:
    default: control
    description: Name of the flavor for Controller nodes
    type: string
  OvercloudControllerOpenstackFlavor:
    default: control
    description: Name of the flavor for ControllerOpenstack nodes
    type: string
  OvercloudComputeFlavor:
    default: compute
    description: Name of the flavor for Compute nodes
    type: string
  OvercloudCephStorageFlavor:
    default: compute
    description: Name of the flavor for Ceph nodes
    type: string
  OvercloudDatabaseFlavor:
    default: database
    description: Name of the flavor for Database nodes
    type: string
  OvercloudMessagingFlavor:
    default: messaging
    description: Name of the flavor for Messaging nodes
    type: string
  OvercloudNetworkerFlavor:
    default: networker
    description: Name of the flavor for Networker nodes
    type: string