blob: 4d472c110c9a2e877f69551bca5db64b69130275 [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
Vasyl Saienkob78b8902021-03-09 17:39:42 +0200298 default: 50
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200299 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 }
Mikhail Polenchuk3cf123d2021-03-12 14:23:24 +0000350 public_net_id: { get_param: public_net_id }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100351
Mateusz Lose2ad0772020-02-27 21:41:54 +0100352 storage_network:
353 type: MCP2::NetworkAccStorage
354 properties:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100355 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200356 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Mateusz Lose2ad0772020-02-27 21:41:54 +0100357
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300358 ironic_baremetal_network:
359 type: MCP2::NetworkIronicFlat
360 properties:
361 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
362 ironic_baremetal_network_ipam_pool_start: { get_param: ironic_baremetal_network_ipam_pool_start }
363 ironic_baremetal_network_ipam_pool_end: { get_param: ironic_baremetal_network_ipam_pool_end }
364 ironic_baremetal_network_gateway: {get_param: ironic_baremetal_network_gateway}
365
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100366 ucp:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100367 depends_on:
368 - accessible_network
369 - storage_network
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200370 type: MCP2::SrvInstances
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100371 properties:
Dennis Dmitrievea894212020-03-12 21:36:43 +0200372 metadata: { get_param: ucp_metadata}
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200373 docker_ee_url: { get_param: docker_ee_url }
374 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienkob59853e2020-05-25 10:15:26 +0300375 docker_ucp_image: { get_param: docker_ucp_image}
Vasyl Saienkocfbedc72021-02-15 18:02:56 +0200376 docker_ucp_swarm_data_port: { get_param: docker_ucp_swarm_data_port }
Stepan Rogov60bc3522020-12-16 17:43:25 +0300377 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200378 node_type: "ucp"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200379 key_name: { get_attr: [keypair_name, value] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200380 image: { get_param: image }
381 flavor: { get_param: ucp_flavor }
382 accessible_network: { get_attr: [accessible_network, public_network] }
383 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
384 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
385 private_floating_interface: { get_param: private_floating_interface }
386 private_floating_network_cidr: { get_param: private_floating_network_cidr }
387 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
388 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200389 control_network_cidr: { get_param: control_network_cidr }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200390 functions_override: { get_param: functions_override }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200391 hardware_metadata: { get_param: hardware_metadata}
Oleh Hryhorov43bbc8c2020-12-03 15:30:09 +0200392 single_node: { get_param: single_node}
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200393
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100394 masters:
395 type: OS::Heat::ResourceGroup
396 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200397 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100398 properties:
399 count: { get_param: masters_size }
400 resource_def:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200401 type: MCP2::SrvInstances
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100402 properties:
Dennis Dmitrievea894212020-03-12 21:36:43 +0200403 metadata: { get_param: master_metadata}
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200404 node_type: "master"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200405 key_name: { get_attr: [keypair_name, value] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200406 image: { get_param: image }
407 flavor: { get_param: masters_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200408 docker_ee_url: { get_param: docker_ee_url }
409 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300410 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300411 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200412 accessible_network: { get_attr: [accessible_network, public_network] }
413 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
414 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
415 private_floating_interface: { get_param: private_floating_interface }
416 private_floating_network_cidr: { get_param: private_floating_network_cidr }
417 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
418 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200419 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200420 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200421 functions_override: { get_param: functions_override }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200422 hardware_metadata: { get_param: hardware_metadata}
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200423
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100424 workers:
425 type: OS::Heat::ResourceGroup
426 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200427 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100428 properties:
429 count: { get_param: worker_size }
430 resource_def:
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200431 type: MCP2::SrvInstancesCephOSD
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100432 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200433 metadata: { get_param: worker_metadata}
434 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200435 key_name: { get_attr: [keypair_name, value] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100436 image: { get_param: image }
Vasyl Saienko6ff0c1b2020-03-05 07:52:02 +0200437 flavor: { get_param: workers_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200438 docker_ee_url: { get_param: docker_ee_url }
439 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300440 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300441 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200442 accessible_network: { get_attr: [accessible_network, public_network] }
443 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
444 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
445 private_floating_interface: { get_param: private_floating_interface }
446 private_floating_network_cidr: { get_param: private_floating_network_cidr }
447 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100448 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200449 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200450 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200451 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200452 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200453 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
454 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
455 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200456 storage_backend_interface: { get_param: storage_backend_interface }
457 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
458 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
459 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300460 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
461 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300462 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400463 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
464 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400465 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200466 tun_network: { get_attr: [tun_network, tun_network_id] }
467 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200468 hardware_metadata: { get_param: hardware_metadata}
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200469 lvm_loop_device_size: { get_param: cmp_lvm_loop_device_size }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200470
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100471 cmps:
472 type: OS::Heat::ResourceGroup
473 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200474 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100475 properties:
476 count: { get_param: cmp_size }
477 resource_def:
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200478 type: MCP2::SrvInstancesCephOSD
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100479 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200480 metadata: { get_param: cmp_metadata }
481 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200482 key_name: { get_attr: [keypair_name, value] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100483 image: { get_param: image }
Vasyl Saienko6ff0c1b2020-03-05 07:52:02 +0200484 flavor: { get_param: cmps_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200485 docker_ee_url: { get_param: docker_ee_url }
486 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300487 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300488 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200489 accessible_network: { get_attr: [accessible_network, public_network] }
490 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
491 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
492 private_floating_interface: { get_param: private_floating_interface }
493 private_floating_network_cidr: { get_param: private_floating_network_cidr }
494 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100495 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200496 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200497 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200498 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200499 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200500 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
501 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
502 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200503 storage_backend_interface: { get_param: storage_backend_interface }
504 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
505 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
506 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300507 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
508 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300509 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400510 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
511 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400512 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200513 tun_network: { get_attr: [tun_network, tun_network_id] }
514 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200515 hardware_metadata: { get_param: hardware_metadata}
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200516 lvm_loop_device_size: { get_param: cmp_lvm_loop_device_size }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200517
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200518 acmps:
519 type: OS::Heat::ResourceGroup
520 depends_on:
521 - ucp
522 properties:
523 count: { get_param: acmp_size }
524 resource_def:
525 type: MCP2::SrvInstancesCephOSD
526 properties:
527 metadata: { get_param: acmp_metadata }
528 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200529 key_name: { get_attr: [keypair_name, value] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200530 image: { get_param: image }
531 flavor: { get_param: acmps_flavor }
532 docker_ee_url: { get_param: docker_ee_url }
533 docker_ee_release: { get_param: docker_ee_release }
534 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300535 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200536 accessible_network: { get_attr: [accessible_network, public_network] }
537 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
538 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
539 private_floating_interface: { get_param: private_floating_interface }
540 private_floating_network_cidr: { get_param: private_floating_network_cidr }
541 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
542 public_net_id: { get_param: public_net_id }
543 control_network_cidr: { get_param: control_network_cidr }
544 ucp_master_host: { get_attr: [ucp, server_private_ip] }
545 functions_override: { get_param: functions_override }
546 storage_frontend_interface: { get_param: storage_frontend_interface }
547 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
548 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
549 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
550 storage_backend_interface: { get_param: storage_backend_interface }
551 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
552 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
553 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
554 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
555 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
556 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
557 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
558 ironic_mt_enabled: { get_param: ironic_mt_enabled }
559 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200560 tun_network: { get_attr: [tun_network, tun_network_id] }
561 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200562 hardware_metadata: { get_param: hardware_metadata}
Mykyta Karpin6a153c52020-11-03 15:21:38 +0200563 huge_pages: { get_param: huge_pages }
Oleksii Grudev4e3c8b42021-03-02 19:02:45 +0200564 lvm_loop_device_size: { get_param: acmp_lvm_loop_device_size }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200565
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100566 gtws:
567 type: OS::Heat::ResourceGroup
568 depends_on:
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200569 - ucp
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100570 properties:
571 count: { get_param: gtw_size }
572 resource_def:
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200573 type: MCP2::SrvInstancesCeph
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100574 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200575 metadata: { get_param: gtw_metadata }
576 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200577 key_name: { get_attr: [keypair_name, value] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100578 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200579 flavor: { get_param: gtws_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200580 docker_ee_url: { get_param: docker_ee_url }
581 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300582 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300583 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200584 accessible_network: { get_attr: [accessible_network, public_network] }
585 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
586 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
587 private_floating_interface: { get_param: private_floating_interface }
588 private_floating_network_cidr: { get_param: private_floating_network_cidr }
589 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100590 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200591 control_network_cidr: { get_param: control_network_cidr }
Vasyl Saienko3ab29c92020-01-03 10:39:03 +0200592 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200593 functions_override: { get_param: functions_override }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200594 storage_frontend_interface: { get_param: storage_frontend_interface }
595 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
596 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
597 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300598 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
599 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300600 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400601 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
602 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200603 hardware_metadata: { get_param: hardware_metadata}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100604
sgudzb94b4c62020-02-05 13:21:25 +0200605 lmas:
606 type: OS::Heat::ResourceGroup
607 depends_on:
608 - ucp
609 properties:
610 count: { get_param: lma_size }
611 resource_def:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100612 type: MCP2::SrvInstancesCeph
sgudzb94b4c62020-02-05 13:21:25 +0200613 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200614 metadata: { get_param: lma_metadata }
615 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200616 key_name: { get_attr: [keypair_name, value] }
sgudzb94b4c62020-02-05 13:21:25 +0200617 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200618 flavor: { get_param: lmas_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200619 docker_ee_url: { get_param: docker_ee_url }
620 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300621 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300622 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200623 accessible_network: { get_attr: [accessible_network, public_network] }
624 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
625 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
626 private_floating_interface: { get_param: private_floating_interface }
627 private_floating_network_cidr: { get_param: private_floating_network_cidr }
628 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
sgudzb94b4c62020-02-05 13:21:25 +0200629 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200630 control_network_cidr: { get_param: control_network_cidr }
sgudzb94b4c62020-02-05 13:21:25 +0200631 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200632 functions_override: { get_param: functions_override }
Oleh Hryhorov1832d232020-03-05 11:33:13 +0200633 storage_frontend_interface: { get_param: storage_frontend_interface }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200634 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
635 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
636 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienko73d6ec62020-05-14 20:26:25 +0300637 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
638 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300639 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400640 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
641 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200642 hardware_metadata: { get_param: hardware_metadata}
sgudzb94b4c62020-02-05 13:21:25 +0200643
644 osds:
645 type: OS::Heat::ResourceGroup
646 depends_on:
647 - ucp
648 properties:
649 count: { get_param: osd_size }
650 resource_def:
Mateusz Lose2ad0772020-02-27 21:41:54 +0100651 type: MCP2::SrvInstancesCephOSD
sgudzb94b4c62020-02-05 13:21:25 +0200652 properties:
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200653 metadata: { get_param: osd_metadata }
654 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200655 key_name: { get_attr: [keypair_name, value] }
sgudzb94b4c62020-02-05 13:21:25 +0200656 image: { get_param: image }
sgudzfe58e8a2020-02-11 13:31:40 +0200657 flavor: { get_param: osds_flavor }
Mykyta Karpin5ed5fd82020-01-27 18:23:29 +0200658 docker_ee_url: { get_param: docker_ee_url }
659 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300660 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300661 docker_default_address_pool: { get_param: docker_default_address_pool }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200662 accessible_network: { get_attr: [accessible_network, public_network] }
663 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
664 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
665 private_floating_interface: { get_param: private_floating_interface }
666 private_floating_network_cidr: { get_param: private_floating_network_cidr }
667 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
sgudzb94b4c62020-02-05 13:21:25 +0200668 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200669 control_network_cidr: { get_param: control_network_cidr }
sgudzb94b4c62020-02-05 13:21:25 +0200670 ucp_master_host: { get_attr: [ucp, server_private_ip] }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200671 functions_override: { get_param: functions_override }
Oleh Hryhorovdccb1cd2020-03-04 15:52:55 +0200672 storage_frontend_interface: { get_param: storage_frontend_interface }
673 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
674 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
675 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
676 storage_backend_interface: { get_param: storage_backend_interface }
677 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
678 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
679 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko73d6ec62020-05-14 20:26:25 +0300680 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
681 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300682 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400683 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
684 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400685 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200686 tun_network: { get_attr: [tun_network, tun_network_id] }
687 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200688 hardware_metadata: { get_param: hardware_metadata}
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100689
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200690 frrs: # spares for osds/cmps
691 type: OS::Heat::ResourceGroup
692 depends_on:
693 - ucp
694 properties:
695 count: { get_param: frr_size }
696 resource_def:
697 type: MCP2::SrvInstancesCephOSD
698 properties:
699 metadata: { get_param: frr_metadata }
700 node_type: "frr"
701 key_name: { get_attr: [keypair_name, value] }
702 image: { get_param: image }
703 flavor: { get_param: frrs_flavor }
704 docker_ee_url: { get_param: docker_ee_url }
705 docker_ee_release: { get_param: docker_ee_release }
706 docker_ucp_image: { get_param: docker_ucp_image}
707 docker_default_address_pool: { get_param: docker_default_address_pool }
708 accessible_network: { get_attr: [accessible_network, public_network] }
709 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
710 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
711 private_floating_interface: { get_param: private_floating_interface }
712 private_floating_network_cidr: { get_param: private_floating_network_cidr }
713 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
714 public_net_id: { get_param: public_net_id }
715 control_network_cidr: { get_param: control_network_cidr }
716 ucp_master_host: { get_attr: [ucp, server_private_ip] }
717 functions_override: { get_param: functions_override }
718 storage_frontend_interface: { get_param: storage_frontend_interface }
719 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
720 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
721 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
722 storage_backend_interface: { get_param: storage_backend_interface }
723 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
724 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
725 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
726 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
727 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
728 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
729 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
730 ironic_mt_enabled: { get_param: ironic_mt_enabled }
731 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
732 tun_network: { get_attr: [tun_network, tun_network_id] }
733 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
734 hardware_metadata: { get_param: hardware_metadata}
Vasyl Saienko846c6342021-02-24 17:01:36 +0200735 frr_bgp_neighbors: { list_join: [',', {get_attr: [workers, server_tun_ip]}] }
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200736
Dennis Dmitrievea894212020-03-12 21:36:43 +0200737 spares: # spares for osds/cmps
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200738 type: OS::Heat::ResourceGroup
739 depends_on:
740 - ucp
741 properties:
742 count: { get_param: spare_size }
743 resource_def:
Dennis Dmitrievea894212020-03-12 21:36:43 +0200744 type: MCP2::SrvInstancesCephOSD
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200745 properties:
746 metadata: { get_param: spare_metadata }
747 node_type: "spare"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200748 key_name: { get_attr: [keypair_name, value] }
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200749 image: { get_param: image }
750 flavor: { get_param: spares_flavor }
751 docker_ee_url: { get_param: docker_ee_url }
752 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300753 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300754 docker_default_address_pool: { get_param: docker_default_address_pool }
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200755 accessible_network: { get_attr: [accessible_network, public_network] }
756 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
757 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
758 private_floating_interface: { get_param: private_floating_interface }
759 private_floating_network_cidr: { get_param: private_floating_network_cidr }
760 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
761 public_net_id: { get_param: public_net_id }
762 control_network_cidr: { get_param: control_network_cidr }
763 ucp_master_host: { get_attr: [ucp, server_private_ip] }
764 functions_override: { get_param: functions_override }
765 storage_frontend_interface: { get_param: storage_frontend_interface }
766 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
767 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
768 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Dennis Dmitrievea894212020-03-12 21:36:43 +0200769 storage_backend_interface: { get_param: storage_backend_interface }
770 storage_backend_network: { get_attr: [storage_network, storage_backend_network_id] }
771 storage_backend_subnet_id: { get_attr: [storage_network, storage_backend_subnet_id] }
772 storage_backend_network_cidr: { get_param: storage_backend_network_cidr }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300773 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
774 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300775 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400776 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
777 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Anton Samoylovea0b23e2020-06-26 14:17:51 +0400778 tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
Oleh Hryhorove7feab42020-11-11 18:00:29 +0200779 tun_network: { get_attr: [tun_network, tun_network_id] }
780 tun_subnet_id: { get_attr: [tun_network, tun_subnet_id] }
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200781 hardware_metadata: { get_param: hardware_metadata}
782
sgudz43eb82b2020-02-11 16:36:48 +0200783 ntws:
784 type: OS::Heat::ResourceGroup
785 depends_on:
786 - ucp
787 properties:
788 count: { get_param: ntw_size }
789 resource_def:
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200790 type: MCP2::SrvInstancesCeph
sgudz43eb82b2020-02-11 16:36:48 +0200791 properties:
792 metadata: { get_param: ntw_metadata }
793 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200794 key_name: { get_attr: [keypair_name, value] }
sgudz43eb82b2020-02-11 16:36:48 +0200795 image: { get_param: image }
796 flavor: { get_param: ntws_flavor }
797 docker_ee_url: { get_param: docker_ee_url }
798 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300799 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300800 docker_default_address_pool: { get_param: docker_default_address_pool }
sgudz43eb82b2020-02-11 16:36:48 +0200801 accessible_network: { get_attr: [accessible_network, public_network] }
802 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
803 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
804 private_floating_interface: { get_param: private_floating_interface }
805 private_floating_network_cidr: { get_param: private_floating_network_cidr }
806 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
807 public_net_id: { get_param: public_net_id }
Vasyl Saienko0fa6f192020-03-06 16:08:51 +0200808 control_network_cidr: { get_param: control_network_cidr }
sgudz43eb82b2020-02-11 16:36:48 +0200809 ucp_master_host: { get_attr: [ucp, server_private_ip] }
810 functions_override: { get_param: functions_override }
Vasyl Saienkoff5b8642020-03-26 18:20:34 +0200811 storage_frontend_interface: { get_param: storage_frontend_interface }
812 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
813 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
814 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Vasyl Saienko73d6ec62020-05-14 20:26:25 +0300815 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
816 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300817 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400818 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
819 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200820 hardware_metadata: { get_param: hardware_metadata}
sgudz43eb82b2020-02-11 16:36:48 +0200821
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300822 vbmcs:
823 type: OS::Heat::ResourceGroup
824 depends_on:
825 - ucp
826 properties:
827 count: { get_param: vbmc_size }
828 resource_def:
Michael Polenchuk3bfb59f2020-05-15 18:50:14 +0400829 type: MCP2::SrvInstancesCeph
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300830 properties:
831 metadata: { get_param: vbmc_metadata}
832 node_type: "worker"
Vasyl Saienkodef50442020-11-20 20:06:15 +0200833 key_name: { get_attr: [keypair_name, value] }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300834 image: { get_param: image }
835 flavor: { get_param: vbmcs_flavor }
836 docker_ee_url: { get_param: docker_ee_url }
837 docker_ee_release: { get_param: docker_ee_release }
Vasyl Saienko84ee4fd2020-09-02 10:00:18 +0300838 docker_ucp_image: { get_param: docker_ucp_image}
Stepan Rogov60bc3522020-12-16 17:43:25 +0300839 docker_default_address_pool: { get_param: docker_default_address_pool }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300840 accessible_network: { get_attr: [accessible_network, public_network] }
841 private_floating_network: { get_attr: [private_floating_network, private_floating_network_id] }
842 private_floating_subnet_id: { get_attr: [private_floating_network, private_floating_subnet_id] }
843 private_floating_interface: { get_param: private_floating_interface }
844 private_floating_network_cidr: { get_param: private_floating_network_cidr }
845 accessible_subnet_id: { get_attr: [accessible_network, accessible_subnet_id]}
846 public_net_id: { get_param: public_net_id }
847 control_network_cidr: { get_param: control_network_cidr }
848 ucp_master_host: { get_attr: [ucp, server_private_ip] }
849 functions_override: { get_param: functions_override }
Michael Polenchuk3bfb59f2020-05-15 18:50:14 +0400850 storage_frontend_interface: { get_param: storage_frontend_interface }
851 storage_frontend_network: { get_attr: [storage_network, storage_frontend_network_id] }
852 storage_frontend_subnet_id: { get_attr: [storage_network, storage_frontend_subnet_id] }
853 storage_frontend_network_cidr: { get_param: storage_frontend_network_cidr }
Michael Polenchuk21493b32020-05-15 21:08:04 +0400854 ironic_baremetal_network: { get_attr: [ironic_baremetal_network, ironic_baremetal_network_id] }
855 ironic_baremetal_subnet_id: { get_attr: [ironic_baremetal_network, ironic_baremetal_subnet_id] }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300856 ironic_baremetal_network_cidr: { get_param: ironic_baremetal_network_cidr }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400857 ironic_baremetal_tunnel_cidr: { get_param: ironic_baremetal_tunnel_cidr }
858 ironic_mt_enabled: { get_param: ironic_mt_enabled }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300859 hardware_metadata: { get_param: hardware_metadata}
860
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100861outputs:
862 ucp_ips:
863 description: Private IP addresses of the deployed ucp instances
864 value: { get_attr: [ucp, server_public_ip] }
865 masters_ips:
866 description: Private IP addresses of the deployed masters instances
867 value: { get_attr: [masters, server_public_ip] }
868 workers_ips:
869 description: Private IP addresses of the deployed worker instances
870 value: { get_attr: [workers, server_public_ip] }
871 cmps_ips:
872 description: Private IP addresses of the deployed cmp instances
873 value: { get_attr: [cmps, server_public_ip] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200874 acmps_ips:
875 description: Private IP addresses of the deployed cmp instances with high computing features
876 value: { get_attr: [acmps, server_public_ip] }
Gerrit MCPbbf9d5d2019-12-19 13:47:41 +0100877 gtws_ips:
878 description: Private IP addresses of the deployed gtw instances
879 value: { get_attr: [gtws, server_public_ip] }
sgudzb94b4c62020-02-05 13:21:25 +0200880 lmas_ips:
881 description: Private IP addresses of the deployed lma instances
882 value: { get_attr: [lmas, server_public_ip] }
883 osds_ips:
884 description: Private IP addresses of the deployed osd instances
885 value: { get_attr: [osds, server_public_ip] }
Dennis Dmitriev81da4222020-02-25 17:53:04 +0200886 spares_ips:
887 description: Private IP addresses of the deployed spare instances
888 value: { get_attr: [spares, server_public_ip] }
sgudz43eb82b2020-02-11 16:36:48 +0200889 ntws_ips:
890 description: Private IP addresses of the deployed contrail instances
891 value: { get_attr: [ntws, server_public_ip] }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300892 vbmcs_ips:
893 description: Private IP addresses of the deployed virtualbmcs instances
894 value: { get_attr: [vbmcs, server_public_ip] }
Vasyl Saienko4e3f4632020-05-26 14:43:09 +0300895 vbmc_ironic_baremetal_ips:
896 description: The IPs of ironic baremetal network assigned to vbmc hosts.
897 value: { get_attr: [vbmcs, server_ironic_baremetal_ip] }
Vasyl Saienko25bb75b2021-02-15 12:22:33 +0200898 frrs_ips:
899 description: Private IP addresses of the deployed FRR instances
900 value: { get_attr: [frrs, server_public_ip] }
901 frrs_tunnel_ips:
902 description: The tunnel IPs of FRR nodes
Michael Polenchuk2a770942021-03-04 18:01:17 +0400903 value: { get_attr: [frrs, server_tun_ip] }
Oleh Hryhorov404e9572020-01-21 18:57:22 +0200904 worker_private_floating_ips:
905 description: IPs might be used as gateway
Oleh Hryhorovcd1a3bd2020-12-04 13:21:06 +0200906 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 +0200907 private_floating_cidr:
908 value: { get_param: private_floating_network_cidr }
Oleh Hryhorovb58460e2020-02-05 15:53:48 +0200909 private_floating_network_pool_start:
910 value: { get_param: private_floating_network_pool_start }
911 private_floating_network_pool_end:
912 value: { get_param: private_floating_network_pool_end }
913 private_floating_network_gateway:
914 value: { get_param: private_floating_network_gateway }
Vasyl Saienkoc943f432020-04-21 12:15:57 +0300915 private_floating_network_interface:
916 value: { get_param: private_floating_network_interface }
Vasyl Saienko36f2edf2020-05-14 10:44:52 +0300917 ironic_baremetal_network_pool_start:
918 value: { get_param: ironic_baremetal_network_pool_start }
919 ironic_baremetal_network_pool_end:
920 value: { get_param: ironic_baremetal_network_pool_end }
Mykyta Karpin832e9f82021-02-18 14:55:27 +0200921 ironic_baremetal_network_gateway:
922 value: { get_param: ironic_baremetal_network_gateway }
Vasyl Saienko4c468192020-05-19 11:51:13 +0300923 ironic_baremetal_network_interface:
924 value: { get_param: ironic_baremetal_network_interface }
Vasyl Saienko1233afd2020-05-21 14:55:21 +0300925 ironic_baremetal_network_vbmc_interface:
926 value: { get_param: ironic_baremetal_network_vbmc_interface }
Vasyl Saienko9fd0b5b2020-05-20 13:15:58 +0300927 ironic_baremetal_provisioning_interface:
928 value: { get_param: ironic_baremetal_provisioning_interface }
Michael Polenchuk486cadf2020-08-24 16:25:51 +0400929 ironic_baremetal_pxe_interface:
930 value: { get_param: ironic_baremetal_pxe_interface }
Oleh Hryhorov367e3ff2020-02-13 10:35:52 +0200931 tunnel_interface:
932 value: { get_param: tunnel_interface }
933 live_migration_interface:
934 value: { get_param: live_migration_interface }
935 metallb_address_pools:
936 value: { get_param: metallb_address_pools }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200937 ucp_wc_data:
938 description: Metadata from ucp
939 value: { get_attr: [ucp, wc_data] }
940 masters_wc_data:
941 description: Metadata from masters
942 value: { get_attr: [masters, wc_data] }
943 workers_wc_data:
944 description: Metadata from workers
945 value: { get_attr: [workers, wc_data] }
946 cmps_wc_data:
947 description: Metadata from cmps
948 value: { get_attr: [cmps, wc_data] }
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200949 acmps_wc_data:
950 description: Metadata from cmps with high computing features
951 value: { get_attr: [acmps, wc_data] }
Vasyl Saienkof9ee1582020-03-02 16:53:41 +0200952 gtws_wc_data:
953 description: Metadata from gtws
954 value: { get_attr: [gtws, wc_data] }
955 lmas_wc_data:
956 description: Metadata from lmas
957 value: { get_attr: [lmas, wc_data] }
958 osds_wc_data:
959 description: Metadata from osds
960 value: { get_attr: [osds, wc_data] }
961 ntws_wc_data:
962 description: Metadata from ntws
963 value: { get_attr: [ntws, wc_data] }
Oleh Hryhorov564a1202020-03-12 12:44:56 +0200964 storage_frontend_network_cidr:
965 description: Storage network which is used as clientNet in Ceph CR
966 value: { get_param: storage_frontend_network_cidr }
967 storage_backend_network_cidr:
968 description: Storage network which is used as clusterNet in Ceph CR
969 value: { get_param: storage_backend_network_cidr }
Anton Samoylov474029a2020-09-03 11:02:01 +0400970 tungstenfabric_enabled:
971 value: { get_param: tungstenfabric_enabled }
972 data_network_vsrx_ip:
973 description: IP address of vsrx in tungsten fabric data network
Oleksii Grudev6cc5ad92020-10-30 10:58:11 +0200974 value: { get_param: data_network_vsrx_ip }
Mikhail Polenchuk3cf123d2021-03-12 14:23:24 +0000975 public_network_vsrx_ip:
976 description: IP address of vsrx in tungsten fabric public network
977 value: { get_attr: [private_floating_network, server_public_ip] }