blob: d2c4048aff5d50ec16b07b7e8761642f3040a0d1 [file] [log] [blame]
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +01001heat_template_version: queens
2
3parameters:
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +01004 image:
5 type: string
6 description: Name of image to use for servers
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +01007 public_net_id:
8 type: string
Oleh Hryhorovb58460e2020-02-05 15:53:48 +02009 default: ''
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010010 description: >
Oleh Hryhorovb58460e2020-02-05 15:53:48 +020011 ID of public network for which floating IP addresses will be allocated/
12 for baremetal case flat provision network for nodes
Vasyl Saienko0fa6f192020-03-06 16:08:51 +020013 control_network_cidr:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +020014 type: string
Vasyl Saienko0fa6f192020-03-06 16:08:51 +020015 description: The CIDR of control network, used to detect control interface.
16 default: '10.10.0.0/24'
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010017 masters_size:
18 type: number
19 description: Number of masters instances to deploy
20 default: 2
21 worker_size:
22 type: number
23 description: Number of workers to deploy
24 default: 5
25 cmp_size:
26 type: number
27 description: Number of cmp workers to deploy
28 default: 0
29 gtw_size:
30 type: number
31 description: Number of gtw workers to deploy
32 default: 0
sgudzb94b4c62020-02-05 13:21:25 +020033 lma_size:
34 type: number
35 description: Number of gtw workers to deploy
36 default: 0
37 osd_size:
38 type: number
39 description: Number of gtw workers to deploy
40 default: 0
Dennis Dmitriev81da4222020-02-25 17:53:04 +020041 spare_size:
42 type: number
43 description: Number of gtw workers to deploy
44 default: 0
sgudz43eb82b2020-02-11 16:36:48 +020045 ntw_size:
46 type: number
47 description: Number of contrail nodes to deploy
48 default: 0
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010049 ucp_boot_timeout:
50 type: number
51 description: Boot timeout for UCP instance
Vasyl Saienkof36f39c2020-03-10 00:21:42 +020052 default: 3600
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010053 cluster_public_key:
54 type: string
Oleh Hryhorov0019f592020-01-23 11:50:12 +020055 private_floating_network_cidr:
56 type: string
57 default: '10.11.12.0/24'
Oleh Hryhorov2a7b3d72020-02-27 17:04:24 +020058 private_floating_network_ipam_pool_start:
59 type: string
60 description: pool start which is used as pool for IPAM and assigned to instances port
61 default: '10.11.12.2'
62 private_floating_network_ipam_pool_end:
63 type: string
64 description: pool end which is used as pool for IPAM and assigned to instances port
65 default: '10.11.12.99'
Oleh Hryhorovb58460e2020-02-05 15:53:48 +020066 private_floating_network_pool_start:
67 type: string
68 default: '10.11.12.100'
69 private_floating_network_pool_end:
70 type: string
71 default: '10.11.12.200'
72 private_floating_network_gateway:
73 type: string
Oleh Hryhorovd3a30242020-02-11 15:24:01 +020074 default: ''
Oleh Hryhorovb58460e2020-02-05 15:53:48 +020075 private_floating_interface:
76 description: Interface which carries floating network for child OpenStack.
77 type: string
Mateusz Lose2ad0772020-02-27 21:41:54 +010078 storage_frontend_network_cidr:
79 type: string
80 default: '10.12.0.0/24'
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +020081 storage_frontend_interface:
82 type: string
83 default: 'ens5'
84 storage_backend_network_cidr:
85 type: string
86 default: '10.11.0.0/24'
87 storage_backend_interface:
88 type: string
89 default: 'ens6'
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010090 worker_metadata:
91 type: json
sgudzb94b4c62020-02-05 13:21:25 +020092 default: {}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010093 cmp_metadata:
94 type: json
sgudzb94b4c62020-02-05 13:21:25 +020095 default: {}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010096 gtw_metadata:
97 type: json
sgudzb94b4c62020-02-05 13:21:25 +020098 default: {}
99 lma_metadata:
100 type: json
101 default: {}
102 osd_metadata:
103 type: json
104 default: {}
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200105 spare_metadata:
106 type: json
107 default: {}
sgudz43eb82b2020-02-11 16:36:48 +0200108 ntw_metadata:
109 type: json
110 default: {}
sgudzfe58e8a2020-02-11 13:31:40 +0200111 ucp_flavor:
112 type: string
113 default: 'system.compact.openstack.control'
114 masters_flavor:
115 type: string
116 default: 'system.compact.openstack.control'
117 workers_flavor:
118 type: string
119 default: 'system.compact.openstack.control'
120 cmps_flavor:
121 type: string
122 default: 'system.compact.openstack.control'
123 gtws_flavor:
124 type: string
125 default: 'system.compact.openstack.control'
126 lmas_flavor:
127 type: string
128 default: 'system.compact.openstack.control'
129 osds_flavor:
130 type: string
Mateusz Lose2ad0772020-02-27 21:41:54 +0100131 default: 'system.virtual.ceph.osd'
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200132 spares_flavor:
133 type: string
134 default: 'system.compact.openstack.control'
sgudz43eb82b2020-02-11 16:36:48 +0200135 ntws_flavor:
136 type: string
137 default: 'system.compact.openstack.control'
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200138 functions_override:
139 type: string
Vasyl Saienko9b688992020-02-13 13:50:53 +0200140 default: ''
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200141 docker_ee_url:
142 type: string
143 default: 'https://s3-us-west-2.amazonaws.com/internal-docker-ee-builds/docker-ee-linux'
144 docker_ee_release:
145 type: string
146 default: 'stable-19.03'
Oleh Hryhorov367e3ff2020-02-13 10:35:52 +0200147 tunnel_interface:
148 type: string
149 default: ''
150 live_migration_interface:
151 type: string
152 default: ''
153 metallb_address_pools:
154 type: comma_delimited_list
155 default: ''
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200156 hardware_metadata:
157 description: The content of lab metadata.
158 default: ''
159 type: string
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100160
161resources:
162 key_pair:
163 type: OS::Nova::KeyPair
164 properties:
165 name: { get_param: "OS::stack_name" }
166 public_key: { get_param: cluster_public_key}
167 save_private_key: false
168
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200169 accessible_network:
170 type: MCP2::NetworkAcc
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100171 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200172 public_net_id: { get_param: public_net_id }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100173
174 private_floating_network:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200175 type: MCP2::NetworkPrvFl
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100176 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200177 private_floating_network_cidr: { get_param: private_floating_network_cidr }
Oleh Hryhorov2a7b3d72020-02-27 17:04:24 +0200178 private_floating_network_ipam_pool_start: { get_param: private_floating_network_ipam_pool_start }
Oleh Hryhorov7b0157d2020-02-27 18:20:11 +0200179 private_floating_network_ipam_pool_end: { get_param: private_floating_network_ipam_pool_end }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100180
Mateusz Lose2ad0772020-02-27 21:41:54 +0100181 storage_network:
182 type: MCP2::NetworkAccStorage
183 properties:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100184 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200185 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Mateusz Lose2ad0772020-02-27 21:41:54 +0100186
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100187 ucp:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100188 depends_on:
189 - accessible_network
190 - storage_network
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200191 type: MCP2::SrvInstances
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100192 properties:
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100193 metadata: {"role":"ucp"}
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200194 docker_ee_url: { get_param: docker_ee_url }
195 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200196 node_type: "ucp"
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200197 key_name: { get_param: "OS::stack_name" }
198 image: { get_param: image }
199 flavor: { get_param: ucp_flavor }
200 accessible_network: { get_attr: [accessible_network, public_network] }
201 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
202 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
203 private_floating_interface: { get_param: private_floating_interface }
204 private_floating_network_cidr: { get_param: private_floating_network_cidr }
205 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
206 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200207 control_network_cidr: { get_param: control_network_cidr }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200208 functions_override: { get_param: functions_override }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200209 hardware_metadata: { get_param: hardware_metadata}
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200210
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100211 masters:
212 type: OS::Heat::ResourceGroup
213 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200214 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100215 properties:
216 count: { get_param: masters_size }
217 resource_def:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200218 type: MCP2::SrvInstances
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100219 properties:
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100220 metadata: {"role":"master"}
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200221 node_type: "master"
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200222 key_name: { get_param: "OS::stack_name" }
223 image: { get_param: image }
224 flavor: { get_param: masters_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200225 docker_ee_url: { get_param: docker_ee_url }
226 docker_ee_release: { get_param: docker_ee_release }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200227 accessible_network: { get_attr: [accessible_network, public_network] }
228 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
229 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
230 private_floating_interface: { get_param: private_floating_interface }
231 private_floating_network_cidr: { get_param: private_floating_network_cidr }
232 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
233 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200234 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200235 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200236 functions_override: { get_param: functions_override }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200237 hardware_metadata: { get_param: hardware_metadata}
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200238
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100239 workers:
240 type: OS::Heat::ResourceGroup
241 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200242 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100243 properties:
244 count: { get_param: worker_size }
245 resource_def:
Vasyl Saienko6ff0c1b2020-03-05 07:52:02 +0200246 type: MCP2::SrvInstancesCeph
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100247 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200248 metadata: { get_param: worker_metadata}
249 node_type: "worker"
250 key_name: { get_param: "OS::stack_name" }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100251 image: { get_param: image }
Vasyl Saienko6ff0c1b2020-03-05 07:52:02 +0200252 flavor: { get_param: workers_flavor }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100253 key_name: { get_param: "OS::stack_name" }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200254 docker_ee_url: { get_param: docker_ee_url }
255 docker_ee_release: { get_param: docker_ee_release }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200256 accessible_network: { get_attr: [accessible_network, public_network] }
257 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
258 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
259 private_floating_interface: { get_param: private_floating_interface }
260 private_floating_network_cidr: { get_param: private_floating_network_cidr }
261 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100262 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200263 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200264 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200265 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200266 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200267 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
268 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
269 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200270 hardware_metadata: { get_param: hardware_metadata}
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200271
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100272 cmps:
273 type: OS::Heat::ResourceGroup
274 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200275 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100276 properties:
277 count: { get_param: cmp_size }
278 resource_def:
Vasyl Saienko6ff0c1b2020-03-05 07:52:02 +0200279 type: MCP2::SrvInstancesCeph
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100280 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200281 metadata: { get_param: cmp_metadata }
282 node_type: "worker"
283 key_name: { get_param: "OS::stack_name" }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100284 image: { get_param: image }
Vasyl Saienko6ff0c1b2020-03-05 07:52:02 +0200285 flavor: { get_param: cmps_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200286 docker_ee_url: { get_param: docker_ee_url }
287 docker_ee_release: { get_param: docker_ee_release }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200288 accessible_network: { get_attr: [accessible_network, public_network] }
289 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
290 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
291 private_floating_interface: { get_param: private_floating_interface }
292 private_floating_network_cidr: { get_param: private_floating_network_cidr }
293 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100294 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200295 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200296 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200297 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200298 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200299 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
300 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
301 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200302 hardware_metadata: { get_param: hardware_metadata}
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200303
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100304 gtws:
305 type: OS::Heat::ResourceGroup
306 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200307 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100308 properties:
309 count: { get_param: gtw_size }
310 resource_def:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200311 type: MCP2::SrvInstances
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100312 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200313 metadata: { get_param: gtw_metadata }
314 node_type: "worker"
315 key_name: { get_param: "OS::stack_name" }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100316 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200317 flavor: { get_param: gtws_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200318 docker_ee_url: { get_param: docker_ee_url }
319 docker_ee_release: { get_param: docker_ee_release }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200320 accessible_network: { get_attr: [accessible_network, public_network] }
321 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
322 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
323 private_floating_interface: { get_param: private_floating_interface }
324 private_floating_network_cidr: { get_param: private_floating_network_cidr }
325 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100326 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200327 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200328 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200329 functions_override: { get_param: functions_override }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200330 hardware_metadata: { get_param: hardware_metadata}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100331
sgudzb94b4c62020-02-05 13:21:25 +0200332 lmas:
333 type: OS::Heat::ResourceGroup
334 depends_on:
335 - ucp
336 properties:
337 count: { get_param: lma_size }
338 resource_def:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100339 type: MCP2::SrvInstancesCeph
sgudzb94b4c62020-02-05 13:21:25 +0200340 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200341 metadata: { get_param: lma_metadata }
342 node_type: "worker"
343 key_name: { get_param: "OS::stack_name" }
sgudzb94b4c62020-02-05 13:21:25 +0200344 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200345 flavor: { get_param: lmas_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200346 docker_ee_url: { get_param: docker_ee_url }
347 docker_ee_release: { get_param: docker_ee_release }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200348 accessible_network: { get_attr: [accessible_network, public_network] }
349 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
350 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
351 private_floating_interface: { get_param: private_floating_interface }
352 private_floating_network_cidr: { get_param: private_floating_network_cidr }
353 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
sgudzb94b4c62020-02-05 13:21:25 +0200354 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200355 control_network_cidr: { get_param: control_network_cidr }
sgudzb94b4c62020-02-05 13:21:25 +0200356 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200357 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200358 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200359 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
360 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
361 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200362 hardware_metadata: { get_param: hardware_metadata}
sgudzb94b4c62020-02-05 13:21:25 +0200363
364 osds:
365 type: OS::Heat::ResourceGroup
366 depends_on:
367 - ucp
368 properties:
369 count: { get_param: osd_size }
370 resource_def:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100371 type: MCP2::SrvInstancesCephOSD
sgudzb94b4c62020-02-05 13:21:25 +0200372 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200373 metadata: { get_param: osd_metadata }
374 node_type: "worker"
375 key_name: { get_param: "OS::stack_name" }
sgudzb94b4c62020-02-05 13:21:25 +0200376 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200377 flavor: { get_param: osds_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200378 docker_ee_url: { get_param: docker_ee_url }
379 docker_ee_release: { get_param: docker_ee_release }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200380 accessible_network: { get_attr: [accessible_network, public_network] }
381 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
382 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
383 private_floating_interface: { get_param: private_floating_interface }
384 private_floating_network_cidr: { get_param: private_floating_network_cidr }
385 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
sgudzb94b4c62020-02-05 13:21:25 +0200386 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200387 control_network_cidr: { get_param: control_network_cidr }
sgudzb94b4c62020-02-05 13:21:25 +0200388 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200389 functions_override: { get_param: functions_override }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200390 storage_frontend_interface: { get_param: storage_frontend_interface }
391 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
392 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
393 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
394 storage_backend_interface: { get_param: storage_backend_interface }
395 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
396 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
397 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200398 hardware_metadata: { get_param: hardware_metadata}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100399
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200400 spares: # spares for workers
401 type: OS::Heat::ResourceGroup
402 depends_on:
403 - ucp
404 properties:
405 count: { get_param: spare_size }
406 resource_def:
407 type: MCP2::SrvInstancesCeph
408 properties:
409 metadata: { get_param: spare_metadata }
410 node_type: "spare"
411 key_name: { get_param: "OS::stack_name" }
412 image: { get_param: image }
413 flavor: { get_param: spares_flavor }
414 docker_ee_url: { get_param: docker_ee_url }
415 docker_ee_release: { get_param: docker_ee_release }
416 accessible_network: { get_attr: [accessible_network, public_network] }
417 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
418 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
419 private_floating_interface: { get_param: private_floating_interface }
420 private_floating_network_cidr: { get_param: private_floating_network_cidr }
421 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
422 public_net_id: { get_param: public_net_id }
423 control_network_cidr: { get_param: control_network_cidr }
424 ucp_master_host: { get_attr: [ucp, server_private_ip] }
425 functions_override: { get_param: functions_override }
426 storage_frontend_interface: { get_param: storage_frontend_interface }
427 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
428 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
429 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
430 hardware_metadata: { get_param: hardware_metadata}
431
sgudz43eb82b2020-02-11 16:36:48 +0200432 ntws:
433 type: OS::Heat::ResourceGroup
434 depends_on:
435 - ucp
436 properties:
437 count: { get_param: ntw_size }
438 resource_def:
439 type: MCP2::SrvInstances
440 properties:
441 metadata: { get_param: ntw_metadata }
442 node_type: "worker"
443 key_name: { get_param: "OS::stack_name" }
444 image: { get_param: image }
445 flavor: { get_param: ntws_flavor }
446 docker_ee_url: { get_param: docker_ee_url }
447 docker_ee_release: { get_param: docker_ee_release }
448 accessible_network: { get_attr: [accessible_network, public_network] }
449 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
450 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
451 private_floating_interface: { get_param: private_floating_interface }
452 private_floating_network_cidr: { get_param: private_floating_network_cidr }
453 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
454 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200455 control_network_cidr: { get_param: control_network_cidr }
sgudz43eb82b2020-02-11 16:36:48 +0200456 ucp_master_host: { get_attr: [ucp, server_private_ip] }
457 functions_override: { get_param: functions_override }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200458 hardware_metadata: { get_param: hardware_metadata}
sgudz43eb82b2020-02-11 16:36:48 +0200459
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100460outputs:
461 ucp_ips:
462 description: Private IP addresses of the deployed ucp instances
463 value: { get_attr: [ucp, server_public_ip] }
464 masters_ips:
465 description: Private IP addresses of the deployed masters instances
466 value: { get_attr: [masters, server_public_ip] }
467 workers_ips:
468 description: Private IP addresses of the deployed worker instances
469 value: { get_attr: [workers, server_public_ip] }
470 cmps_ips:
471 description: Private IP addresses of the deployed cmp instances
472 value: { get_attr: [cmps, server_public_ip] }
473 gtws_ips:
474 description: Private IP addresses of the deployed gtw instances
475 value: { get_attr: [gtws, server_public_ip] }
sgudzb94b4c62020-02-05 13:21:25 +0200476 lmas_ips:
477 description: Private IP addresses of the deployed lma instances
478 value: { get_attr: [lmas, server_public_ip] }
479 osds_ips:
480 description: Private IP addresses of the deployed osd instances
481 value: { get_attr: [osds, server_public_ip] }
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200482 spares_ips:
483 description: Private IP addresses of the deployed spare instances
484 value: { get_attr: [spares, server_public_ip] }
sgudz43eb82b2020-02-11 16:36:48 +0200485 ntws_ips:
486 description: Private IP addresses of the deployed contrail instances
487 value: { get_attr: [ntws, server_public_ip] }
Oleh Hryhorov404e9572020-01-21 18:57:22 +0200488 worker_private_floating_ips:
489 description: IPs might be used as gateway
490 value: { get_attr: [workers, server_private_floating_ip] }
Oleh Hryhorov0019f592020-01-23 11:50:12 +0200491 private_floating_cidr:
492 value: { get_param: private_floating_network_cidr }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200493 private_floating_network_pool_start:
494 value: { get_param: private_floating_network_pool_start }
495 private_floating_network_pool_end:
496 value: { get_param: private_floating_network_pool_end }
497 private_floating_network_gateway:
498 value: { get_param: private_floating_network_gateway }
Oleh Hryhorov367e3ff2020-02-13 10:35:52 +0200499 tunnel_interface:
500 value: { get_param: tunnel_interface }
501 live_migration_interface:
502 value: { get_param: live_migration_interface }
503 metallb_address_pools:
504 value: { get_param: metallb_address_pools }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200505 ucp_wc_data:
506 description: Metadata from ucp
507 value: { get_attr: [ucp, wc_data] }
508 masters_wc_data:
509 description: Metadata from masters
510 value: { get_attr: [masters, wc_data] }
511 workers_wc_data:
512 description: Metadata from workers
513 value: { get_attr: [workers, wc_data] }
514 cmps_wc_data:
515 description: Metadata from cmps
516 value: { get_attr: [cmps, wc_data] }
517 gtws_wc_data:
518 description: Metadata from gtws
519 value: { get_attr: [gtws, wc_data] }
520 lmas_wc_data:
521 description: Metadata from lmas
522 value: { get_attr: [lmas, wc_data] }
523 osds_wc_data:
524 description: Metadata from osds
525 value: { get_attr: [osds, wc_data] }
526 ntws_wc_data:
527 description: Metadata from ntws
528 value: { get_attr: [ntws, wc_data] }