40c00bbd3316ad2dca3599cd4937332759f32664
[sdc.git] /
1 tosca_definitions_version: tosca_simple_yaml_1_0_0
2 metadata:
3   template_name: Main
4 imports:
5 - openecomp_heat_index:
6     file: openecomp-heat/_index.yml
7 - GlobalSubstitutionTypes:
8     file: GlobalSubstitutionTypesServiceTemplate.yaml
9 topology_template:
10   inputs:
11     avpn_subnet_id:
12       hidden: false
13       immutable: false
14       type: list
15       description: comma delimited list of the UUIDs of the operator created IPv4 AVPN subnets
16       entry_schema:
17         type: string
18     sbg_internal_allocation_pool_start_ip:
19       hidden: false
20       immutable: false
21       type: string
22       description: The start IP of the Internal network's allocation pool. Don't deviate from default!
23       constraints:
24       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}
25     sbg_core_ips:
26       hidden: false
27       immutable: false
28       type: list
29       description: comma delimited list of IPv4 IPs to be used on Core network
30       entry_schema:
31         type: string
32     access_subnet_id:
33       hidden: false
34       immutable: false
35       type: string
36       description: the UUID of the operator-created Access subnet, IPv4
37       constraints:
38       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
39     sbg_management_cidr:
40       hidden: false
41       immutable: false
42       type: string
43       description: Network address (CIDR notation) for SBG Management Network, IPv4
44       constraints:
45       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}\/[1-2][0-9]
46     sbg_core_vlan_tag:
47       hidden: false
48       immutable: false
49       type: float
50       description: The internal VLAN TAG for Core network
51       constraints:
52       - in_range:
53         - 1
54         - 4096
55     management_net_id:
56       hidden: false
57       immutable: false
58       type: string
59       description: the UUID of the operator-created Management network
60       constraints:
61       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
62     sbg_management_ips:
63       hidden: false
64       immutable: false
65       type: list
66       description: comma delimited list of IPv4 addresses of SBG VMs on the Management network.
67       entry_schema:
68         type: string
69     sbg_nfs_floating_ip:
70       hidden: false
71       immutable: false
72       type: string
73       description: Moveable IP (VIP) for NFS server on the Internal network, IPv4. Don't deviate from default!
74       constraints:
75       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}
76     sbg_charging_ips:
77       hidden: false
78       immutable: false
79       type: list
80       description: comma delimited list of IPv4 IPs to be used on Charging network
81       entry_schema:
82         type: string
83     sbg_internal_mac_addresses:
84       hidden: false
85       immutable: false
86       type: list
87       description: comma delimited list of MAC addresses for the VMs on the Internal network
88       entry_schema:
89         type: string
90     core_net_id:
91       hidden: false
92       immutable: false
93       type: string
94       description: the UUID of the operator-created Core network
95       constraints:
96       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
97     sbg_access_vlan_tag:
98       hidden: false
99       immutable: false
100       type: float
101       description: The internal VLAN TAG for Access network
102       constraints:
103       - in_range:
104         - 1
105         - 4096
106     management_subnet_id:
107       hidden: false
108       immutable: false
109       type: string
110       description: the UUID of the operator-created Management subnet, IPv4
111       constraints:
112       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
113     access_net_id:
114       hidden: false
115       immutable: false
116       type: string
117       description: the UUID of the operator-created Access network
118       constraints:
119       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
120     sbg_dummy_ips:
121       hidden: false
122       immutable: false
123       type: list
124       description: comma delimited list of IPv4 IPs to be used on Dummy network
125       entry_schema:
126         type: string
127     sgi_net_id:
128       hidden: false
129       immutable: false
130       type: string
131       description: the UUID of the operator-created SGI network
132       constraints:
133       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
134     sbg_sgi_ips:
135       hidden: false
136       immutable: false
137       type: list
138       description: comma delimited list of IPv4 IPs to be used on SGI network
139       entry_schema:
140         type: string
141     sbg_internal_ips:
142       hidden: false
143       immutable: false
144       type: list
145       description: comma delimited list of IPv4 addresses of SBG VMs on the Internal network. Don't deviate from the default values.
146       entry_schema:
147         type: string
148     core_v6_subnet_id:
149       hidden: false
150       immutable: false
151       type: string
152       description: the UUID of the operator-created Core subnet, IPv6
153       constraints:
154       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
155     sbg_internal_allocation_pool_end_ip:
156       hidden: false
157       immutable: false
158       type: string
159       description: The end IP of the Internal network's allocation pool. Don't deviate from default!
160       constraints:
161       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}
162     UCOM_subnet_id:
163       hidden: false
164       immutable: false
165       type: string
166       description: the UUID of the operator-created UC One Mobile subnet, IPv4
167       constraints:
168       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
169     sbg_internal_cidr:
170       hidden: false
171       immutable: false
172       type: string
173       description: Network address (CIDR notation) for SBG intra-VM communication, IPv4. Don't deviate from default!
174       constraints:
175       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}\/[1-2][0-9]
176     sgi_subnet_id:
177       hidden: false
178       immutable: false
179       type: string
180       description: the UUID of the operator-created SGI subnet, IPv4
181       constraints:
182       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
183     trunk_net_id:
184       hidden: false
185       immutable: false
186       type: string
187       description: the UUID of the operator-created Traffic network
188       constraints:
189       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
190     vf_module_id:
191       hidden: false
192       immutable: false
193       type: string
194       description: Unique ID for this VNF Module instance
195     internal_net_id:
196       hidden: false
197       immutable: false
198       type: string
199       description: the UUID of the operator-created Internal network
200       constraints:
201       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
202     sbg_SGI_vlan_tag:
203       hidden: false
204       immutable: false
205       type: float
206       description: The internal VLAN TAG for SGI network
207       constraints:
208       - in_range:
209         - 1
210         - 4096
211     sbg_sc_flavor_name:
212       hidden: false
213       immutable: false
214       type: string
215       description: Flavor to use for SC VM. Minimum 4 non-HT vCPU and 16GB RAM required
216     sbg_comte_floating_ip:
217       hidden: false
218       immutable: false
219       type: string
220       description: Moveable IP (VIP) for COM on the Internal network, IPv4. Don't deviate from default!
221       constraints:
222       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}
223     charging_net_id:
224       hidden: false
225       immutable: false
226       type: string
227       description: the UUID of the operator-created Charging network
228       constraints:
229       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
230     sbg_UCOM_ips:
231       hidden: false
232       immutable: false
233       type: list
234       description: comma delimited list of IPv4 IPs to be used on UC One Mobile network
235       entry_schema:
236         type: string
237     sbg_avpn_ips:
238       hidden: false
239       immutable: false
240       type: list
241       description: |
242         comma delimited list of IPv4 IPs to be used on AVPN networks. n*2 IP address expected where n is the number of PL VM pairs. The first two addresses are assigned to the first PL VM pair, second two IPs to the second PL VM pair, and so on. Note: this is true regardless of the number of AVPN networks and sbg_AVPN_count.
243       entry_schema:
244         type: string
245     sbg_sc_names:
246       hidden: false
247       immutable: false
248       type: list
249       description: comma delimited list of VM names assigned to System Controller VMs
250       entry_schema:
251         type: string
252     vnf_id:
253       hidden: false
254       immutable: false
255       type: string
256       description: Unique ID for this VF instance
257     avpn_net_id:
258       hidden: false
259       immutable: false
260       type: list
261       description: comma delimited list of the UUIDs of the operator-created AVPN networks
262       entry_schema:
263         type: string
264     sbg_pl_image_name:
265       hidden: false
266       immutable: false
267       type: string
268       description: the name of the Glance PXE boot image for PL VMs
269     availability_zone_0:
270       hidden: false
271       immutable: false
272       type: string
273       description: First availability zone ID or Name.
274     availability_zone_1:
275       hidden: false
276       immutable: false
277       type: string
278       description: Second availability zone ID or Name.
279     UCOM_net_id:
280       hidden: false
281       immutable: false
282       type: string
283       description: the UUID of the operator-created UC One Mobile network
284       constraints:
285       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
286     sbg_UCOM_vlan_tag:
287       hidden: false
288       immutable: false
289       type: float
290       description: The internal VLAN TAG for UC One Mobile network
291       constraints:
292       - in_range:
293         - 1
294         - 4096
295     sbg_management_floating_ip:
296       hidden: false
297       immutable: false
298       type: string
299       description: Moveable Management IP (VIP), IPv4
300       constraints:
301       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}
302     dummy_net_id:
303       hidden: false
304       immutable: false
305       type: string
306       description: the UUID of the operator-created Dummy network
307       constraints:
308       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
309     sbg_core_v6_IPs:
310       hidden: false
311       immutable: false
312       type: list
313       description: comma delimited list of IPv6 IPs to be used on Core network
314       entry_schema:
315         type: string
316     sbg_AVPN_vlan_tag_list:
317       hidden: false
318       immutable: false
319       type: list
320       description: comma delimited list of internal VLAN TAG(s) used by AVPN networks
321       entry_schema:
322         type: string
323     sbg_pl_names:
324       hidden: false
325       immutable: false
326       type: list
327       description: comma delimited list of VM names assigned to Payload VMs
328       entry_schema:
329         type: string
330     sbg_management_gateway_ip_0:
331       hidden: false
332       immutable: false
333       type: string
334       description: IPv4 IP address of the default gateway on Management network
335       constraints:
336       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}
337     sbg_AVPN_count:
338       hidden: false
339       immutable: false
340       type: float
341       description: The number of AVPN networks
342       constraints:
343       - in_range:
344         - 1
345         - 999
346     sbg_charging_vlan_tag:
347       hidden: false
348       immutable: false
349       type: float
350       description: The internal VLAN TAG for Charging network
351       constraints:
352       - in_range:
353         - 1
354         - 4096
355     sbg_timezone:
356       hidden: false
357       immutable: false
358       type: string
359       description: Timezone.
360     ntp_servers:
361       hidden: false
362       immutable: false
363       type: list
364       description: comma delimited list of NTP servers required by System Controller VMs. Exactly 2 IPv4 values are required
365       entry_schema:
366         type: string
367     sbg_management_mac_addresses:
368       hidden: false
369       immutable: false
370       type: list
371       description: comma delimited list of MAC addresses for the VMs on the Management network
372       entry_schema:
373         type: string
374     core_subnet_id:
375       hidden: false
376       immutable: false
377       type: string
378       description: the UUID of the operator-created Core subnet, IPv4
379       constraints:
380       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
381     sbg_access_ips:
382       hidden: false
383       immutable: false
384       type: list
385       description: comma delimited list of IPv4 IPs to be used on Access network
386       entry_schema:
387         type: string
388     sbg_sc_volume_id_3:
389       hidden: false
390       immutable: false
391       type: string
392       description: the UUID of the pre-created Cinder volume attached to SC-2 as tools volume
393       constraints:
394       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
395     sbg_boot_floating_ip:
396       hidden: false
397       immutable: false
398       type: string
399       description: Moveable IP (VIP) for TFTP server on the Internal network, IPv4. Don't deviate from default!
400       constraints:
401       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}
402     sbg_sc_volume_id_0:
403       hidden: false
404       immutable: false
405       type: string
406       description: the UUID of the pre-created Cinder volume attached to SC-1 as root volume
407       constraints:
408       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
409     sbg_pl_flavor_name:
410       hidden: false
411       immutable: false
412       type: string
413       description: Flavor to use for PL VM. Minimum 8 non-HT vCPU and 64GB RAM required
414     sbg_sc_volume_id_2:
415       hidden: false
416       immutable: false
417       type: string
418       description: the UUID of the pre-created Cinder volume attached to SC-2 as root volume
419       constraints:
420       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
421     sbg_sc_volume_id_1:
422       hidden: false
423       immutable: false
424       type: string
425       description: the UUID of the pre-created Cinder volume attached to SC-1 as tools volume
426       constraints:
427       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
428     dummy_subnet_id:
429       hidden: false
430       immutable: false
431       type: string
432       description: the UUID of the operator-created dummy subnet, IPv4
433       constraints:
434       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
435   node_templates:
436     sbg_pl_trunk_subport_avpn_group_0:
437       type: org.openecomp.resource.abstract.nodes.heat.DPA3_New_VNF_TSBGv_nested_AVPN_subport
438       directives:
439       - substitutable
440       properties:
441         nested_avpn_net_id:
442           get_input: avpn_net_id
443         service_template_filter:
444           substitute_service_template: DPA3_New_VNF_TSBGv_nested_AVPN_subportServiceTemplate.yaml
445           count:
446             get_input: sbg_AVPN_count
447           mandatory: false
448         nested_sbg_AVPN_vlan_tag_list:
449           get_input: sbg_AVPN_vlan_tag_list
450         nested_trunk_port_id: sbg_pl_trunk_1_port_0
451         nested_sbg_avpn_ip_0:
452           get_input:
453           - sbg_avpn_ips
454           - 0
455         nested_avpn_subnet_id:
456           get_input: avpn_subnet_id
457         nested_sbg_AVPN_counter:
458           get_property:
459           - SELF
460           - service_template_filter
461           - index_value
462     abstract_sbg_sc:
463       type: org.openecomp.resource.abstract.nodes.sbg_sc
464       directives:
465       - substitutable
466       properties:
467         port_sbg_sc_internal_0_port_mac_requirements:
468           mac_count_required:
469             is_required: true
470         compute_sbg_sc_config_drive:
471         - true
472         port_sbg_sc_management_1_port_allowed_address_pairs:
473         - ip_address:
474             get_input: sbg_management_floating_ip
475         port_sbg_sc_internal_0_port_fixed_ips:
476         - ip_address:
477             get_input:
478             - sbg_internal_ips
479             - 0
480         vm_flavor_name:
481           get_input: sbg_sc_flavor_name
482         port_sbg_sc_internal_0_port_replacement_policy:
483         - AUTO
484         port_sbg_sc_management_1_port_replacement_policy:
485         - AUTO
486         port_sbg_sc_management_1_port_ip_requirements:
487         - ip_version: 4
488           ip_count_required:
489             is_required: true
490           floating_ip_count_required:
491             is_required: true
492         port_sbg_sc_management_1_port_mac_address:
493           get_input:
494           - sbg_management_mac_addresses
495           - 0
496         compute_sbg_sc_user_data_format:
497         - RAW
498         port_sbg_sc_management_1_port_fixed_ips:
499         - ip_address:
500             get_input:
501             - sbg_management_ips
502             - 0
503         compute_sbg_sc_name:
504         - get_input:
505           - sbg_sc_names
506           - 0
507         port_sbg_sc_internal_0_port_allowed_address_pairs:
508         - ip_address:
509             get_input: sbg_nfs_floating_ip
510         - ip_address:
511             get_input: sbg_comte_floating_ip
512         - ip_address:
513             get_input: sbg_boot_floating_ip
514         port_sbg_sc_internal_0_port_ip_requirements:
515         - ip_version: 4
516           ip_count_required:
517             is_required: true
518           floating_ip_count_required:
519             is_required: true
520         compute_sbg_sc_metadata:
521         - vf_module_id:
522             get_input: vf_module_id
523           vnf_id:
524             get_input: vnf_id
525         port_sbg_sc_internal_0_port_network_role_tag: internal
526         port_sbg_sc_internal_0_port_network:
527         - get_input: internal_net_id
528         port_sbg_sc_management_1_port_network:
529         - get_input: management_net_id
530         port_sbg_sc_management_1_port_mac_requirements:
531           mac_count_required:
532             is_required: true
533         port_sbg_sc_management_1_port_network_role_tag: management
534         port_sbg_sc_internal_0_port_mac_address:
535           get_input:
536           - sbg_internal_mac_addresses
537           - 0
538         compute_sbg_sc_availability_zone:
539         - get_input: availability_zone_0
540         service_template_filter:
541           substitute_service_template: Nested_sbg_scServiceTemplate.yaml
542           count: 1
543         index_value:
544           get_property:
545           - SELF
546           - service_template_filter
547           - index_value
548     sbg_pl_trunk_1_port_0:
549       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
550       properties:
551         replacement_policy: AUTO
552         ip_requirements:
553         - ip_version: 4
554           ip_count_required:
555             is_required: false
556           floating_ip_count_required:
557             is_required: false
558         mac_requirements:
559           mac_count_required:
560             is_required: false
561         value_specs:
562           trunkport:type: trunk
563         network_role_tag: trunk
564         network:
565           get_input: trunk_net_id
566     sbg_pl_internal_0_port_0:
567       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
568       properties:
569         replacement_policy: AUTO
570         ip_requirements:
571         - ip_version: 4
572           ip_count_required:
573             is_required: true
574           floating_ip_count_required:
575             is_required: false
576         fixed_ips:
577         - ip_address:
578             get_input:
579             - sbg_internal_ips
580             - 2
581         mac_requirements:
582           mac_count_required:
583             is_required: true
584         mac_address:
585           get_input:
586           - sbg_internal_mac_addresses
587           - 2
588         network_role_tag: internal
589         network:
590           get_input: internal_net_id
591   groups:
592     DPA3_New_VNF_TSBGv_base_group:
593       type: org.openecomp.groups.heat.HeatStack
594       properties:
595         heat_file: ../Artifacts/DPA3_New_VNF_TSBGv_base.yaml
596         description: |
597           SC1, SC2, PL3 and PL4. This is the main template, to be used to create an initial stack, with 1 mated pair
598       members:
599       - sbg_pl_trunk_subport_avpn_group_0
600       - sbg_pl_trunk_1_port_0
601       - sbg_pl_internal_0_port_0
602       - abstract_sbg_sc