blob: 5a0ab27be58525e79635fecccb04a90935ea9829 [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'
Sergey Matov0709c762020-04-02 14:30:50 +040017 control_network_vsrx_peering_ip:
18 type: string
19 description: IP address of vsrx for tungsten fabric peering
20 default: ''
Anton Samoylovea0b23e2020-06-26 14:17:51 +040021 data_network_vsrx_ip:
22 type: string
23 description: IP address of vsrx in tungsten fabric data network
24 default: ''
Stepan Rogov60bc3522020-12-16 17:43:25 +030025 docker_default_address_pool:
26 type: string
27 description: Default address pool for Docker ucp specific local networks
28 default: '10.10.1.0/16'
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010029 masters_size:
30 type: number
31 description: Number of masters instances to deploy
32 default: 2
33 worker_size:
34 type: number
35 description: Number of workers to deploy
36 default: 5
37 cmp_size:
38 type: number
39 description: Number of cmp workers to deploy
40 default: 0
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +020041 acmp_size:
42 type: number
43 description: Number of advanced cmp workers to deploy
44 default: 0
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010045 gtw_size:
46 type: number
47 description: Number of gtw workers to deploy
48 default: 0
sgudzb94b4c62020-02-05 13:21:25 +020049 lma_size:
50 type: number
51 description: Number of gtw workers to deploy
52 default: 0
53 osd_size:
54 type: number
55 description: Number of gtw workers to deploy
56 default: 0
Dennis Dmitriev81da4222020-02-25 17:53:04 +020057 spare_size:
58 type: number
59 description: Number of gtw workers to deploy
60 default: 0
Vasyl Saienko25bb75b2021-02-15 12:22:33 +020061 frr_size:
62 type: number
63 description: Number of frr nodes to deploy
64 default: 0
sgudz43eb82b2020-02-11 16:36:48 +020065 ntw_size:
66 type: number
67 description: Number of contrail nodes to deploy
68 default: 0
Vasyl Saienko36f2edf2020-05-14 10:44:52 +030069 vbmc_size:
70 type: number
71 description: Number of nodes for virtualbmc BM node simulator
72 default: 0
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010073 ucp_boot_timeout:
74 type: number
75 description: Boot timeout for UCP instance
Vasyl Saienkof36f39c2020-03-10 00:21:42 +020076 default: 3600
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +010077 cluster_public_key:
78 type: string
Oleh Hryhorov0019f592020-01-23 11:50:12 +020079 private_floating_network_cidr:
80 type: string
81 default: '10.11.12.0/24'
Oleh Hryhorov2a7b3d72020-02-27 17:04:24 +020082 private_floating_network_ipam_pool_start:
83 type: string
84 description: pool start which is used as pool for IPAM and assigned to instances port
85 default: '10.11.12.2'
86 private_floating_network_ipam_pool_end:
87 type: string
88 description: pool end which is used as pool for IPAM and assigned to instances port
89 default: '10.11.12.99'
Oleh Hryhorovb58460e2020-02-05 15:53:48 +020090 private_floating_network_pool_start:
91 type: string
92 default: '10.11.12.100'
93 private_floating_network_pool_end:
94 type: string
95 default: '10.11.12.200'
96 private_floating_network_gateway:
97 type: string
Oleh Hryhorovd3a30242020-02-11 15:24:01 +020098 default: ''
Vasyl Saienkoc943f432020-04-21 12:15:57 +030099 private_floating_network_interface:
100 type: string
101 default: 'veth-phy'
102 description: 'The name of interface that should be added to external neutron bridge for floating network.'
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200103 private_floating_interface:
104 description: Interface which carries floating network for child OpenStack.
105 type: string
Mateusz Lose2ad0772020-02-27 21:41:54 +0100106 storage_frontend_network_cidr:
107 type: string
108 default: '10.12.0.0/24'
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200109 storage_frontend_interface:
110 type: string
111 default: 'ens5'
112 storage_backend_network_cidr:
113 type: string
114 default: '10.11.0.0/24'
115 storage_backend_interface:
116 type: string
117 default: 'ens6'
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300118 ironic_baremetal_network_cidr:
119 type: string
120 default: '10.13.0.0/24'
121 ironic_baremetal_network_ipam_pool_start:
122 type: string
123 default: '10.13.0.2'
124 ironic_baremetal_network_ipam_pool_end:
125 type: string
126 default: '10.13.0.99'
127 ironic_baremetal_network_pool_start:
128 type: string
129 default: '10.13.0.100'
130 ironic_baremetal_network_pool_end:
131 type: string
132 default: '10.13.0.200'
133 ironic_baremetal_network_gateway:
134 type: string
135 default: ''
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400136 ironic_baremetal_tunnel_cidr:
137 type: string
138 default: '10.16.0.0/24'
Vasyl Saienko4c468192020-05-19 11:51:13 +0300139 ironic_baremetal_network_interface:
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300140 type: string
Vasyl Saienko4c468192020-05-19 11:51:13 +0300141 default: 'veth-bm'
Vasyl Saienko1233afd2020-05-21 14:55:21 +0300142 description: 'The name of interface that should be added to ovs bridge in Neutron'
143 ironic_baremetal_network_vbmc_interface:
144 type: string
145 default: 'veth-vbmc'
146 description: 'The name of interface that should be added to ovs bridge with virtualbmc VMs.'
Vasyl Saienko9fd0b5b2020-05-20 13:15:58 +0300147 ironic_baremetal_provisioning_interface:
148 type: string
149 default: 'br-baremetal'
150 description: 'The name of interface on node to which IP ironic services will bind.'
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400151 ironic_baremetal_pxe_interface:
152 type: string
153 default: 'pxe.1000'
154 description: 'Will be used as provisioning_interface for multi-tenancy mode'
155 ironic_mt_enabled:
156 type: boolean
157 default: false
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400158 tungstenfabric_enabled:
159 type: boolean
160 default: false
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200161 tun_network_cidr:
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400162 type: string
163 default: '10.15.0.0/24'
Mykyta Karpin2aba4122020-12-02 15:03:09 +0200164 # When tun interface is added to ovs bridge inside vm,
165 # and arp responder is enabled on undercloud,
166 # ip adresses from tun network pool can't be used for
167 # configuring vxlan tunnels through ovs bridge (https://mirantis.jira.com/browse/PRODX-9337).
168 # Ip addresses unknown for arp responder should be used.
169 # In deployment pipeline addresses assigned by openstack to advanced compute nodes
170 # are changed inside instance to 10.15.0.1XX for this case.
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200171 tun_network_pool_start:
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400172 type: string
173 default: '10.15.0.2'
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200174 tun_network_pool_end:
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400175 type: string
176 default: '10.15.0.99'
Dennis Dmitrievea894212020-03-12 21:36:43 +0200177 ucp_metadata:
178 type: json
179 default: {"role":"ucp"}
180 master_metadata:
181 type: json
182 default: {"role":"master"}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100183 worker_metadata:
184 type: json
sgudzb94b4c62020-02-05 13:21:25 +0200185 default: {}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100186 cmp_metadata:
187 type: json
sgudzb94b4c62020-02-05 13:21:25 +0200188 default: {}
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200189 acmp_metadata:
190 type: json
191 default: {}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100192 gtw_metadata:
193 type: json
sgudzb94b4c62020-02-05 13:21:25 +0200194 default: {}
195 lma_metadata:
196 type: json
197 default: {}
198 osd_metadata:
199 type: json
200 default: {}
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200201 spare_metadata:
202 type: json
203 default: {}
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200204 frr_metadata:
205 type: json
206 default: {}
sgudz43eb82b2020-02-11 16:36:48 +0200207 ntw_metadata:
208 type: json
209 default: {}
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300210 vbmc_metadata:
211 type: json
212 default: {}
sgudzfe58e8a2020-02-11 13:31:40 +0200213 ucp_flavor:
214 type: string
Vasyl Saienko4f740902020-08-18 11:09:06 +0300215 default: 'kaas-bm.worker'
sgudzfe58e8a2020-02-11 13:31:40 +0200216 masters_flavor:
217 type: string
Vasyl Saienko230242f2020-04-07 12:46:05 +0300218 default: 'system.compact.openstack.proxy'
sgudzfe58e8a2020-02-11 13:31:40 +0200219 workers_flavor:
220 type: string
221 default: 'system.compact.openstack.control'
222 cmps_flavor:
223 type: string
224 default: 'system.compact.openstack.control'
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200225 acmps_flavor:
226 type: string
227 default: 'system.compact.openstack.control.ephemeral.numa'
sgudzfe58e8a2020-02-11 13:31:40 +0200228 gtws_flavor:
229 type: string
230 default: 'system.compact.openstack.control'
231 lmas_flavor:
232 type: string
233 default: 'system.compact.openstack.control'
234 osds_flavor:
235 type: string
Mateusz Lose2ad0772020-02-27 21:41:54 +0100236 default: 'system.virtual.ceph.osd'
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200237 spares_flavor:
238 type: string
239 default: 'system.compact.openstack.control'
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200240 frrs_flavor:
241 type: string
242 default: 'system.compact.openstack.control'
sgudz43eb82b2020-02-11 16:36:48 +0200243 ntws_flavor:
244 type: string
245 default: 'system.compact.openstack.control'
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300246 vbmcs_flavor:
247 type: string
248 default: 'system.compact.openstack.control'
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200249 functions_override:
250 type: string
Vasyl Saienko9b688992020-02-13 13:50:53 +0200251 default: ''
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200252 docker_ee_url:
253 type: string
Vasyl Saienko1785c352020-03-11 11:39:40 +0200254 default: 'http://mirror-us.mcp.mirantis.net/.snapshots/docker-ee-bionic-latest'
255# default: 'https://s3-us-west-2.amazonaws.com/internal-docker-ee-builds/docker-ee-linux/ubuntu'
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200256 docker_ee_release:
257 type: string
258 default: 'stable-19.03'
Vasyl Saienkob59853e2020-05-25 10:15:26 +0300259 docker_ucp_image:
260 type: string
261 default: 'docker/ucp:3.2.4'
Vasyl Saienkocfbedc72021-02-15 18:02:56 +0200262 docker_ucp_swarm_data_port:
263 type: string
264 default: 4789
Oleh Hryhorov367e3ff2020-02-13 10:35:52 +0200265 tunnel_interface:
266 type: string
267 default: ''
268 live_migration_interface:
269 type: string
270 default: ''
271 metallb_address_pools:
272 type: comma_delimited_list
273 default: ''
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200274 hardware_metadata:
275 description: The content of lab metadata.
276 default: ''
277 type: string
Mykyta Karpin6a153c52020-11-03 15:21:38 +0200278 huge_pages:
279 description: >
280 String formatted as '<Number of Gb for 1Gb huge pages>,<Number of Mb for 2Mb huge pages'
281 If number is equal to 0 alloacation of huge pages won't be configured.
282 default: '0,0'
283 type: string
Oleh Hryhorov43bbc8c2020-12-03 15:30:09 +0200284 single_node:
285 description: If set true then AIO is going to be deployed.
286 type: string
287 default: 'false'
Vasyl Saienko6a6c9f02021-02-08 09:54:29 +0200288 vsrx_image:
289 type: string
290 default: vsrx-mcp2-tf-3-nets
291 vsrx_flavor:
292 type: string
293 default: oc_vsrx
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200294 cmp_lvm_loop_device_size:
295 description: >
296 The size of loop device for computes to configure LVM on, in gigabytes
297 type: number
298 default: 20
299 acmp_lvm_loop_device_size:
300 description: >
301 The size of loop device for advanced computes to configure LVM on, in gigabytes
302 type: number
303 default: 0
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100304
Oleh Hryhorovcd1a3bd2020-12-04 13:21:06 +0200305conditions:
306 aio_deploy:
307 equals:
308 - get_param: single_node
309 - 'true'
310
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100311resources:
Vasyl Saienkocdc11cf2020-11-20 17:39:00 +0200312 keypair_name:
313 type: OS::Heat::RandomString
314 properties:
315 character_classes: [{"class": "hexdigits", "min": 1}]
316 length: 128
317 salt: constant
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100318 key_pair:
319 type: OS::Nova::KeyPair
320 properties:
Vasyl Saienkocdc11cf2020-11-20 17:39:00 +0200321 name: { get_attr: [keypair_name, value] }
322 public_key: { get_param: cluster_public_key }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100323 save_private_key: false
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200324 accessible_network:
325 type: MCP2::NetworkAcc
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100326 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200327 public_net_id: { get_param: public_net_id }
Oleh Hryhorov07081d92020-06-30 16:19:29 +0300328 control_network_cidr: { get_param: control_network_cidr }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100329
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200330 tun_network:
331 type: MCP2::NetworkTun
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400332 properties:
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200333 tun_network_cidr: { get_param: tun_network_cidr }
334 tun_network_pool_start: { get_param: tun_network_pool_start }
335 tun_network_pool_end: { get_param: tun_network_pool_end }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400336
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100337 private_floating_network:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200338 type: MCP2::NetworkPrvFl
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100339 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200340 private_floating_network_cidr: { get_param: private_floating_network_cidr }
Oleh Hryhorov2a7b3d72020-02-27 17:04:24 +0200341 private_floating_network_ipam_pool_start: { get_param: private_floating_network_ipam_pool_start }
Oleh Hryhorov7b0157d2020-02-27 18:20:11 +0200342 private_floating_network_ipam_pool_end: { get_param: private_floating_network_ipam_pool_end }
Sergey Matov0709c762020-04-02 14:30:50 +0400343 private_floating_network_gateway: {get_param: private_floating_network_gateway}
344 control_network_vsrx_peering_ip: {get_param: control_network_vsrx_peering_ip}
345 accessible_network: { get_attr: [accessible_network, public_network]}
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400346 data_network_vsrx_ip: { get_param: data_network_vsrx_ip }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200347 tun_network: { get_attr: [tun_network, tun_network_id] }
Vasyl Saienko6a6c9f02021-02-08 09:54:29 +0200348 vsrx_image: { get_param: vsrx_image }
349 vsrx_flavor: { get_param: vsrx_flavor }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100350
Mateusz Lose2ad0772020-02-27 21:41:54 +0100351 storage_network:
352 type: MCP2::NetworkAccStorage
353 properties:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100354 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200355 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Mateusz Lose2ad0772020-02-27 21:41:54 +0100356
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300357 ironic_baremetal_network:
358 type: MCP2::NetworkIronicFlat
359 properties:
360 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
361 ironic_baremetal_network_ipam_pool_start: { get_param: ironic_baremetal_network_ipam_pool_start }
362 ironic_baremetal_network_ipam_pool_end: { get_param: ironic_baremetal_network_ipam_pool_end }
363 ironic_baremetal_network_gateway: {get_param: ironic_baremetal_network_gateway}
364
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100365 ucp:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100366 depends_on:
367 - accessible_network
368 - storage_network
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200369 type: MCP2::SrvInstances
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100370 properties:
Dennis Dmitrievea894212020-03-12 21:36:43 +0200371 metadata: { get_param: ucp_metadata}
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200372 docker_ee_url: { get_param: docker_ee_url }
373 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkob59853e2020-05-25 10:15:26 +0300374 docker_ucp_image: { get_param: docker_ucp_image}
Vasyl Saienkocfbedc72021-02-15 18:02:56 +0200375 docker_ucp_swarm_data_port: { get_param: docker_ucp_swarm_data_port }
Stepan Rogov60bc3522020-12-16 17:43:25 +0300376 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200377 node_type: "ucp"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200378 key_name: { get_attr: [keypair_name, value] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200379 image: { get_param: image }
380 flavor: { get_param: ucp_flavor }
381 accessible_network: { get_attr: [accessible_network, public_network] }
382 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
383 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
384 private_floating_interface: { get_param: private_floating_interface }
385 private_floating_network_cidr: { get_param: private_floating_network_cidr }
386 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
387 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200388 control_network_cidr: { get_param: control_network_cidr }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200389 functions_override: { get_param: functions_override }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200390 hardware_metadata: { get_param: hardware_metadata}
Oleh Hryhorov43bbc8c2020-12-03 15:30:09 +0200391 single_node: { get_param: single_node}
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200392
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100393 masters:
394 type: OS::Heat::ResourceGroup
395 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200396 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100397 properties:
398 count: { get_param: masters_size }
399 resource_def:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200400 type: MCP2::SrvInstances
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100401 properties:
Dennis Dmitrievea894212020-03-12 21:36:43 +0200402 metadata: { get_param: master_metadata}
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200403 node_type: "master"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200404 key_name: { get_attr: [keypair_name, value] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200405 image: { get_param: image }
406 flavor: { get_param: masters_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200407 docker_ee_url: { get_param: docker_ee_url }
408 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300409 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300410 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200411 accessible_network: { get_attr: [accessible_network, public_network] }
412 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
413 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
414 private_floating_interface: { get_param: private_floating_interface }
415 private_floating_network_cidr: { get_param: private_floating_network_cidr }
416 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
417 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200418 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200419 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200420 functions_override: { get_param: functions_override }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200421 hardware_metadata: { get_param: hardware_metadata}
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200422
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100423 workers:
424 type: OS::Heat::ResourceGroup
425 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200426 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100427 properties:
428 count: { get_param: worker_size }
429 resource_def:
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200430 type: MCP2::SrvInstancesCephOSD
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100431 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200432 metadata: { get_param: worker_metadata}
433 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200434 key_name: { get_attr: [keypair_name, value] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100435 image: { get_param: image }
Vasyl Saienko6ff0c1b2020-03-05 07:52:02 +0200436 flavor: { get_param: workers_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200437 docker_ee_url: { get_param: docker_ee_url }
438 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300439 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300440 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200441 accessible_network: { get_attr: [accessible_network, public_network] }
442 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
443 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
444 private_floating_interface: { get_param: private_floating_interface }
445 private_floating_network_cidr: { get_param: private_floating_network_cidr }
446 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100447 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200448 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200449 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200450 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200451 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200452 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
453 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
454 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200455 storage_backend_interface: { get_param: storage_backend_interface }
456 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
457 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
458 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300459 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
460 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300461 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400462 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
463 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400464 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200465 tun_network: { get_attr: [tun_network, tun_network_id] }
466 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200467 hardware_metadata: { get_param: hardware_metadata}
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200468 lvm_loop_device_size: { get_param: cmp_lvm_loop_device_size }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200469
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100470 cmps:
471 type: OS::Heat::ResourceGroup
472 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200473 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100474 properties:
475 count: { get_param: cmp_size }
476 resource_def:
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200477 type: MCP2::SrvInstancesCephOSD
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100478 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200479 metadata: { get_param: cmp_metadata }
480 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200481 key_name: { get_attr: [keypair_name, value] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100482 image: { get_param: image }
Vasyl Saienko6ff0c1b2020-03-05 07:52:02 +0200483 flavor: { get_param: cmps_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200484 docker_ee_url: { get_param: docker_ee_url }
485 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300486 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300487 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200488 accessible_network: { get_attr: [accessible_network, public_network] }
489 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
490 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
491 private_floating_interface: { get_param: private_floating_interface }
492 private_floating_network_cidr: { get_param: private_floating_network_cidr }
493 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100494 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200495 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200496 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200497 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200498 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200499 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
500 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
501 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200502 storage_backend_interface: { get_param: storage_backend_interface }
503 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
504 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
505 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300506 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
507 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300508 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400509 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
510 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400511 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200512 tun_network: { get_attr: [tun_network, tun_network_id] }
513 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200514 hardware_metadata: { get_param: hardware_metadata}
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200515 lvm_loop_device_size: { get_param: cmp_lvm_loop_device_size }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200516
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200517 acmps:
518 type: OS::Heat::ResourceGroup
519 depends_on:
520 - ucp
521 properties:
522 count: { get_param: acmp_size }
523 resource_def:
524 type: MCP2::SrvInstancesCephOSD
525 properties:
526 metadata: { get_param: acmp_metadata }
527 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200528 key_name: { get_attr: [keypair_name, value] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200529 image: { get_param: image }
530 flavor: { get_param: acmps_flavor }
531 docker_ee_url: { get_param: docker_ee_url }
532 docker_ee_release: { get_param: docker_ee_release }
533 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300534 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200535 accessible_network: { get_attr: [accessible_network, public_network] }
536 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
537 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
538 private_floating_interface: { get_param: private_floating_interface }
539 private_floating_network_cidr: { get_param: private_floating_network_cidr }
540 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
541 public_net_id: { get_param: public_net_id }
542 control_network_cidr: { get_param: control_network_cidr }
543 ucp_master_host: { get_attr: [ucp, server_private_ip] }
544 functions_override: { get_param: functions_override }
545 storage_frontend_interface: { get_param: storage_frontend_interface }
546 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
547 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
548 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
549 storage_backend_interface: { get_param: storage_backend_interface }
550 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
551 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
552 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
553 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
554 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
555 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
556 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
557 ironic_mt_enabled: { get_param: ironic_mt_enabled }
558 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200559 tun_network: { get_attr: [tun_network, tun_network_id] }
560 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200561 hardware_metadata: { get_param: hardware_metadata}
Mykyta Karpin6a153c52020-11-03 15:21:38 +0200562 huge_pages: { get_param: huge_pages }
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200563 lvm_loop_device_size: { get_param: acmp_lvm_loop_device_size }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200564
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100565 gtws:
566 type: OS::Heat::ResourceGroup
567 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200568 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100569 properties:
570 count: { get_param: gtw_size }
571 resource_def:
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200572 type: MCP2::SrvInstancesCeph
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100573 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200574 metadata: { get_param: gtw_metadata }
575 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200576 key_name: { get_attr: [keypair_name, value] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100577 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200578 flavor: { get_param: gtws_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200579 docker_ee_url: { get_param: docker_ee_url }
580 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300581 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300582 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200583 accessible_network: { get_attr: [accessible_network, public_network] }
584 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
585 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
586 private_floating_interface: { get_param: private_floating_interface }
587 private_floating_network_cidr: { get_param: private_floating_network_cidr }
588 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100589 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200590 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200591 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200592 functions_override: { get_param: functions_override }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200593 storage_frontend_interface: { get_param: storage_frontend_interface }
594 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
595 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
596 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300597 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
598 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300599 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400600 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
601 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200602 hardware_metadata: { get_param: hardware_metadata}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100603
sgudzb94b4c62020-02-05 13:21:25 +0200604 lmas:
605 type: OS::Heat::ResourceGroup
606 depends_on:
607 - ucp
608 properties:
609 count: { get_param: lma_size }
610 resource_def:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100611 type: MCP2::SrvInstancesCeph
sgudzb94b4c62020-02-05 13:21:25 +0200612 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200613 metadata: { get_param: lma_metadata }
614 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200615 key_name: { get_attr: [keypair_name, value] }
sgudzb94b4c62020-02-05 13:21:25 +0200616 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200617 flavor: { get_param: lmas_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200618 docker_ee_url: { get_param: docker_ee_url }
619 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300620 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300621 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200622 accessible_network: { get_attr: [accessible_network, public_network] }
623 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
624 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
625 private_floating_interface: { get_param: private_floating_interface }
626 private_floating_network_cidr: { get_param: private_floating_network_cidr }
627 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
sgudzb94b4c62020-02-05 13:21:25 +0200628 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200629 control_network_cidr: { get_param: control_network_cidr }
sgudzb94b4c62020-02-05 13:21:25 +0200630 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200631 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200632 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200633 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
634 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
635 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienko73d6ec62020-05-14 20:26:25 +0300636 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
637 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300638 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400639 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
640 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200641 hardware_metadata: { get_param: hardware_metadata}
sgudzb94b4c62020-02-05 13:21:25 +0200642
643 osds:
644 type: OS::Heat::ResourceGroup
645 depends_on:
646 - ucp
647 properties:
648 count: { get_param: osd_size }
649 resource_def:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100650 type: MCP2::SrvInstancesCephOSD
sgudzb94b4c62020-02-05 13:21:25 +0200651 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200652 metadata: { get_param: osd_metadata }
653 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200654 key_name: { get_attr: [keypair_name, value] }
sgudzb94b4c62020-02-05 13:21:25 +0200655 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200656 flavor: { get_param: osds_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 Saienko84ee4fd2020-09-02 10:00:18 +0300659 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300660 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200661 accessible_network: { get_attr: [accessible_network, public_network] }
662 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
663 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
664 private_floating_interface: { get_param: private_floating_interface }
665 private_floating_network_cidr: { get_param: private_floating_network_cidr }
666 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
sgudzb94b4c62020-02-05 13:21:25 +0200667 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200668 control_network_cidr: { get_param: control_network_cidr }
sgudzb94b4c62020-02-05 13:21:25 +0200669 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200670 functions_override: { get_param: functions_override }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200671 storage_frontend_interface: { get_param: storage_frontend_interface }
672 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
673 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
674 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
675 storage_backend_interface: { get_param: storage_backend_interface }
676 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
677 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
678 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko73d6ec62020-05-14 20:26:25 +0300679 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
680 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300681 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400682 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
683 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400684 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200685 tun_network: { get_attr: [tun_network, tun_network_id] }
686 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200687 hardware_metadata: { get_param: hardware_metadata}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100688
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200689 frrs: # spares for osds/cmps
690 type: OS::Heat::ResourceGroup
691 depends_on:
692 - ucp
693 properties:
694 count: { get_param: frr_size }
695 resource_def:
696 type: MCP2::SrvInstancesCephOSD
697 properties:
698 metadata: { get_param: frr_metadata }
699 node_type: "frr"
700 key_name: { get_attr: [keypair_name, value] }
701 image: { get_param: image }
702 flavor: { get_param: frrs_flavor }
703 docker_ee_url: { get_param: docker_ee_url }
704 docker_ee_release: { get_param: docker_ee_release }
705 docker_ucp_image: { get_param: docker_ucp_image}
706 docker_default_address_pool: { get_param: docker_default_address_pool }
707 accessible_network: { get_attr: [accessible_network, public_network] }
708 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
709 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
710 private_floating_interface: { get_param: private_floating_interface }
711 private_floating_network_cidr: { get_param: private_floating_network_cidr }
712 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
713 public_net_id: { get_param: public_net_id }
714 control_network_cidr: { get_param: control_network_cidr }
715 ucp_master_host: { get_attr: [ucp, server_private_ip] }
716 functions_override: { get_param: functions_override }
717 storage_frontend_interface: { get_param: storage_frontend_interface }
718 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
719 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
720 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
721 storage_backend_interface: { get_param: storage_backend_interface }
722 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
723 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
724 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
725 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
726 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
727 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
728 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
729 ironic_mt_enabled: { get_param: ironic_mt_enabled }
730 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
731 tun_network: { get_attr: [tun_network, tun_network_id] }
732 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
733 hardware_metadata: { get_param: hardware_metadata}
Vasyl Saienko846c6342021-02-24 17:01:36 +0200734 frr_bgp_neighbors: { list_join: [',', {get_attr: [workers, server_tun_ip]}] }
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200735
Dennis Dmitrievea894212020-03-12 21:36:43 +0200736 spares: # spares for osds/cmps
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200737 type: OS::Heat::ResourceGroup
738 depends_on:
739 - ucp
740 properties:
741 count: { get_param: spare_size }
742 resource_def:
Dennis Dmitrievea894212020-03-12 21:36:43 +0200743 type: MCP2::SrvInstancesCephOSD
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200744 properties:
745 metadata: { get_param: spare_metadata }
746 node_type: "spare"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200747 key_name: { get_attr: [keypair_name, value] }
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200748 image: { get_param: image }
749 flavor: { get_param: spares_flavor }
750 docker_ee_url: { get_param: docker_ee_url }
751 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300752 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300753 docker_default_address_pool: { get_param: docker_default_address_pool }
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200754 accessible_network: { get_attr: [accessible_network, public_network] }
755 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
756 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
757 private_floating_interface: { get_param: private_floating_interface }
758 private_floating_network_cidr: { get_param: private_floating_network_cidr }
759 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
760 public_net_id: { get_param: public_net_id }
761 control_network_cidr: { get_param: control_network_cidr }
762 ucp_master_host: { get_attr: [ucp, server_private_ip] }
763 functions_override: { get_param: functions_override }
764 storage_frontend_interface: { get_param: storage_frontend_interface }
765 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
766 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
767 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Dennis Dmitrievea894212020-03-12 21:36:43 +0200768 storage_backend_interface: { get_param: storage_backend_interface }
769 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
770 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
771 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300772 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
773 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300774 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400775 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
776 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400777 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200778 tun_network: { get_attr: [tun_network, tun_network_id] }
779 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200780 hardware_metadata: { get_param: hardware_metadata}
781
sgudz43eb82b2020-02-11 16:36:48 +0200782 ntws:
783 type: OS::Heat::ResourceGroup
784 depends_on:
785 - ucp
786 properties:
787 count: { get_param: ntw_size }
788 resource_def:
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200789 type: MCP2::SrvInstancesCeph
sgudz43eb82b2020-02-11 16:36:48 +0200790 properties:
791 metadata: { get_param: ntw_metadata }
792 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200793 key_name: { get_attr: [keypair_name, value] }
sgudz43eb82b2020-02-11 16:36:48 +0200794 image: { get_param: image }
795 flavor: { get_param: ntws_flavor }
796 docker_ee_url: { get_param: docker_ee_url }
797 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300798 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300799 docker_default_address_pool: { get_param: docker_default_address_pool }
sgudz43eb82b2020-02-11 16:36:48 +0200800 accessible_network: { get_attr: [accessible_network, public_network] }
801 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
802 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
803 private_floating_interface: { get_param: private_floating_interface }
804 private_floating_network_cidr: { get_param: private_floating_network_cidr }
805 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
806 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200807 control_network_cidr: { get_param: control_network_cidr }
sgudz43eb82b2020-02-11 16:36:48 +0200808 ucp_master_host: { get_attr: [ucp, server_private_ip] }
809 functions_override: { get_param: functions_override }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200810 storage_frontend_interface: { get_param: storage_frontend_interface }
811 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
812 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
813 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienko73d6ec62020-05-14 20:26:25 +0300814 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
815 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300816 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400817 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
818 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200819 hardware_metadata: { get_param: hardware_metadata}
sgudz43eb82b2020-02-11 16:36:48 +0200820
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300821 vbmcs:
822 type: OS::Heat::ResourceGroup
823 depends_on:
824 - ucp
825 properties:
826 count: { get_param: vbmc_size }
827 resource_def:
Michael Polenchuk3bfb59f2020-05-15 18:50:14 +0400828 type: MCP2::SrvInstancesCeph
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300829 properties:
830 metadata: { get_param: vbmc_metadata}
831 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200832 key_name: { get_attr: [keypair_name, value] }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300833 image: { get_param: image }
834 flavor: { get_param: vbmcs_flavor }
835 docker_ee_url: { get_param: docker_ee_url }
836 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300837 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300838 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300839 accessible_network: { get_attr: [accessible_network, public_network] }
840 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
841 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
842 private_floating_interface: { get_param: private_floating_interface }
843 private_floating_network_cidr: { get_param: private_floating_network_cidr }
844 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
845 public_net_id: { get_param: public_net_id }
846 control_network_cidr: { get_param: control_network_cidr }
847 ucp_master_host: { get_attr: [ucp, server_private_ip] }
848 functions_override: { get_param: functions_override }
Michael Polenchuk3bfb59f2020-05-15 18:50:14 +0400849 storage_frontend_interface: { get_param: storage_frontend_interface }
850 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
851 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
852 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Michael Polenchuk21493b32020-05-15 21:08:04 +0400853 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
854 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300855 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400856 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
857 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300858 hardware_metadata: { get_param: hardware_metadata}
859
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100860outputs:
861 ucp_ips:
862 description: Private IP addresses of the deployed ucp instances
863 value: { get_attr: [ucp, server_public_ip] }
864 masters_ips:
865 description: Private IP addresses of the deployed masters instances
866 value: { get_attr: [masters, server_public_ip] }
867 workers_ips:
868 description: Private IP addresses of the deployed worker instances
869 value: { get_attr: [workers, server_public_ip] }
870 cmps_ips:
871 description: Private IP addresses of the deployed cmp instances
872 value: { get_attr: [cmps, server_public_ip] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200873 acmps_ips:
874 description: Private IP addresses of the deployed cmp instances with high computing features
875 value: { get_attr: [acmps, server_public_ip] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100876 gtws_ips:
877 description: Private IP addresses of the deployed gtw instances
878 value: { get_attr: [gtws, server_public_ip] }
sgudzb94b4c62020-02-05 13:21:25 +0200879 lmas_ips:
880 description: Private IP addresses of the deployed lma instances
881 value: { get_attr: [lmas, server_public_ip] }
882 osds_ips:
883 description: Private IP addresses of the deployed osd instances
884 value: { get_attr: [osds, server_public_ip] }
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200885 spares_ips:
886 description: Private IP addresses of the deployed spare instances
887 value: { get_attr: [spares, server_public_ip] }
sgudz43eb82b2020-02-11 16:36:48 +0200888 ntws_ips:
889 description: Private IP addresses of the deployed contrail instances
890 value: { get_attr: [ntws, server_public_ip] }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300891 vbmcs_ips:
892 description: Private IP addresses of the deployed virtualbmcs instances
893 value: { get_attr: [vbmcs, server_public_ip] }
Vasyl Saienko4e3f4632020-05-26 14:43:09 +0300894 vbmc_ironic_baremetal_ips:
895 description: The IPs of ironic baremetal network assigned to vbmc hosts.
896 value: { get_attr: [vbmcs, server_ironic_baremetal_ip] }
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200897 frrs_ips:
898 description: Private IP addresses of the deployed FRR instances
899 value: { get_attr: [frrs, server_public_ip] }
900 frrs_tunnel_ips:
901 description: The tunnel IPs of FRR nodes
902 value: { get_attr: [frrs, server_tunnel_ip] }
Oleh Hryhorov404e9572020-01-21 18:57:22 +0200903 worker_private_floating_ips:
904 description: IPs might be used as gateway
Oleh Hryhorovcd1a3bd2020-12-04 13:21:06 +0200905 value: {if: [aio_deploy, {get_attr: [ucp, server_private_floating_ip]}, {get_attr: [workers, server_private_floating_ip]}]}
Oleh Hryhorov0019f592020-01-23 11:50:12 +0200906 private_floating_cidr:
907 value: { get_param: private_floating_network_cidr }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200908 private_floating_network_pool_start:
909 value: { get_param: private_floating_network_pool_start }
910 private_floating_network_pool_end:
911 value: { get_param: private_floating_network_pool_end }
912 private_floating_network_gateway:
913 value: { get_param: private_floating_network_gateway }
Vasyl Saienkoc943f432020-04-21 12:15:57 +0300914 private_floating_network_interface:
915 value: { get_param: private_floating_network_interface }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300916 ironic_baremetal_network_pool_start:
917 value: { get_param: ironic_baremetal_network_pool_start }
918 ironic_baremetal_network_pool_end:
919 value: { get_param: ironic_baremetal_network_pool_end }
Mykyta Karpin832e9f82021-02-18 14:55:27 +0200920 ironic_baremetal_network_gateway:
921 value: { get_param: ironic_baremetal_network_gateway }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300922 ironic_baremetal_network_interface:
923 value: { get_param: ironic_baremetal_network_interface }
Vasyl Saienko1233afd2020-05-21 14:55:21 +0300924 ironic_baremetal_network_vbmc_interface:
925 value: { get_param: ironic_baremetal_network_vbmc_interface }
Vasyl Saienko9fd0b5b2020-05-20 13:15:58 +0300926 ironic_baremetal_provisioning_interface:
927 value: { get_param: ironic_baremetal_provisioning_interface }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400928 ironic_baremetal_pxe_interface:
929 value: { get_param: ironic_baremetal_pxe_interface }
Oleh Hryhorov367e3ff2020-02-13 10:35:52 +0200930 tunnel_interface:
931 value: { get_param: tunnel_interface }
932 live_migration_interface:
933 value: { get_param: live_migration_interface }
934 metallb_address_pools:
935 value: { get_param: metallb_address_pools }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200936 ucp_wc_data:
937 description: Metadata from ucp
938 value: { get_attr: [ucp, wc_data] }
939 masters_wc_data:
940 description: Metadata from masters
941 value: { get_attr: [masters, wc_data] }
942 workers_wc_data:
943 description: Metadata from workers
944 value: { get_attr: [workers, wc_data] }
945 cmps_wc_data:
946 description: Metadata from cmps
947 value: { get_attr: [cmps, wc_data] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200948 acmps_wc_data:
949 description: Metadata from cmps with high computing features
950 value: { get_attr: [acmps, wc_data] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200951 gtws_wc_data:
952 description: Metadata from gtws
953 value: { get_attr: [gtws, wc_data] }
954 lmas_wc_data:
955 description: Metadata from lmas
956 value: { get_attr: [lmas, wc_data] }
957 osds_wc_data:
958 description: Metadata from osds
959 value: { get_attr: [osds, wc_data] }
960 ntws_wc_data:
961 description: Metadata from ntws
962 value: { get_attr: [ntws, wc_data] }
Oleh Hryhorov564a1202020-03-12 12:44:56 +0200963 storage_frontend_network_cidr:
964 description: Storage network which is used as clientNet in Ceph CR
965 value: { get_param: storage_frontend_network_cidr }
966 storage_backend_network_cidr:
967 description: Storage network which is used as clusterNet in Ceph CR
968 value: { get_param: storage_backend_network_cidr }
Anton Samoylov474029a2020-09-03 11:02:01 +0400969 tungstenfabric_enabled:
970 value: { get_param: tungstenfabric_enabled }
971 data_network_vsrx_ip:
972 description: IP address of vsrx in tungsten fabric data network
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200973 value: { get_param: data_network_vsrx_ip }