1 heat_template_version: 2013-05-23
2 #################################
5 # - Unique availability zone for each VM
6 # - LAN8 and SLAN networks removed according to latest Prod/Type I diagram
9 # - VM start-up order: SMP->DB->BE->FE (no error handling yet)
10 # - Provisioning scripts placeholders
12 #################################
14 description: ASC Template
20 description: city name
28 description: home_number
32 description: home_number
36 type: OS::Neutron::Port
38 network_id: { get_resource: Clustering_Network }
41 type: OS::Neutron::Port
43 network_id: { get_resource: DB_Network }
46 type: OS::Neutron::Port
48 network: { get_param: Cricket_OCS_protected_net_id }
49 fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}]
52 type: OS::Neutron::Port
54 network: { get_param: OAM_direct_net_id }
55 fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}]
58 type: OS::Nova::Server
59 # depends on: db_wait_condition
61 name: { get_param: vm_scp_be1_name }
62 image: { get_param: image_scp_be_id }
63 # availability_zone: { get_param: availability_zone_be1 }
64 flavor: { get_param: flavor_scp_be_id }
65 scheduler_hints: { group: { get_resource: BE_Affinity } }
67 - port: { get_resource: be1_port_3 }
68 - port: { get_resource: be1_port_4 }
69 - port: { get_resource: be1_port_5 }
70 - port: { get_resource: be1_port_7 }
72 vnf_id: { get_param: vnf_id }
77 #todo: provision $vm_name
78 wc_notify --data-binary '{"status": "SUCCESS"}'
80 $vm_name: {get_param: vm_scp_be1_name}
81 # wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] }
84 type: OS::Neutron::Port
86 network_id: { get_resource: Clustering_Network }
89 type: OS::Neutron::Port
91 network_id: { get_resource: DB_Network }
94 type: OS::Neutron::Port
96 network: { get_param: Cricket_OCS_protected_net_id }
97 fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}]
100 type: OS::Neutron::Port
102 network: { get_param: OAM_direct_net_id }
103 fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}]
106 type: OS::Nova::Server
107 # depends on: db_wait_condition
109 name: { get_param: vm_scp_be2_name }
110 image: { get_param: image_scp_be_id }
111 # availability_zone: { get_param: availability_zone_be2 }
112 flavor: { get_param: flavor_scp_be_id }
113 scheduler_hints: { group: { get_resource: BE_Affinity } }
115 - port: { get_resource: be2_port_3 }
116 - port: { get_resource: be2_port_4 }
117 - port: { get_resource: be2_port_5 }
118 - port: { get_resource: be2_port_7 }
120 vnf_id: { get_param: vnf_id }
125 #todo: provision $vm_name
126 wc_notify --data-binary '{"status": "SUCCESS"}'
128 $vm_name: {get_param: vm_scp_be2_name}
129 # wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] }
132 type: OS::Neutron::Port
134 network_id: { get_resource: Clustering_Network }
137 type: OS::Neutron::Port
139 network_id: { get_resource: DB_Network }
142 type: OS::Neutron::Port
144 network: { get_param: Cricket_OCS_protected_net_id }
145 fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}]
148 type: OS::Neutron::Port
150 network: { get_param: OAM_direct_net_id }
151 fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}]
154 type: OS::Nova::Server
155 # depends on: db_wait_condition
157 name: { get_param: vm_scp_be3_name }
158 image: { get_param: image_scp_be_id }
159 # availability_zone: { get_param: availability_zone_be3 }
160 flavor: { get_param: flavor_scp_be_id }
161 scheduler_hints: { group: { get_resource: BE_Affinity } }
163 - port: { get_resource: be3_port_3 }
164 - port: { get_resource: be3_port_4 }
165 - port: { get_resource: be3_port_5 }
166 - port: { get_resource: be3_port_7 }
168 vnf_id: { get_param: vnf_id }
173 #todo: provision $vm_name
174 wc_notify --data-binary '{"status": "SUCCESS"}'
176 $vm_name: {get_param: vm_scp_be3_name}
177 # wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] }
180 type: OS::Neutron::Port
182 network_id: { get_resource: Clustering_Network }
185 type: OS::Neutron::Port
187 network_id: { get_resource: DB_Network }
190 type: OS::Neutron::Port
192 network: { get_param: Cricket_OCS_protected_net_id }
193 fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}]
196 type: OS::Neutron::Port
198 network: { get_param: OAM_direct_net_id }
199 fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}]
202 type: OS::Nova::Server
203 # depends on: db_wait_condition
205 name: { get_param: vm_scp_be4_name }
206 image: { get_param: image_scp_be_id }
207 # availability_zone: { get_param: availability_zone_be4 }
208 flavor: { get_param: flavor_scp_be_id }
209 scheduler_hints: { group: { get_resource: BE_Affinity } }
211 - port: { get_resource: be4_port_3 }
212 - port: { get_resource: be4_port_4 }
213 - port: { get_resource: be4_port_5 }
214 - port: { get_resource: be4_port_7 }
216 vnf_id: { get_param: vnf_id }
221 #todo: provision $vm_name
222 wc_notify --data-binary '{"status": "SUCCESS"}'
224 $vm_name: {get_param: vm_scp_be4_name}
225 # wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] }
228 type: OS::Neutron::Port
230 network_id: { get_resource: Clustering_Network }
233 type: OS::Neutron::Port
235 network_id: { get_resource: DB_Network }
238 type: OS::Neutron::Port
240 network: { get_param: Cricket_OCS_protected_net_id }
241 fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}]
244 type: OS::Neutron::Port
246 network: { get_param: OAM_direct_net_id }
247 fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}]
250 type: OS::Nova::Server
251 # depends on: scp_be_wait_condition
253 name: { get_param: vm_scp_fe0_name }
254 image: { get_param: image_scp_fe_id }
255 # availability_zone: { get_param: availability_zone_fe0 }
256 flavor: { get_param: flavor_scp_fe_id }
257 scheduler_hints: { group: { get_resource: FE_Affinity } }
259 - port: { get_resource: fe0_port_0 }
260 - port: { get_resource: fe0_port_2 }
261 - port: { get_resource: fe0_port_3 }
262 - port: { get_resource: fe0_port_7 }
264 vnf_id: { get_param: vnf_id }
269 #todo: provision $vm_name
270 wc_notify --data-binary '{"status": "SUCCESS"}'
272 $vm_name: {get_param: vm_scp_fe0_name}
273 # wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] }
276 type: OS::Neutron::Port
278 network: { get_param: SIGNET_vrf_A1_direct_net_id }
279 fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}]
282 type: OS::Neutron::Port
284 network_id: { get_resource: FE_Clustering_KA }
287 type: OS::Neutron::Port
289 network_id: { get_resource: Clustering_Network }
292 type: OS::Neutron::Port
294 network: { get_param: OAM_direct_net_id }
295 fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}]
298 type: OS::Nova::Server
299 # depends on: scp_be_wait_condition
301 name: { get_param: vm_scp_fe1_name }
302 image: { get_param: image_scp_fe_id }
303 # availability_zone: { get_param: availability_zone_fe1 }
304 flavor: { get_param: flavor_scp_fe_id }
305 scheduler_hints: { group: { get_resource: FE_Affinity } }
307 - port: { get_resource: fe1_port_1 }
308 - port: { get_resource: fe1_port_2 }
309 - port: { get_resource: fe1_port_3 }
310 - port: { get_resource: fe1_port_7 }
312 vnf_id: { get_param: vnf_id }
317 #todo: provision $vm_name
318 wc_notify --data-binary '{"status": "SUCCESS"}'
320 $vm_name: {get_param: vm_scp_fe1_name}
321 # wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] }
324 type: OS::Neutron::Port
326 network: { get_param: SIGNET_vrf_B1_direct_net_id }
327 fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}]
330 type: OS::Neutron::Port
332 network_id: { get_resource: FE_Clustering_KA }
335 type: OS::Neutron::Port
337 network_id: { get_resource: Clustering_Network }
340 type: OS::Neutron::Port
342 network: { get_param: OAM_direct_net_id }
343 fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}]
346 type: OS::Nova::Server
348 name: { get_param: vm_smp0_name }
349 image: { get_param: image_smp_id }
350 # availability_zone: { get_param: availability_zone_smp0 }
351 flavor: { get_param: flavor_smp_id }
352 scheduler_hints: { group: { get_resource: SMP_Affinity } }
354 - port: { get_resource: smp0_port_7 }
356 vnf_id: { get_param: vnf_id }
361 #todo: provision $vm_name
362 wc_notify --data-binary '{"status": "SUCCESS"}'
364 $vm_name: {get_param: vm_smp0_name}
365 # wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] }
368 type: OS::Neutron::Port
370 network: { get_param: OAM_direct_net_id }
371 fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}]
374 type: OS::Nova::Server
376 name: { get_param: vm_smp1_name }
377 image: { get_param: image_smp_id }
378 # availability_zone: { get_param: availability_zone_smp1 }
379 flavor: { get_param: flavor_smp_id }
380 scheduler_hints: { group: { get_resource: SMP_Affinity } }
382 - port: { get_resource: smp1_port_7 }
384 vnf_id: { get_param: vnf_id }
389 #todo: provision $vm_name
390 wc_notify --data-binary '{"status": "SUCCESS"}'
392 $vm_name: {get_param: vm_smp1_name}
393 # wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] }
396 type: OS::Neutron::Port
398 network: { get_param: OAM_direct_net_id }
399 fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}]
402 type: OS::Nova::Server
403 # depends_on: smp_wait_condition
405 name: { get_param: vm_db0_name }
406 image: { get_param: image_db_id }
407 # availability_zone: { get_param: availability_zone_db0 }
408 flavor: { get_param: flavor_db_id }
409 scheduler_hints: { group: { get_resource: DB_Affinity } }
411 - port: { get_resource: db0_port_4 }
412 - port: { get_resource: db0_port_7 }
414 vnf_id: { get_param: vnf_id }
419 #todo: provision $vm_name
420 wc_notify --data-binary '{"status": "SUCCESS"}'
422 $vm_name: {get_param: vm_db0_name}
423 # wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] }
426 type: OS::Neutron::Port
428 network_id: { get_resource: DB_Network }
431 type: OS::Neutron::Port
433 network: { get_param: OAM_direct_net_id }
434 fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}]
437 type: OS::Nova::Server
438 # depends_on: smp_wait_condition
440 name: { get_param: vm_db1_name }
441 image: { get_param: image_db_id }
442 # availability_zone: { get_param: availability_zone_db1 }
443 flavor: { get_param: flavor_db_id }
444 scheduler_hints: { group: { get_resource: DB_Affinity } }
446 - port: { get_resource: db1_port_4 }
447 - port: { get_resource: db1_port_7 }
449 vnf_id: { get_param: vnf_id }
454 #todo: provision $vm_name
455 wc_notify --data-binary '{"status": "SUCCESS"}'
457 $vm_name: {get_param: vm_db1_name}
458 # wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] }
461 type: OS::Neutron::Port
463 network_id: { get_resource: DB_Network }
466 type: OS::Neutron::Port
468 network: { get_param: OAM_direct_net_id }
469 fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]