blob: d179f8cfa86d2f5f87571ebc589c96d0fa7569d6 [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 Saienkob9e69d02021-03-19 10:09:52 +020013 dns_nameservers:
14 type: json
15 default: []
Vasyl Saienko0fa6f192020-03-06 16:08:51 +020016 control_network_cidr:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +020017 type: string
Vasyl Saienko0fa6f192020-03-06 16:08:51 +020018 description: The CIDR of control network, used to detect control interface.
19 default: '10.10.0.0/24'
Anton Samoylov1af95862021-05-24 22:25:42 +040020 control_network_host_routes:
21 type: json
22 description: >
23 List of dicts with host routes in control subnet, e.g:
24 - "destination": "10.100.100.1/32"
25 "nexthop": "172.16.1.1"
26 default: []
Ilya Bumarskov128d4d22021-12-27 10:43:09 +040027 control_network_ext_router_ip:
Sergey Matov0709c762020-04-02 14:30:50 +040028 type: string
Ilya Bumarskov128d4d22021-12-27 10:43:09 +040029 description: IP address of vsrx/vmx in control network
Anton Samoylovea0b23e2020-06-26 14:17:51 +040030 default: ''
Stepan Rogov60bc3522020-12-16 17:43:25 +030031 docker_default_address_pool:
32 type: string
33 description: Default address pool for Docker ucp specific local networks
34 default: '10.10.1.0/16'
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010035 masters_size:
36 type: number
37 description: Number of masters instances to deploy
38 default: 2
39 worker_size:
40 type: number
41 description: Number of workers to deploy
42 default: 5
43 cmp_size:
44 type: number
45 description: Number of cmp workers to deploy
46 default: 0
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +020047 acmp_size:
48 type: number
49 description: Number of advanced cmp workers to deploy
50 default: 0
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010051 gtw_size:
52 type: number
53 description: Number of gtw workers to deploy
54 default: 0
sgudzb94b4c62020-02-05 13:21:25 +020055 lma_size:
56 type: number
57 description: Number of gtw workers to deploy
58 default: 0
59 osd_size:
60 type: number
61 description: Number of gtw workers to deploy
62 default: 0
Vasyl Saienko25bb75b2021-02-15 12:22:33 +020063 frr_size:
64 type: number
65 description: Number of frr nodes to deploy
66 default: 0
sgudz43eb82b2020-02-11 16:36:48 +020067 ntw_size:
68 type: number
69 description: Number of contrail nodes to deploy
70 default: 0
Vasyl Saienko36f2edf2020-05-14 10:44:52 +030071 vbmc_size:
72 type: number
73 description: Number of nodes for virtualbmc BM node simulator
74 default: 0
Mykyta Karpinf24e01a2022-02-04 17:22:38 +020075 tsrv_size:
76 type: number
77 description: Number of nodes for test servers
78 default: 1
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010079 ucp_boot_timeout:
80 type: number
81 description: Boot timeout for UCP instance
Vasyl Saienkof36f39c2020-03-10 00:21:42 +020082 default: 3600
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010083 cluster_public_key:
84 type: string
Oleh Hryhorov0019f592020-01-23 11:50:12 +020085 private_floating_network_cidr:
86 type: string
87 default: '10.11.12.0/24'
Oleh Hryhorov2a7b3d72020-02-27 17:04:24 +020088 private_floating_network_ipam_pool_start:
89 type: string
90 description: pool start which is used as pool for IPAM and assigned to instances port
91 default: '10.11.12.2'
92 private_floating_network_ipam_pool_end:
93 type: string
94 description: pool end which is used as pool for IPAM and assigned to instances port
Vasyl Saienko5b6d70a2023-04-10 13:55:31 +000095 default: '10.11.12.70'
Oleh Hryhorovb58460e2020-02-05 15:53:48 +020096 private_floating_network_pool_start:
97 type: string
98 default: '10.11.12.100'
99 private_floating_network_pool_end:
100 type: string
101 default: '10.11.12.200'
102 private_floating_network_gateway:
103 type: string
Oleh Hryhorovd3a30242020-02-11 15:24:01 +0200104 default: ''
Vasyl Saienkoc943f432020-04-21 12:15:57 +0300105 private_floating_network_interface:
106 type: string
107 default: 'veth-phy'
108 description: 'The name of interface that should be added to external neutron bridge for floating network.'
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200109 private_floating_interface:
110 description: Interface which carries floating network for child OpenStack.
111 type: string
Mateusz Lose2ad0772020-02-27 21:41:54 +0100112 storage_frontend_network_cidr:
113 type: string
114 default: '10.12.0.0/24'
Mykyta Karpinb3a7f292024-10-18 15:44:36 +0200115 storage_frontend_network_gateway:
116 type: string
117 default: '10.12.0.1/24'
Mykyta Karpin1ac7cc02024-11-06 16:10:22 +0100118 storage_frontend_network_ipam_pool_start:
119 type: string
120 default: '10.12.0.3'
121 storage_frontend_network_ipam_pool_end:
122 type: string
123 default: '10.12.0.254'
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200124 storage_frontend_interface:
125 type: string
126 default: 'ens5'
127 storage_backend_network_cidr:
128 type: string
129 default: '10.11.0.0/24'
130 storage_backend_interface:
131 type: string
132 default: 'ens6'
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300133 ironic_baremetal_network_cidr:
134 type: string
135 default: '10.13.0.0/24'
136 ironic_baremetal_network_ipam_pool_start:
137 type: string
138 default: '10.13.0.2'
139 ironic_baremetal_network_ipam_pool_end:
140 type: string
141 default: '10.13.0.99'
142 ironic_baremetal_network_pool_start:
143 type: string
144 default: '10.13.0.100'
145 ironic_baremetal_network_pool_end:
146 type: string
147 default: '10.13.0.200'
148 ironic_baremetal_network_gateway:
149 type: string
150 default: ''
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400151 ironic_baremetal_tunnel_cidr:
152 type: string
153 default: '10.16.0.0/24'
Vasyl Saienko4c468192020-05-19 11:51:13 +0300154 ironic_baremetal_network_interface:
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300155 type: string
Vasyl Saienko4c468192020-05-19 11:51:13 +0300156 default: 'veth-bm'
Vasyl Saienko1233afd2020-05-21 14:55:21 +0300157 description: 'The name of interface that should be added to ovs bridge in Neutron'
158 ironic_baremetal_network_vbmc_interface:
159 type: string
160 default: 'veth-vbmc'
161 description: 'The name of interface that should be added to ovs bridge with virtualbmc VMs.'
Vasyl Saienko9fd0b5b2020-05-20 13:15:58 +0300162 ironic_baremetal_provisioning_interface:
163 type: string
164 default: 'br-baremetal'
165 description: 'The name of interface on node to which IP ironic services will bind.'
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400166 ironic_baremetal_pxe_interface:
167 type: string
168 default: 'pxe.1000'
169 description: 'Will be used as provisioning_interface for multi-tenancy mode'
170 ironic_mt_enabled:
171 type: boolean
172 default: false
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400173 tungstenfabric_enabled:
174 type: boolean
175 default: false
Ilya Bumarskov128d4d22021-12-27 10:43:09 +0400176 vmx_linux_img:
177 type: string
178 description: Name of image to use for servers
179 default: "vPFC-20170216"
180 vmx_linux_flav:
181 type: string
182 description: Name of image to use for servers
183 default: "vfp.lite"
184 vmx_junos_img:
185 type: string
186 description: Name of image to use for servers
187 default: "vmx-x86-64-17.1R1.8"
188 vmx_junos_flav:
189 type: string
190 description: Name of image to use for servers
191 default: "vcp.lite"
192 vmx_gateway_ip:
193 type: string
194 description: Default GW for vmx
195 default: '10.10.0.1'
196 vmx_lo_ip:
197 type: string
198 description: Ip of lo interface for vmx
199 default: '10.199.199.199'
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200200 tun_network_cidr:
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400201 type: string
202 default: '10.15.0.0/24'
Mykyta Karpin2aba4122020-12-02 15:03:09 +0200203 # When tun interface is added to ovs bridge inside vm,
204 # and arp responder is enabled on undercloud,
205 # ip adresses from tun network pool can't be used for
206 # configuring vxlan tunnels through ovs bridge (https://mirantis.jira.com/browse/PRODX-9337).
207 # Ip addresses unknown for arp responder should be used.
208 # In deployment pipeline addresses assigned by openstack to advanced compute nodes
209 # are changed inside instance to 10.15.0.1XX for this case.
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200210 tun_network_pool_start:
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400211 type: string
212 default: '10.15.0.2'
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200213 tun_network_pool_end:
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400214 type: string
215 default: '10.15.0.99'
Ilya Bumarskov128d4d22021-12-27 10:43:09 +0400216 tun_network_ext_router_ip:
217 type: string
218 description: IP address of vsrx/vmx in data network
219 default: ''
Anton Samoylov1af95862021-05-24 22:25:42 +0400220 tun_network_host_routes:
221 type: json
222 description: >
223 List of dicts with host routes in tunnel subnet, e.g:
224 - "destination": "10.100.100.1/32"
225 "nexthop": "172.16.1.1"
226 default: []
Ilya Bumarskov128d4d22021-12-27 10:43:09 +0400227 evpn_network_cidr:
228 type: string
229 default: '10.20.100.0/24'
230 evpn_network_ipam_pool_start:
231 type: string
232 description: pool start which is used as pool for IPAM and assigned to instances port
233 default: '10.20.100.2'
234 evpn_network_ipam_pool_end:
235 type: string
236 description: pool end which is used as pool for IPAM and assigned to instances port
237 default: '10.20.100.99'
238 evpn_network_pool_start:
239 type: string
240 default: '10.20.100.105'
241 evpn_network_pool_end:
242 type: string
243 default: '10.20.100.200'
244 evpn_network_vmx_ip:
245 type: string
246 description: IP address of vmx in a network for evpn test
247 default: ''
Dennis Dmitrievea894212020-03-12 21:36:43 +0200248 ucp_metadata:
249 type: json
250 default: {"role":"ucp"}
Mykyta Karpin9df830a2024-09-12 14:25:01 +0200251 ucp_audit_log_level:
252 type: string
253 default: ""
Dennis Dmitrievea894212020-03-12 21:36:43 +0200254 master_metadata:
255 type: json
256 default: {"role":"master"}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100257 worker_metadata:
258 type: json
sgudzb94b4c62020-02-05 13:21:25 +0200259 default: {}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100260 cmp_metadata:
261 type: json
sgudzb94b4c62020-02-05 13:21:25 +0200262 default: {}
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200263 acmp_metadata:
264 type: json
265 default: {}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100266 gtw_metadata:
267 type: json
sgudzb94b4c62020-02-05 13:21:25 +0200268 default: {}
269 lma_metadata:
270 type: json
271 default: {}
272 osd_metadata:
273 type: json
274 default: {}
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200275 frr_metadata:
276 type: json
277 default: {}
sgudz43eb82b2020-02-11 16:36:48 +0200278 ntw_metadata:
279 type: json
280 default: {}
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300281 vbmc_metadata:
282 type: json
283 default: {}
Mykyta Karpinf24e01a2022-02-04 17:22:38 +0200284 tsrv_metadata:
285 type: json
Oleksandr Kononenko85907a32023-04-03 10:18:17 +0300286 default: {"labels": {"tempest": "enabled", "stepler": "enabled", "local-volume-provisioner": "enabled"}}
sgudzfe58e8a2020-02-11 13:31:40 +0200287 ucp_flavor:
288 type: string
Mykyta Karpin21eea7e2022-02-17 09:10:08 +0000289 default: 'mosk.s.ucp'
sgudzfe58e8a2020-02-11 13:31:40 +0200290 masters_flavor:
291 type: string
Vasyl Saienko230242f2020-04-07 12:46:05 +0300292 default: 'system.compact.openstack.proxy'
sgudzfe58e8a2020-02-11 13:31:40 +0200293 workers_flavor:
294 type: string
295 default: 'system.compact.openstack.control'
296 cmps_flavor:
297 type: string
298 default: 'system.compact.openstack.control'
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200299 acmps_flavor:
300 type: string
301 default: 'system.compact.openstack.control.ephemeral.numa'
sgudzfe58e8a2020-02-11 13:31:40 +0200302 gtws_flavor:
303 type: string
304 default: 'system.compact.openstack.control'
305 lmas_flavor:
306 type: string
307 default: 'system.compact.openstack.control'
308 osds_flavor:
309 type: string
Mateusz Lose2ad0772020-02-27 21:41:54 +0100310 default: 'system.virtual.ceph.osd'
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200311 frrs_flavor:
312 type: string
313 default: 'system.compact.openstack.control'
sgudz43eb82b2020-02-11 16:36:48 +0200314 ntws_flavor:
315 type: string
Alexander Ignatov8328a3c2021-10-15 18:45:02 +0400316 default: 'mos.tf.control'
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300317 vbmcs_flavor:
318 type: string
319 default: 'system.compact.openstack.control'
Mykyta Karpinf24e01a2022-02-04 17:22:38 +0200320 tsrvs_flavor:
321 type: string
322 default: 'mosk.s.testserver'
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200323 functions_override:
324 type: string
Vasyl Saienko9b688992020-02-13 13:50:53 +0200325 default: ''
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200326 docker_ee_url:
327 type: string
Oleksandr Kononenkobf4ecf82024-02-01 11:02:53 +0200328 default: 'https://repos.mirantis.com/ubuntu'
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200329 docker_ee_release:
330 type: string
331 default: 'stable-19.03'
Vasyl Saienkofa714102024-03-22 09:30:25 +0200332 docker_ee_packages:
333 type: string
334 default: "docker-ee"
Vasyl Saienko92133c02024-05-16 10:18:51 +0300335 kubernetes_container_runtime:
336 type: string
337 default: 'docker'
Vasyl Saienkob59853e2020-05-25 10:15:26 +0300338 docker_ucp_image:
339 type: string
340 default: 'docker/ucp:3.2.4'
Vasyl Saienkocfbedc72021-02-15 18:02:56 +0200341 docker_ucp_swarm_data_port:
342 type: string
343 default: 4789
Vasyl Saienkoa94bf182023-04-01 10:42:17 +0000344 binary_base_url:
345 type: string
346 default: 'http://binary.mirantis.com'
Oleh Hryhorov367e3ff2020-02-13 10:35:52 +0200347 tunnel_interface:
348 type: string
349 default: ''
350 live_migration_interface:
351 type: string
352 default: ''
353 metallb_address_pools:
354 type: comma_delimited_list
355 default: ''
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200356 hardware_metadata:
357 description: The content of lab metadata.
358 default: ''
359 type: string
Mykyta Karpin6a153c52020-11-03 15:21:38 +0200360 huge_pages:
361 description: >
362 String formatted as '<Number of Gb for 1Gb huge pages>,<Number of Mb for 2Mb huge pages'
363 If number is equal to 0 alloacation of huge pages won't be configured.
364 default: '0,0'
365 type: string
Oleh Hryhorov43bbc8c2020-12-03 15:30:09 +0200366 single_node:
367 description: If set true then AIO is going to be deployed.
368 type: string
369 default: 'false'
Vasyl Saienko6a6c9f02021-02-08 09:54:29 +0200370 vsrx_image:
371 type: string
Anton Samoylov4a85a962021-09-29 10:30:08 +0400372 default: mos-vsrx-acc-fl-tun
Vasyl Saienko6a6c9f02021-02-08 09:54:29 +0200373 vsrx_flavor:
374 type: string
375 default: oc_vsrx
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200376 cmp_lvm_loop_device_size:
377 description: >
378 The size of loop device for computes to configure LVM on, in gigabytes
379 type: number
Vasyl Saienkob78b8902021-03-09 17:39:42 +0200380 default: 50
Vasyl Saienkocd302062021-04-21 22:25:18 +0300381 cmp_cinder_lvm_loop_device_size:
382 description: >
383 The size of loop device for computes to configure LVM on, in gigabytes
384 type: number
385 default: 0
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200386 acmp_lvm_loop_device_size:
387 description: >
388 The size of loop device for advanced computes to configure LVM on, in gigabytes
389 type: number
390 default: 0
Vasyl Saienkocd302062021-04-21 22:25:18 +0300391 acmp_cinder_lvm_loop_device_size:
392 description: >
393 The size of loop device for advanced computes to configure LVM on, in gigabytes
394 type: number
395 default: 0
Vasyl Saienko8d34ad02021-07-26 11:55:23 +0300396 kubernetes_installer:
397 type: string
398 default: "ucp"
Michael Polenchuk4f2e7762022-09-16 17:36:28 +0400399 kubectl_version:
400 type: string
401 default: 1.18.8
Denis Egorenkoe09856a2021-11-01 13:52:46 +0400402 volumes_per_osd_instance:
403 description: >
404 Number of extra volumes for OSD instance
405 type: number
406 default: 0
Vasyl Saienkofa9bed02021-11-04 18:52:45 +0200407 availability_zone:
408 type: string
409 default: nova
Michael Polenchuk06bfa152022-02-15 17:50:04 +0400410 secure_overlay_enabled:
411 type: boolean
412 default: false
Ilya Bumarskov128d4d22021-12-27 10:43:09 +0400413 vsrx_enabled:
414 type: boolean
415 default: false
416 vmx_enabled:
417 type: boolean
418 default: false
Vasyl Saienko4a2832d2024-05-16 09:00:03 +0300419 devops_utils_refspec:
420 type: string
421 default: 'master'
Vasyl Saienko3e8ba732024-09-09 14:07:49 +0300422 k0s_version:
423 type: string
424 default: ''
Mykyta Karpinb3a7f292024-10-18 15:44:36 +0200425 external_k8s_service_network_cidr:
426 type: string
427 default: '10.172.1.0/24'
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100428
Oleh Hryhorovcd1a3bd2020-12-04 13:21:06 +0200429conditions:
430 aio_deploy:
431 equals:
432 - get_param: single_node
433 - 'true'
Ilya Bumarskov128d4d22021-12-27 10:43:09 +0400434 tf:
435 equals:
436 - get_param: tungstenfabric_enabled
437 - true
438 vsrx_deploy:
439 equals:
440 - get_param: vsrx_enabled
441 - true
442 vmx_deploy:
443 and:
444 - tf
445 - equals:
446 - get_param: vmx_enabled
447 - true
448 - not:
449 vsrx_deploy
450 ext_router_deploy:
451 or:
452 - vsrx_deploy
453 - vmx_deploy
Oleh Hryhorovcd1a3bd2020-12-04 13:21:06 +0200454
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100455resources:
Vasyl Saienkocdc11cf2020-11-20 17:39:00 +0200456 keypair_name:
457 type: OS::Heat::RandomString
458 properties:
459 character_classes: [{"class": "hexdigits", "min": 1}]
460 length: 128
461 salt: constant
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100462 key_pair:
463 type: OS::Nova::KeyPair
464 properties:
Vasyl Saienkocdc11cf2020-11-20 17:39:00 +0200465 name: { get_attr: [keypair_name, value] }
466 public_key: { get_param: cluster_public_key }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100467 save_private_key: false
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100468
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200469 tun_network:
470 type: MCP2::NetworkTun
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400471 properties:
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200472 tun_network_cidr: { get_param: tun_network_cidr }
473 tun_network_pool_start: { get_param: tun_network_pool_start }
474 tun_network_pool_end: { get_param: tun_network_pool_end }
Anton Samoylov1af95862021-05-24 22:25:42 +0400475 tun_network_host_routes: { get_param: tun_network_host_routes }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400476
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100477 private_floating_network:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200478 type: MCP2::NetworkPrvFl
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100479 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200480 private_floating_network_cidr: { get_param: private_floating_network_cidr }
Oleh Hryhorov2a7b3d72020-02-27 17:04:24 +0200481 private_floating_network_ipam_pool_start: { get_param: private_floating_network_ipam_pool_start }
Oleh Hryhorov7b0157d2020-02-27 18:20:11 +0200482 private_floating_network_ipam_pool_end: { get_param: private_floating_network_ipam_pool_end }
Ilya Bumarskov128d4d22021-12-27 10:43:09 +0400483
Mykyta Karpinb3a7f292024-10-18 15:44:36 +0200484 storage_network:
485 type: MCP2::NetworkAccStorage
486 properties:
487 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
488 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Mykyta Karpin1ac7cc02024-11-06 16:10:22 +0100489 storage_frontend_network_ipam_pool_start: { get_param: storage_frontend_network_ipam_pool_start }
490 storage_frontend_network_ipam_pool_end: { get_param: storage_frontend_network_ipam_pool_end }
Mykyta Karpinb3a7f292024-10-18 15:44:36 +0200491
492 accessible_network:
493 depends_on:
494 - private_floating_network
495 - storage_network
496 type: MCP2::NetworkAcc
497 properties:
498 public_net_id: { get_param: public_net_id }
499 control_network_cidr: { get_param: control_network_cidr }
500 dns_nameservers: { get_param: dns_nameservers }
501 control_network_host_routes: { get_param: control_network_host_routes }
502 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
503 vsrx_enabled: { get_param: vsrx_enabled }
504 control_network_ext_router_ip: { get_param: control_network_ext_router_ip }
505 private_floating_network: {get_attr: [private_floating_network, private_floating_network_id]}
506 private_floating_network_cidr: { get_param: private_floating_network_cidr }
507 private_floating_network_gateway: { get_param: private_floating_network_gateway }
508 private_floating_subnet: {get_attr: [private_floating_network, private_floating_subnet_id]}
509 storage_frontend_network: {get_attr: [storage_network, storage_frontend_network_id]}
510 storage_frontend_network_gateway: { get_param: storage_frontend_network_gateway }
511 storage_frontend_subnet: {get_attr: [storage_network, storage_frontend_subnet_id]}
512
Ilya Bumarskov128d4d22021-12-27 10:43:09 +0400513 vmx:
514 depends_on:
515 - private_floating_network
516 - accessible_network
517 - tun_network
518 condition: vmx_deploy
519 type: MCP2::VMX
520 properties:
521 linux_img: { get_param: vmx_linux_img }
522 linux_flav: { get_param: vmx_linux_flav }
523 junos_img: { get_param: vmx_junos_img }
524 junos_flav: { get_param: vmx_junos_flav }
525 vmx_gateway_ip: { get_param: vmx_gateway_ip }
526 vmx_lo_ip: { get_param: vmx_lo_ip }
527 accessible_network_id: { get_attr: [ accessible_network, public_network ] }
528 control_network_cidr: { get_param: control_network_cidr }
529 control_network_vmx_ip: { get_param: control_network_ext_router_ip }
530 tun_network_id: { get_attr: [ tun_network, tun_network_id ] }
531 tun_network_vmx_ip: { get_param: tun_network_ext_router_ip }
532 tun_network_cidr: { get_param: tun_network_cidr }
533 private_floating_network_id: { get_attr: [private_floating_network, private_floating_network_id] }
534 private_floating_network_cidr: { get_param: private_floating_network_cidr }
535 private_floating_network_gateway: { get_param: private_floating_network_gateway }
536 evpn_network_cidr: { get_param: evpn_network_cidr }
537 evpn_network_ipam_pool_start: { get_param: evpn_network_ipam_pool_start }
538 evpn_network_ipam_pool_end: { get_param: evpn_network_ipam_pool_end }
539 evpn_network_vmx_ip: { get_param: evpn_network_vmx_ip }
540 public_net_id: { get_param: public_net_id }
541
542 vsrx:
543 depends_on:
544 - private_floating_network
545 - accessible_network
546 - tun_network
547 condition: vsrx_deploy
548 type: MCP2::VSRX
549 properties:
550 private_floating_network_id: { get_attr: [private_floating_network, private_floating_network_id] }
551 private_floating_network_gateway: { get_param: private_floating_network_gateway }
552 control_network_vsrx_ip: { get_param: control_network_ext_router_ip }
553 accessible_network: { get_attr: [ accessible_network, public_network ] }
554 data_network_vsrx_ip: { get_param: tun_network_ext_router_ip }
555 tun_network: { get_attr: [ tun_network, tun_network_id ] }
Vasyl Saienko6a6c9f02021-02-08 09:54:29 +0200556 vsrx_image: { get_param: vsrx_image }
557 vsrx_flavor: { get_param: vsrx_flavor }
Mikhail Polenchuk3cf123d2021-03-12 14:23:24 +0000558 public_net_id: { get_param: public_net_id }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100559
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300560 ironic_baremetal_network:
561 type: MCP2::NetworkIronicFlat
562 properties:
563 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
564 ironic_baremetal_network_ipam_pool_start: { get_param: ironic_baremetal_network_ipam_pool_start }
565 ironic_baremetal_network_ipam_pool_end: { get_param: ironic_baremetal_network_ipam_pool_end }
566 ironic_baremetal_network_gateway: {get_param: ironic_baremetal_network_gateway}
567
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100568 ucp:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100569 depends_on:
570 - accessible_network
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200571 type: MCP2::SrvInstances
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100572 properties:
Dennis Dmitrievea894212020-03-12 21:36:43 +0200573 metadata: { get_param: ucp_metadata}
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200574 docker_ee_url: { get_param: docker_ee_url }
575 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +0200576 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +0300577 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Vasyl Saienkob59853e2020-05-25 10:15:26 +0300578 docker_ucp_image: { get_param: docker_ucp_image}
Vasyl Saienkocfbedc72021-02-15 18:02:56 +0200579 docker_ucp_swarm_data_port: { get_param: docker_ucp_swarm_data_port }
Stepan Rogov60bc3522020-12-16 17:43:25 +0300580 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +0000581 binary_base_url: { get_param: binary_base_url }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200582 node_type: "ucp"
Vasyl Saienko8d34ad02021-07-26 11:55:23 +0300583 kubernetes_installer: { get_param: kubernetes_installer }
Vasyl Saienkodef50442020-11-20 20:06:15 +0200584 key_name: { get_attr: [keypair_name, value] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200585 image: { get_param: image }
586 flavor: { get_param: ucp_flavor }
587 accessible_network: { get_attr: [accessible_network, public_network] }
588 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
589 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
590 private_floating_interface: { get_param: private_floating_interface }
591 private_floating_network_cidr: { get_param: private_floating_network_cidr }
592 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
593 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200594 control_network_cidr: { get_param: control_network_cidr }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200595 functions_override: { get_param: functions_override }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200596 hardware_metadata: { get_param: hardware_metadata}
Oleh Hryhorov43bbc8c2020-12-03 15:30:09 +0200597 single_node: { get_param: single_node}
Vasyl Saienkofa9bed02021-11-04 18:52:45 +0200598 availability_zone: { get_param: availability_zone }
Michael Polenchuk06bfa152022-02-15 17:50:04 +0400599 secure_overlay_enabled: { get_param: secure_overlay_enabled }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +0400600 kubectl_version: { get_param: kubectl_version }
Vasyl Saienko4a2832d2024-05-16 09:00:03 +0300601 devops_utils_refspec: { get_param: devops_utils_refspec }
Vasyl Saienko3e8ba732024-09-09 14:07:49 +0300602 k0s_version: { get_param: k0s_version }
Mykyta Karpin9df830a2024-09-12 14:25:01 +0200603 ucp_audit_log_level: { get_param: ucp_audit_log_level }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200604
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100605 masters:
606 type: OS::Heat::ResourceGroup
607 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200608 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100609 properties:
610 count: { get_param: masters_size }
611 resource_def:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200612 type: MCP2::SrvInstances
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100613 properties:
Dennis Dmitrievea894212020-03-12 21:36:43 +0200614 metadata: { get_param: master_metadata}
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200615 node_type: "master"
Vasyl Saienko8d34ad02021-07-26 11:55:23 +0300616 kubernetes_installer: { get_param: kubernetes_installer }
Vasyl Saienkodef50442020-11-20 20:06:15 +0200617 key_name: { get_attr: [keypair_name, value] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200618 image: { get_param: image }
619 flavor: { get_param: masters_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200620 docker_ee_url: { get_param: docker_ee_url }
621 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +0200622 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +0300623 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300624 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300625 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +0000626 binary_base_url: { get_param: binary_base_url }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200627 accessible_network: { get_attr: [accessible_network, public_network] }
628 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
629 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
630 private_floating_interface: { get_param: private_floating_interface }
631 private_floating_network_cidr: { get_param: private_floating_network_cidr }
632 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
633 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200634 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200635 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200636 functions_override: { get_param: functions_override }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200637 hardware_metadata: { get_param: hardware_metadata}
Vasyl Saienkofa9bed02021-11-04 18:52:45 +0200638 availability_zone: { get_param: availability_zone }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +0400639 kubectl_version: { get_param: kubectl_version }
Vasyl Saienko4a2832d2024-05-16 09:00:03 +0300640 devops_utils_refspec: { get_param: devops_utils_refspec }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200641
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100642 workers:
643 type: OS::Heat::ResourceGroup
644 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200645 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100646 properties:
647 count: { get_param: worker_size }
648 resource_def:
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200649 type: MCP2::SrvInstancesCephOSD
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100650 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200651 metadata: { get_param: worker_metadata}
652 node_type: "worker"
Vasyl Saienko8d34ad02021-07-26 11:55:23 +0300653 kubernetes_installer: { get_param: kubernetes_installer }
Vasyl Saienkodef50442020-11-20 20:06:15 +0200654 key_name: { get_attr: [keypair_name, value] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100655 image: { get_param: image }
Vasyl Saienko6ff0c1b2020-03-05 07:52:02 +0200656 flavor: { get_param: workers_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200657 docker_ee_url: { get_param: docker_ee_url }
658 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +0200659 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +0300660 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300661 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300662 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +0000663 binary_base_url: { get_param: binary_base_url }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200664 accessible_network: { get_attr: [accessible_network, public_network] }
665 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
666 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
667 private_floating_interface: { get_param: private_floating_interface }
668 private_floating_network_cidr: { get_param: private_floating_network_cidr }
669 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100670 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200671 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200672 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200673 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200674 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200675 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
676 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
677 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200678 storage_backend_interface: { get_param: storage_backend_interface }
679 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
680 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
681 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300682 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
683 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300684 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400685 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
686 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400687 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200688 tun_network: { get_attr: [tun_network, tun_network_id] }
689 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200690 hardware_metadata: { get_param: hardware_metadata}
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200691 lvm_loop_device_size: { get_param: cmp_lvm_loop_device_size }
Vasyl Saienkocd302062021-04-21 22:25:18 +0300692 cinder_lvm_loop_device_size: { get_param: cmp_cinder_lvm_loop_device_size }
Vasyl Saienkofa9bed02021-11-04 18:52:45 +0200693 availability_zone: { get_param: availability_zone }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +0400694 kubectl_version: { get_param: kubectl_version }
Vasyl Saienko4a2832d2024-05-16 09:00:03 +0300695 devops_utils_refspec: { get_param: devops_utils_refspec }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200696
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100697 cmps:
698 type: OS::Heat::ResourceGroup
699 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200700 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100701 properties:
702 count: { get_param: cmp_size }
703 resource_def:
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200704 type: MCP2::SrvInstancesCephOSD
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100705 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200706 metadata: { get_param: cmp_metadata }
707 node_type: "worker"
Vasyl Saienko8d34ad02021-07-26 11:55:23 +0300708 kubernetes_installer: { get_param: kubernetes_installer }
Vasyl Saienkodef50442020-11-20 20:06:15 +0200709 key_name: { get_attr: [keypair_name, value] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100710 image: { get_param: image }
Vasyl Saienko6ff0c1b2020-03-05 07:52:02 +0200711 flavor: { get_param: cmps_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200712 docker_ee_url: { get_param: docker_ee_url }
713 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +0200714 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +0300715 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300716 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300717 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +0000718 binary_base_url: { get_param: binary_base_url }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200719 accessible_network: { get_attr: [accessible_network, public_network] }
720 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
721 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
722 private_floating_interface: { get_param: private_floating_interface }
723 private_floating_network_cidr: { get_param: private_floating_network_cidr }
724 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100725 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200726 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200727 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200728 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200729 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200730 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
731 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
732 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200733 storage_backend_interface: { get_param: storage_backend_interface }
734 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
735 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
736 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300737 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
738 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300739 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400740 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
741 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400742 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200743 tun_network: { get_attr: [tun_network, tun_network_id] }
744 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200745 hardware_metadata: { get_param: hardware_metadata}
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200746 lvm_loop_device_size: { get_param: cmp_lvm_loop_device_size }
Vasyl Saienkocd302062021-04-21 22:25:18 +0300747 cinder_lvm_loop_device_size: { get_param: cmp_cinder_lvm_loop_device_size }
Vasyl Saienkofa9bed02021-11-04 18:52:45 +0200748 availability_zone: { get_param: availability_zone }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +0400749 kubectl_version: { get_param: kubectl_version }
Vasyl Saienko4a2832d2024-05-16 09:00:03 +0300750 devops_utils_refspec: { get_param: devops_utils_refspec }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200751
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200752 acmps:
753 type: OS::Heat::ResourceGroup
754 depends_on:
755 - ucp
756 properties:
757 count: { get_param: acmp_size }
758 resource_def:
759 type: MCP2::SrvInstancesCephOSD
760 properties:
761 metadata: { get_param: acmp_metadata }
762 node_type: "worker"
Vasyl Saienko8d34ad02021-07-26 11:55:23 +0300763 kubernetes_installer: { get_param: kubernetes_installer }
Vasyl Saienkodef50442020-11-20 20:06:15 +0200764 key_name: { get_attr: [keypair_name, value] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200765 image: { get_param: image }
766 flavor: { get_param: acmps_flavor }
767 docker_ee_url: { get_param: docker_ee_url }
768 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +0200769 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +0300770 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200771 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300772 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +0000773 binary_base_url: { get_param: binary_base_url }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200774 accessible_network: { get_attr: [accessible_network, public_network] }
775 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
776 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
777 private_floating_interface: { get_param: private_floating_interface }
778 private_floating_network_cidr: { get_param: private_floating_network_cidr }
779 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
780 public_net_id: { get_param: public_net_id }
781 control_network_cidr: { get_param: control_network_cidr }
782 ucp_master_host: { get_attr: [ucp, server_private_ip] }
783 functions_override: { get_param: functions_override }
784 storage_frontend_interface: { get_param: storage_frontend_interface }
785 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
786 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
787 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
788 storage_backend_interface: { get_param: storage_backend_interface }
789 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
790 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
791 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
792 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
793 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
794 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
795 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
796 ironic_mt_enabled: { get_param: ironic_mt_enabled }
797 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200798 tun_network: { get_attr: [tun_network, tun_network_id] }
799 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200800 hardware_metadata: { get_param: hardware_metadata}
Mykyta Karpin6a153c52020-11-03 15:21:38 +0200801 huge_pages: { get_param: huge_pages }
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200802 lvm_loop_device_size: { get_param: acmp_lvm_loop_device_size }
Vasyl Saienkocd302062021-04-21 22:25:18 +0300803 cinder_lvm_loop_device_size: { get_param: acmp_cinder_lvm_loop_device_size }
Vasyl Saienkofa9bed02021-11-04 18:52:45 +0200804 availability_zone: { get_param: availability_zone }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +0400805 kubectl_version: { get_param: kubectl_version }
Vasyl Saienko4a2832d2024-05-16 09:00:03 +0300806 devops_utils_refspec: { get_param: devops_utils_refspec }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200807
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100808 gtws:
809 type: OS::Heat::ResourceGroup
810 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200811 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100812 properties:
813 count: { get_param: gtw_size }
814 resource_def:
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200815 type: MCP2::SrvInstancesCeph
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100816 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200817 metadata: { get_param: gtw_metadata }
818 node_type: "worker"
Vasyl Saienko8d34ad02021-07-26 11:55:23 +0300819 kubernetes_installer: { get_param: kubernetes_installer }
Vasyl Saienkodef50442020-11-20 20:06:15 +0200820 key_name: { get_attr: [keypair_name, value] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100821 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200822 flavor: { get_param: gtws_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200823 docker_ee_url: { get_param: docker_ee_url }
824 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +0200825 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +0300826 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300827 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300828 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +0000829 binary_base_url: { get_param: binary_base_url }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200830 accessible_network: { get_attr: [accessible_network, public_network] }
831 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
832 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
833 private_floating_interface: { get_param: private_floating_interface }
834 private_floating_network_cidr: { get_param: private_floating_network_cidr }
835 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100836 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200837 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200838 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200839 functions_override: { get_param: functions_override }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200840 storage_frontend_interface: { get_param: storage_frontend_interface }
841 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
842 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
843 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300844 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
845 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300846 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400847 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
848 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200849 hardware_metadata: { get_param: hardware_metadata}
Vasyl Saienkofa9bed02021-11-04 18:52:45 +0200850 availability_zone: { get_param: availability_zone }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +0400851 kubectl_version: { get_param: kubectl_version }
Vasyl Saienko4a2832d2024-05-16 09:00:03 +0300852 devops_utils_refspec: { get_param: devops_utils_refspec }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100853
sgudzb94b4c62020-02-05 13:21:25 +0200854 lmas:
855 type: OS::Heat::ResourceGroup
856 depends_on:
857 - ucp
858 properties:
859 count: { get_param: lma_size }
860 resource_def:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100861 type: MCP2::SrvInstancesCeph
sgudzb94b4c62020-02-05 13:21:25 +0200862 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200863 metadata: { get_param: lma_metadata }
864 node_type: "worker"
Vasyl Saienko8d34ad02021-07-26 11:55:23 +0300865 kubernetes_installer: { get_param: kubernetes_installer }
Vasyl Saienkodef50442020-11-20 20:06:15 +0200866 key_name: { get_attr: [keypair_name, value] }
sgudzb94b4c62020-02-05 13:21:25 +0200867 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200868 flavor: { get_param: lmas_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200869 docker_ee_url: { get_param: docker_ee_url }
870 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +0200871 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +0300872 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300873 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300874 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +0000875 binary_base_url: { get_param: binary_base_url }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200876 accessible_network: { get_attr: [accessible_network, public_network] }
877 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
878 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
879 private_floating_interface: { get_param: private_floating_interface }
880 private_floating_network_cidr: { get_param: private_floating_network_cidr }
881 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
sgudzb94b4c62020-02-05 13:21:25 +0200882 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200883 control_network_cidr: { get_param: control_network_cidr }
sgudzb94b4c62020-02-05 13:21:25 +0200884 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200885 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200886 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200887 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
888 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
889 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienko73d6ec62020-05-14 20:26:25 +0300890 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
891 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300892 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400893 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
894 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200895 hardware_metadata: { get_param: hardware_metadata}
Vasyl Saienkofa9bed02021-11-04 18:52:45 +0200896 availability_zone: { get_param: availability_zone }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +0400897 kubectl_version: { get_param: kubectl_version }
Vasyl Saienko4a2832d2024-05-16 09:00:03 +0300898 devops_utils_refspec: { get_param: devops_utils_refspec }
sgudzb94b4c62020-02-05 13:21:25 +0200899
900 osds:
901 type: OS::Heat::ResourceGroup
902 depends_on:
903 - ucp
904 properties:
905 count: { get_param: osd_size }
906 resource_def:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100907 type: MCP2::SrvInstancesCephOSD
sgudzb94b4c62020-02-05 13:21:25 +0200908 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200909 metadata: { get_param: osd_metadata }
910 node_type: "worker"
Vasyl Saienko8d34ad02021-07-26 11:55:23 +0300911 kubernetes_installer: { get_param: kubernetes_installer }
Vasyl Saienkodef50442020-11-20 20:06:15 +0200912 key_name: { get_attr: [keypair_name, value] }
sgudzb94b4c62020-02-05 13:21:25 +0200913 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200914 flavor: { get_param: osds_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200915 docker_ee_url: { get_param: docker_ee_url }
916 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +0200917 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +0300918 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300919 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300920 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +0000921 binary_base_url: { get_param: binary_base_url }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200922 accessible_network: { get_attr: [accessible_network, public_network] }
923 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
924 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
925 private_floating_interface: { get_param: private_floating_interface }
926 private_floating_network_cidr: { get_param: private_floating_network_cidr }
927 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
sgudzb94b4c62020-02-05 13:21:25 +0200928 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200929 control_network_cidr: { get_param: control_network_cidr }
sgudzb94b4c62020-02-05 13:21:25 +0200930 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200931 functions_override: { get_param: functions_override }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200932 storage_frontend_interface: { get_param: storage_frontend_interface }
933 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
934 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
935 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
936 storage_backend_interface: { get_param: storage_backend_interface }
937 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
938 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
939 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko73d6ec62020-05-14 20:26:25 +0300940 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
941 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300942 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400943 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
944 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400945 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200946 tun_network: { get_attr: [tun_network, tun_network_id] }
947 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200948 hardware_metadata: { get_param: hardware_metadata}
Denis Egorenkoe09856a2021-11-01 13:52:46 +0400949 num_volumes: { get_param: volumes_per_osd_instance }
Vasyl Saienkofa9bed02021-11-04 18:52:45 +0200950 availability_zone: { get_param: availability_zone }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +0400951 kubectl_version: { get_param: kubectl_version }
Vasyl Saienko4a2832d2024-05-16 09:00:03 +0300952 devops_utils_refspec: { get_param: devops_utils_refspec }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100953
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200954 frrs: # spares for osds/cmps
955 type: OS::Heat::ResourceGroup
956 depends_on:
957 - ucp
958 properties:
959 count: { get_param: frr_size }
960 resource_def:
961 type: MCP2::SrvInstancesCephOSD
962 properties:
963 metadata: { get_param: frr_metadata }
964 node_type: "frr"
Vasyl Saienko8d34ad02021-07-26 11:55:23 +0300965 kubernetes_installer: { get_param: kubernetes_installer }
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200966 key_name: { get_attr: [keypair_name, value] }
967 image: { get_param: image }
968 flavor: { get_param: frrs_flavor }
969 docker_ee_url: { get_param: docker_ee_url }
970 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +0200971 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +0300972 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200973 docker_ucp_image: { get_param: docker_ucp_image}
974 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +0000975 binary_base_url: { get_param: binary_base_url }
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200976 accessible_network: { get_attr: [accessible_network, public_network] }
977 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
978 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
979 private_floating_interface: { get_param: private_floating_interface }
980 private_floating_network_cidr: { get_param: private_floating_network_cidr }
981 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
982 public_net_id: { get_param: public_net_id }
983 control_network_cidr: { get_param: control_network_cidr }
984 ucp_master_host: { get_attr: [ucp, server_private_ip] }
985 functions_override: { get_param: functions_override }
986 storage_frontend_interface: { get_param: storage_frontend_interface }
987 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
988 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
989 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
990 storage_backend_interface: { get_param: storage_backend_interface }
991 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
992 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
993 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
994 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
995 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
996 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
997 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
998 ironic_mt_enabled: { get_param: ironic_mt_enabled }
999 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
1000 tun_network: { get_attr: [tun_network, tun_network_id] }
1001 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
1002 hardware_metadata: { get_param: hardware_metadata}
Vasyl Saienko846c6342021-02-24 17:01:36 +02001003 frr_bgp_neighbors: { list_join: [',', {get_attr: [workers, server_tun_ip]}] }
Vasyl Saienkofa9bed02021-11-04 18:52:45 +02001004 availability_zone: { get_param: availability_zone }
Mykyta Karpin56073192024-10-29 14:32:15 +01001005 devops_utils_refspec: { get_param: devops_utils_refspec }
Vasyl Saienko25bb75b2021-02-15 12:22:33 +02001006
sgudz43eb82b2020-02-11 16:36:48 +02001007 ntws:
1008 type: OS::Heat::ResourceGroup
1009 depends_on:
1010 - ucp
1011 properties:
1012 count: { get_param: ntw_size }
1013 resource_def:
Anton Samoylov23f52c92021-05-12 22:22:30 +04001014 type: MCP2::SrvInstancesCephOSD
sgudz43eb82b2020-02-11 16:36:48 +02001015 properties:
1016 metadata: { get_param: ntw_metadata }
1017 node_type: "worker"
Vasyl Saienko8d34ad02021-07-26 11:55:23 +03001018 kubernetes_installer: { get_param: kubernetes_installer }
Vasyl Saienkodef50442020-11-20 20:06:15 +02001019 key_name: { get_attr: [keypair_name, value] }
sgudz43eb82b2020-02-11 16:36:48 +02001020 image: { get_param: image }
1021 flavor: { get_param: ntws_flavor }
1022 docker_ee_url: { get_param: docker_ee_url }
1023 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +02001024 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +03001025 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +03001026 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +03001027 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +00001028 binary_base_url: { get_param: binary_base_url }
sgudz43eb82b2020-02-11 16:36:48 +02001029 accessible_network: { get_attr: [accessible_network, public_network] }
1030 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
1031 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
1032 private_floating_interface: { get_param: private_floating_interface }
1033 private_floating_network_cidr: { get_param: private_floating_network_cidr }
1034 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
1035 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +02001036 control_network_cidr: { get_param: control_network_cidr }
sgudz43eb82b2020-02-11 16:36:48 +02001037 ucp_master_host: { get_attr: [ucp, server_private_ip] }
1038 functions_override: { get_param: functions_override }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +02001039 storage_frontend_interface: { get_param: storage_frontend_interface }
1040 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
1041 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
1042 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Anton Samoylov23f52c92021-05-12 22:22:30 +04001043 storage_backend_interface: { get_param: storage_backend_interface }
1044 storage_backend_network: { get_attr: [ storage_network, storage_backend_network_id ] }
1045 storage_backend_subnet_id: { get_attr: [ storage_network, storage_backend_subnet_id ] }
1046 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko73d6ec62020-05-14 20:26:25 +03001047 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
1048 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +03001049 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +04001050 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
1051 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylov23f52c92021-05-12 22:22:30 +04001052 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
1053 tun_network: { get_attr: [tun_network, tun_network_id] }
1054 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +02001055 hardware_metadata: { get_param: hardware_metadata}
Vasyl Saienkofa9bed02021-11-04 18:52:45 +02001056 availability_zone: { get_param: availability_zone }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +04001057 kubectl_version: { get_param: kubectl_version }
Vasyl Saienko4a2832d2024-05-16 09:00:03 +03001058 devops_utils_refspec: { get_param: devops_utils_refspec }
sgudz43eb82b2020-02-11 16:36:48 +02001059
Vasyl Saienko36f2edf2020-05-14 10:44:52 +03001060 vbmcs:
1061 type: OS::Heat::ResourceGroup
1062 depends_on:
1063 - ucp
1064 properties:
1065 count: { get_param: vbmc_size }
1066 resource_def:
Michael Polenchuk3bfb59f2020-05-15 18:50:14 +04001067 type: MCP2::SrvInstancesCeph
Vasyl Saienko36f2edf2020-05-14 10:44:52 +03001068 properties:
1069 metadata: { get_param: vbmc_metadata}
1070 node_type: "worker"
Vasyl Saienko8d34ad02021-07-26 11:55:23 +03001071 kubernetes_installer: { get_param: kubernetes_installer }
Vasyl Saienkodef50442020-11-20 20:06:15 +02001072 key_name: { get_attr: [keypair_name, value] }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +03001073 image: { get_param: image }
1074 flavor: { get_param: vbmcs_flavor }
1075 docker_ee_url: { get_param: docker_ee_url }
1076 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +02001077 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +03001078 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +03001079 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +03001080 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +00001081 binary_base_url: { get_param: binary_base_url }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +03001082 accessible_network: { get_attr: [accessible_network, public_network] }
1083 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
1084 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
1085 private_floating_interface: { get_param: private_floating_interface }
1086 private_floating_network_cidr: { get_param: private_floating_network_cidr }
1087 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
1088 public_net_id: { get_param: public_net_id }
1089 control_network_cidr: { get_param: control_network_cidr }
1090 ucp_master_host: { get_attr: [ucp, server_private_ip] }
1091 functions_override: { get_param: functions_override }
Michael Polenchuk3bfb59f2020-05-15 18:50:14 +04001092 storage_frontend_interface: { get_param: storage_frontend_interface }
1093 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
1094 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
1095 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Michael Polenchuk21493b32020-05-15 21:08:04 +04001096 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
1097 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +03001098 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +04001099 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
1100 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +03001101 hardware_metadata: { get_param: hardware_metadata}
Vasyl Saienkofa9bed02021-11-04 18:52:45 +02001102 availability_zone: { get_param: availability_zone }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +04001103 kubectl_version: { get_param: kubectl_version }
Vasyl Saienko4a2832d2024-05-16 09:00:03 +03001104 devops_utils_refspec: { get_param: devops_utils_refspec }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +04001105
Mykyta Karpinf24e01a2022-02-04 17:22:38 +02001106 tsrvs:
1107 type: OS::Heat::ResourceGroup
1108 depends_on:
1109 - ucp
1110 properties:
1111 count: { get_param: tsrv_size }
1112 resource_def:
1113 type: MCP2::SrvInstancesCeph
1114 properties:
1115 metadata: { get_param: tsrv_metadata}
1116 node_type: "worker"
1117 kubernetes_installer: { get_param: kubernetes_installer }
1118 key_name: { get_attr: [keypair_name, value] }
1119 image: { get_param: image }
1120 flavor: { get_param: tsrvs_flavor }
1121 docker_ee_url: { get_param: docker_ee_url }
1122 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkofa714102024-03-22 09:30:25 +02001123 docker_ee_packages: { get_param: docker_ee_packages }
Vasyl Saienko92133c02024-05-16 10:18:51 +03001124 kubernetes_container_runtime: { get_param: kubernetes_container_runtime }
Mykyta Karpinf24e01a2022-02-04 17:22:38 +02001125 docker_ucp_image: { get_param: docker_ucp_image}
1126 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienkof8ab92a2023-04-01 10:50:18 +00001127 binary_base_url: { get_param: binary_base_url }
Mykyta Karpinf24e01a2022-02-04 17:22:38 +02001128 accessible_network: { get_attr: [accessible_network, public_network] }
1129 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
1130 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
1131 private_floating_interface: { get_param: private_floating_interface }
1132 private_floating_network_cidr: { get_param: private_floating_network_cidr }
1133 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
1134 public_net_id: { get_param: public_net_id }
1135 control_network_cidr: { get_param: control_network_cidr }
1136 ucp_master_host: { get_attr: [ucp, server_private_ip] }
1137 functions_override: { get_param: functions_override }
1138 storage_frontend_interface: { get_param: storage_frontend_interface }
1139 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
1140 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
1141 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
1142 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
1143 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
1144 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
1145 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
1146 ironic_mt_enabled: { get_param: ironic_mt_enabled }
1147 hardware_metadata: { get_param: hardware_metadata}
1148 availability_zone: { get_param: availability_zone }
Michael Polenchuk4f2e7762022-09-16 17:36:28 +04001149 kubectl_version: { get_param: kubectl_version }
Vasyl Saienko4a2832d2024-05-16 09:00:03 +03001150 devops_utils_refspec: { get_param: devops_utils_refspec }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +03001151
Mykyta Karpinb3a7f292024-10-18 15:44:36 +02001152 k8s_external_service_route:
1153 type: OS::Neutron::ExtraRoute
1154 depends_on:
1155 - tsrvs
1156 condition: { not: aio_deploy }
1157 properties:
1158 destination: { get_param: external_k8s_service_network_cidr }
1159 nexthop: { get_attr: [tsrvs, resource.0, server_private_ip ] }
1160 router_id: { get_attr: [accessible_network, accessible_router] }
1161
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +01001162outputs:
1163 ucp_ips:
1164 description: Private IP addresses of the deployed ucp instances
1165 value: { get_attr: [ucp, server_public_ip] }
1166 masters_ips:
1167 description: Private IP addresses of the deployed masters instances
1168 value: { get_attr: [masters, server_public_ip] }
1169 workers_ips:
1170 description: Private IP addresses of the deployed worker instances
1171 value: { get_attr: [workers, server_public_ip] }
1172 cmps_ips:
1173 description: Private IP addresses of the deployed cmp instances
1174 value: { get_attr: [cmps, server_public_ip] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +02001175 acmps_ips:
1176 description: Private IP addresses of the deployed cmp instances with high computing features
1177 value: { get_attr: [acmps, server_public_ip] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +01001178 gtws_ips:
1179 description: Private IP addresses of the deployed gtw instances
1180 value: { get_attr: [gtws, server_public_ip] }
sgudzb94b4c62020-02-05 13:21:25 +02001181 lmas_ips:
1182 description: Private IP addresses of the deployed lma instances
1183 value: { get_attr: [lmas, server_public_ip] }
1184 osds_ips:
1185 description: Private IP addresses of the deployed osd instances
1186 value: { get_attr: [osds, server_public_ip] }
sgudz43eb82b2020-02-11 16:36:48 +02001187 ntws_ips:
1188 description: Private IP addresses of the deployed contrail instances
1189 value: { get_attr: [ntws, server_public_ip] }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +03001190 vbmcs_ips:
1191 description: Private IP addresses of the deployed virtualbmcs instances
1192 value: { get_attr: [vbmcs, server_public_ip] }
Vasyl Saienko4e3f4632020-05-26 14:43:09 +03001193 vbmc_ironic_baremetal_ips:
1194 description: The IPs of ironic baremetal network assigned to vbmc hosts.
1195 value: { get_attr: [vbmcs, server_ironic_baremetal_ip] }
Vasyl Saienko25bb75b2021-02-15 12:22:33 +02001196 frrs_ips:
1197 description: Private IP addresses of the deployed FRR instances
1198 value: { get_attr: [frrs, server_public_ip] }
1199 frrs_tunnel_ips:
1200 description: The tunnel IPs of FRR nodes
Michael Polenchuk2a770942021-03-04 18:01:17 +04001201 value: { get_attr: [frrs, server_tun_ip] }
Vasyl Saienkoc60d9592023-12-01 12:35:42 +00001202 ucp_private_floating_ip:
1203 description: Private IP addresses of the deployed ucp instances
1204 value: { get_attr: [ucp, server_private_floating_ip] }
Oleh Hryhorov404e9572020-01-21 18:57:22 +02001205 worker_private_floating_ips:
1206 description: IPs might be used as gateway
Oleh Hryhorovcd1a3bd2020-12-04 13:21:06 +02001207 value: {if: [aio_deploy, {get_attr: [ucp, server_private_floating_ip]}, {get_attr: [workers, server_private_floating_ip]}]}
dbiletskiy4c7177c2023-10-12 11:04:53 +02001208 tsrvs_ips:
Vasyl Saienkoe0b84ab2023-12-01 18:05:41 +02001209 description: Public IP addresses of the deployed tsrv instances
dbiletskiy4c7177c2023-10-12 11:04:53 +02001210 value: { get_attr: [tsrvs, server_public_ip] }
Vasyl Saienkoe0b84ab2023-12-01 18:05:41 +02001211 tsrvs_private_floating_ips:
1212 description: Private IP addresses of the deployed tsrv instances
1213 value: { get_attr: [tsrvs, server_private_floating_ip] }
Oleh Hryhorov0019f592020-01-23 11:50:12 +02001214 private_floating_cidr:
1215 value: { get_param: private_floating_network_cidr }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +02001216 private_floating_network_pool_start:
1217 value: { get_param: private_floating_network_pool_start }
1218 private_floating_network_pool_end:
1219 value: { get_param: private_floating_network_pool_end }
1220 private_floating_network_gateway:
1221 value: { get_param: private_floating_network_gateway }
Vasyl Saienkoc943f432020-04-21 12:15:57 +03001222 private_floating_network_interface:
1223 value: { get_param: private_floating_network_interface }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +03001224 ironic_baremetal_network_pool_start:
1225 value: { get_param: ironic_baremetal_network_pool_start }
1226 ironic_baremetal_network_pool_end:
1227 value: { get_param: ironic_baremetal_network_pool_end }
Mykyta Karpin832e9f82021-02-18 14:55:27 +02001228 ironic_baremetal_network_gateway:
1229 value: { get_param: ironic_baremetal_network_gateway }
Vasyl Saienko4c468192020-05-19 11:51:13 +03001230 ironic_baremetal_network_interface:
1231 value: { get_param: ironic_baremetal_network_interface }
Vasyl Saienko1233afd2020-05-21 14:55:21 +03001232 ironic_baremetal_network_vbmc_interface:
1233 value: { get_param: ironic_baremetal_network_vbmc_interface }
Vasyl Saienko9fd0b5b2020-05-20 13:15:58 +03001234 ironic_baremetal_provisioning_interface:
1235 value: { get_param: ironic_baremetal_provisioning_interface }
Michael Polenchuk486cadf2020-08-24 16:25:51 +04001236 ironic_baremetal_pxe_interface:
1237 value: { get_param: ironic_baremetal_pxe_interface }
Oleh Hryhorov367e3ff2020-02-13 10:35:52 +02001238 tunnel_interface:
1239 value: { get_param: tunnel_interface }
1240 live_migration_interface:
1241 value: { get_param: live_migration_interface }
1242 metallb_address_pools:
1243 value: { get_param: metallb_address_pools }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +02001244 ucp_wc_data:
1245 description: Metadata from ucp
1246 value: { get_attr: [ucp, wc_data] }
1247 masters_wc_data:
1248 description: Metadata from masters
1249 value: { get_attr: [masters, wc_data] }
1250 workers_wc_data:
1251 description: Metadata from workers
1252 value: { get_attr: [workers, wc_data] }
1253 cmps_wc_data:
1254 description: Metadata from cmps
1255 value: { get_attr: [cmps, wc_data] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +02001256 acmps_wc_data:
1257 description: Metadata from cmps with high computing features
1258 value: { get_attr: [acmps, wc_data] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +02001259 gtws_wc_data:
1260 description: Metadata from gtws
1261 value: { get_attr: [gtws, wc_data] }
1262 lmas_wc_data:
1263 description: Metadata from lmas
1264 value: { get_attr: [lmas, wc_data] }
1265 osds_wc_data:
1266 description: Metadata from osds
1267 value: { get_attr: [osds, wc_data] }
1268 ntws_wc_data:
1269 description: Metadata from ntws
1270 value: { get_attr: [ntws, wc_data] }
Oleh Hryhorov564a1202020-03-12 12:44:56 +02001271 storage_frontend_network_cidr:
1272 description: Storage network which is used as clientNet in Ceph CR
1273 value: { get_param: storage_frontend_network_cidr }
1274 storage_backend_network_cidr:
1275 description: Storage network which is used as clusterNet in Ceph CR
1276 value: { get_param: storage_backend_network_cidr }
Anton Samoylov474029a2020-09-03 11:02:01 +04001277 tungstenfabric_enabled:
1278 value: { get_param: tungstenfabric_enabled }
Ilya Bumarskov128d4d22021-12-27 10:43:09 +04001279 tun_network_ext_router_ip:
1280 condition: ext_router_deploy
1281 description: IP address of vsrx/vmx in data network
1282 value: { get_param: tun_network_ext_router_ip }
1283 control_network_ext_router_ip:
1284 condition: ext_router_deploy
1285 description: IP address of vsrx/vmx in control/accessible network
1286 value: { get_param: control_network_ext_router_ip }
1287 public_network_ext_router_ip:
1288 condition: ext_router_deploy
1289 description: Public IP of vsrx/vmx instance
1290 value: { if: [ vmx_deploy, get_attr: [ vmx, re_floating_ip ], get_attr: [ vsrx, server_public_ip ] ] }
Anton Samoyloveb199272021-09-28 17:36:01 +04001291 accessible_router:
1292 description: Router from accessible network to public
1293 value: { get_attr: [accessible_network, accessible_router] }
Ilya Bumarskov128d4d22021-12-27 10:43:09 +04001294 evpn_network_cidr:
1295 description: Network CIDR for evpn tests
1296 value: { get_param: evpn_network_cidr }
1297 evpn_network_pool_start:
1298 description: IPAM pool start for evpn tests
1299 value: { get_param: evpn_network_pool_start }
1300 evpn_network_pool_end:
1301 description: IPAM pool end for evpn tests
1302 value: { get_param: evpn_network_pool_end }