cc23ab471f6bda7edfa226c25190cb9e9013b278
[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     vf_module_id:
12       hidden: false
13       immutable: false
14       annotations:
15         source:
16           type: org.openecomp.annotations.Source
17           properties:
18             vf_module_label:
19             - main
20             source_type: HEAT
21             param_name: vf_module_id
22       type: string
23       description: Unique ID for this VF module inst
24     fabric_int_net_rpf:
25       hidden: false
26       immutable: false
27       annotations:
28         source:
29           type: org.openecomp.annotations.Source
30           properties:
31             vf_module_label:
32             - main
33             source_type: HEAT
34             param_name: fabric_int_net_rpf
35       type: string
36       description: Reverse Path Filtering enable or disable for the fabric virtual network
37     control_int_net_rpf:
38       hidden: false
39       immutable: false
40       annotations:
41         source:
42           type: org.openecomp.annotations.Source
43           properties:
44             vf_module_label:
45             - main
46             source_type: HEAT
47             param_name: control_int_net_rpf
48       type: string
49       description: Reverse Path Filtering enable or disable for the control virtual network
50     control_int_net_forwarding_mode:
51       hidden: false
52       immutable: false
53       annotations:
54         source:
55           type: org.openecomp.annotations.Source
56           properties:
57             vf_module_label:
58             - main
59             source_type: HEAT
60             param_name: control_int_net_forwarding_mode
61       type: string
62       description: forwarding mode of the control virtual network
63     vnf_name:
64       hidden: false
65       immutable: false
66       annotations:
67         source:
68           type: org.openecomp.annotations.Source
69           properties:
70             vf_module_label:
71             - main
72             source_type: HEAT
73             param_name: vnf_name
74       type: string
75       description: Unique name for this VF instance
76     vdbe_untrusted_ip_1:
77       hidden: false
78       immutable: false
79       annotations:
80         source:
81           type: org.openecomp.annotations.Source
82           properties:
83             vf_module_label:
84             - main
85             source_type: HEAT
86             param_name: vdbe_untrusted_ip_1
87       type: string
88       description: IPV4 address of the secondary vDBE VM on the VAN untrusted network
89     vdbe_aap_untrusted_ip_prefix_len:
90       hidden: false
91       immutable: false
92       annotations:
93         source:
94           type: org.openecomp.annotations.Source
95           properties:
96             vf_module_label:
97             - main
98             source_type: HEAT
99             param_name: vdbe_aap_untrusted_ip_prefix_len
100       type: string
101       description: ip prefix length for the primary vDBE VM on the VAN untrusted network
102     aap_address_mode:
103       hidden: false
104       immutable: false
105       annotations:
106         source:
107           type: org.openecomp.annotations.Source
108           properties:
109             vf_module_label:
110             - main
111             source_type: HEAT
112             param_name: aap_address_mode
113       type: string
114       description: Address mode for the vDBE cluster IP
115     control_int_net_shared:
116       hidden: false
117       immutable: false
118       annotations:
119         source:
120           type: org.openecomp.annotations.Source
121           properties:
122             vf_module_label:
123             - main
124             source_type: HEAT
125             param_name: control_int_net_shared
126       type: boolean
127       description: control virtual network shared
128     vdbe_untrusted_v6_ip_1:
129       hidden: false
130       immutable: false
131       annotations:
132         source:
133           type: org.openecomp.annotations.Source
134           properties:
135             vf_module_label:
136             - main
137             source_type: HEAT
138             param_name: vdbe_untrusted_v6_ip_1
139       type: string
140       description: IPV6 address of the secondary vDBE VM on the VAN untrusted network
141     vdbe_untrusted_vmac_address:
142       hidden: false
143       immutable: false
144       annotations:
145         source:
146           type: org.openecomp.annotations.Source
147           properties:
148             vf_module_label:
149             - main
150             source_type: HEAT
151             param_name: vdbe_untrusted_vmac_address
152       type: string
153       description: Virtual MAC of the primary vDBE VM on the VAN untrusted network
154     control_int_net_flood_unknown_unicast:
155       hidden: false
156       immutable: false
157       annotations:
158         source:
159           type: org.openecomp.annotations.Source
160           properties:
161             vf_module_label:
162             - main
163             source_type: HEAT
164             param_name: control_int_net_flood_unknown_unicast
165       type: boolean
166       description: forwarding mode of the control virtual network
167     vdbe_aap_sec_untrusted_ip_prefix:
168       hidden: false
169       immutable: false
170       annotations:
171         source:
172           type: org.openecomp.annotations.Source
173           properties:
174             vf_module_label:
175             - main
176             source_type: HEAT
177             param_name: vdbe_aap_sec_untrusted_ip_prefix
178       type: string
179       description: ip prefix for secondary vDBE VM aap on the VAN untrusted network
180     vnf_id:
181       hidden: false
182       immutable: false
183       annotations:
184         source:
185           type: org.openecomp.annotations.Source
186           properties:
187             vf_module_label:
188             - main
189             source_type: HEAT
190             param_name: vnf_id
191       type: string
192       description: Unique ID for this VF inst
193     vdbe_name_1:
194       hidden: false
195       immutable: false
196       annotations:
197         source:
198           type: org.openecomp.annotations.Source
199           properties:
200             vf_module_label:
201             - main
202             source_type: HEAT
203             param_name: vdbe_name_1
204       type: string
205       description: VM Name for this vdbe node 1
206     availability_zone_1:
207       hidden: false
208       immutable: false
209       annotations:
210         source:
211           type: org.openecomp.annotations.Source
212           properties:
213             vf_module_label:
214             - main
215             source_type: HEAT
216             param_name: availability_zone_1
217       type: string
218       description: The availability zone of secondary node1 vDBE vm in the local HA pair.
219     untrusted_vn_networks:
220       hidden: false
221       immutable: false
222       annotations:
223         source:
224           type: org.openecomp.annotations.Source
225           properties:
226             vf_module_label:
227             - main
228             source_type: HEAT
229             param_name: untrusted_vn_networks
230       type: list
231       description: List of subinterface virtual networks
232       entry_schema:
233         type: string
234     vdbe_image_name:
235       hidden: false
236       immutable: false
237       annotations:
238         source:
239           type: org.openecomp.annotations.Source
240           properties:
241             vf_module_label:
242             - main
243             source_type: HEAT
244             param_name: vdbe_image_name
245       type: string
246       description: Image to use for vDBE
247     oam_net_name:
248       hidden: false
249       immutable: false
250       annotations:
251         source:
252           type: org.openecomp.annotations.Source
253           properties:
254             vf_module_label:
255             - main
256             source_type: HEAT
257             param_name: oam_net_name
258       type: string
259       description: Name of NSDNet network from which the management IP addresses will be allocated
260     vdbe_aap_sec_untrusted_ip_prefix_len:
261       hidden: false
262       immutable: false
263       annotations:
264         source:
265           type: org.openecomp.annotations.Source
266           properties:
267             vf_module_label:
268             - main
269             source_type: HEAT
270             param_name: vdbe_aap_sec_untrusted_ip_prefix_len
271       type: string
272       description: ip prefix length for the secondary DBE VM aap on the VAN untrusted network
273     vdbe_aap_untrusted_v6_ip_prefix:
274       hidden: false
275       immutable: false
276       annotations:
277         source:
278           type: org.openecomp.annotations.Source
279           properties:
280             vf_module_label:
281             - main
282             source_type: HEAT
283             param_name: vdbe_aap_untrusted_v6_ip_prefix
284       type: string
285       description: ipv6 prefix for the primary vDBE VM on the VAN untrusted network
286     vdbe_aap_untrusted_v6_ip_prefix_len:
287       hidden: false
288       immutable: false
289       annotations:
290         source:
291           type: org.openecomp.annotations.Source
292           properties:
293             vf_module_label:
294             - main
295             source_type: HEAT
296             param_name: vdbe_aap_untrusted_v6_ip_prefix_len
297       type: string
298       description: ipv6 prefix length for the primary vDBE VM on the VAN untrusted network
299     fabric_int_net_flood_unknown_unicast:
300       hidden: false
301       immutable: false
302       annotations:
303         source:
304           type: org.openecomp.annotations.Source
305           properties:
306             vf_module_label:
307             - main
308             source_type: HEAT
309             param_name: fabric_int_net_flood_unknown_unicast
310       type: boolean
311       description: forwarding mode of the fabric virtual network
312     oam_network_collection_function:
313       type: string
314       required: true
315     untrusted_vlan_tags:
316       hidden: false
317       immutable: false
318       annotations:
319         source:
320           type: org.openecomp.annotations.Source
321           properties:
322             vf_module_label:
323             - main
324             source_type: HEAT
325             param_name: untrusted_vlan_tags
326       type: list
327       description: List of subinterface vlan tags
328       entry_schema:
329         type: string
330     untr_network_collection_function:
331       type: string
332       required: true
333     untr_vfc_instance_group_function:
334       type: string
335       required: true
336     vdbe_flavor_name:
337       hidden: false
338       immutable: false
339       annotations:
340         source:
341           type: org.openecomp.annotations.Source
342           properties:
343             vf_module_label:
344             - main
345             source_type: HEAT
346             param_name: vdbe_flavor_name
347       type: string
348       description: Flavor to use for vDBE
349     counter:
350       hidden: false
351       immutable: false
352       annotations:
353         source:
354           type: org.openecomp.annotations.Source
355           properties:
356             vf_module_label:
357             - main
358             source_type: HEAT
359             param_name: counter
360       type: float
361       description: Counter.
362     fabric_int_net_forwarding_mode:
363       hidden: false
364       immutable: false
365       annotations:
366         source:
367           type: org.openecomp.annotations.Source
368           properties:
369             vf_module_label:
370             - main
371             source_type: HEAT
372             param_name: fabric_int_net_forwarding_mode
373       type: string
374       description: forwarding mode of the fabric virtual network
375     fabric_int_net_shared:
376       hidden: false
377       immutable: false
378       annotations:
379         source:
380           type: org.openecomp.annotations.Source
381           properties:
382             vf_module_label:
383             - main
384             source_type: HEAT
385             param_name: fabric_int_net_shared
386       description: fabric virtual network shared
387     oam_vfc_instance_group_function:
388       type: string
389       required: true
390     vdbe_hw_untr_mac_1:
391       hidden: false
392       immutable: false
393       annotations:
394         source:
395           type: org.openecomp.annotations.Source
396           properties:
397             vf_module_label:
398             - main
399             source_type: HEAT
400             param_name: vdbe_hw_untr_mac_1
401       type: string
402       description: Secondary MAC address of the secondary vDBE VM on the VAN untrusted network
403     untrusted_net_name:
404       hidden: false
405       immutable: false
406       annotations:
407         source:
408           type: org.openecomp.annotations.Source
409           properties:
410             vf_module_label:
411             - main
412             source_type: HEAT
413             param_name: untrusted_net_name
414       type: string
415       description: Name of public untrusted network into which this vDBE HA cluster is deployed
416     vdbe_device_name:
417       hidden: false
418       immutable: false
419       annotations:
420         source:
421           type: org.openecomp.annotations.Source
422           properties:
423             vf_module_label:
424             - main
425             source_type: HEAT
426             param_name: vdbe_device_name
427       type: string
428       description: VDBE device Name for this vdbe VNF
429     vdbe_aap_untrusted_ip_prefix:
430       hidden: false
431       immutable: false
432       annotations:
433         source:
434           type: org.openecomp.annotations.Source
435           properties:
436             vf_module_label:
437             - main
438             source_type: HEAT
439             param_name: vdbe_aap_untrusted_ip_prefix
440       type: string
441       description: ip prefix for primary vDBE VM on the VAN untrusted network
442   node_templates:
443     fabric_int_net:
444       type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
445       properties:
446         network_name:
447           str_replace:
448             template: template-fabric-int
449             params:
450               VNF_NAME:
451                 get_input: vnf_name
452     control_int_net:
453       type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
454       properties:
455         network_name:
456           str_replace:
457             template: VNF_NAME_control_net
458             params:
459               VNF_NAME:
460                 get_input: vnf_name
461     abstract_vdbe:
462       type: org.openecomp.resource.abstract.nodes.vdbe
463       directives:
464       - substitutable
465       properties:
466         subinterface_vlan1_aap_untrusted_v6_ip_prefix:
467         - get_input: vdbe_aap_untrusted_v6_ip_prefix
468         - get_input: vdbe_aap_untrusted_v6_ip_prefix
469         subinterface_vlan1_aap_sec_untrusted_ip_prefix:
470         - get_input: vdbe_aap_sec_untrusted_ip_prefix
471         - get_input: vdbe_aap_sec_untrusted_ip_prefix
472         port_vdbe_oam_vmi_virtual_machine_interface_mac_addresses:
473         - - get_input: vdbe_hw_untr_mac_1
474         - - get_input: vdbe_hw_untr_mac_1
475         subinterface_vlan1_vmac_address:
476         - get_input: vdbe_untrusted_vmac_address
477         - get_input: vdbe_untrusted_vmac_address
478         compute_vdbe_availability_zone:
479         - get_input: availability_zone_1
480         - get_input: availability_zone_1
481         vm_flavor_name:
482           get_input: vdbe_flavor_name
483         subinterface_vlan1_counter:
484         - get_input: counter
485         - get_input: counter
486         subinterface_vlan2_aap_untrusted_v6_ip_prefix:
487         - get_input: vdbe_aap_untrusted_v6_ip_prefix
488         - get_input: vdbe_aap_untrusted_v6_ip_prefix
489         vm_image_name:
490           get_input: vdbe_image_name
491         compute_vdbe_metadata:
492         - vf_module_id:
493             get_input: vf_module_id
494           vnf_id:
495             get_input: vnf_id
496           vnf_name:
497             get_input: vnf_name
498         - vf_module_id:
499             get_input: vf_module_id
500           vnf_id:
501             get_input: vnf_id
502           vnf_name:
503             get_input: vnf_name
504         subinterface_vlan1_aap_untrusted_v6_ip_prefix_len:
505         - get_input: vdbe_aap_untrusted_v6_ip_prefix_len
506         - get_input: vdbe_aap_untrusted_v6_ip_prefix_len
507         port_vdbe_oam_vmi_virtual_network_refs:
508         - - fabric_int_net
509         - - fabric_int_net
510         port_vdbe_oam_vmi_name:
511         - Port_2
512         - Port_4
513         subinterface_vlan2_ip_address:
514         - get_input: vdbe_untrusted_ip_1
515         - get_input: vdbe_untrusted_ip_1
516         subinterface_vlan2_ip_v6_address:
517         - get_input: vdbe_untrusted_v6_ip_1
518         - get_input: vdbe_untrusted_v6_ip_1
519         subinterface_vlan2_parent_interface:
520         - vdbe_1_oam_vmi_1
521         - vdbe_2_oam_vmi_2
522         subinterface_vlan2_aap_address_mode:
523         - get_input: aap_address_mode
524         - get_input: aap_address_mode
525         subinterface_vlan1_mac_address:
526         - get_input: vdbe_hw_untr_mac_1
527         - get_input: vdbe_hw_untr_mac_1
528         subinterface_vlan2_mac_address:
529         - get_input: vdbe_hw_untr_mac_1
530         - get_input: vdbe_hw_untr_mac_1
531         subinterface_vlan1_aap_untrusted_ip_prefix_len:
532         - get_input: vdbe_aap_untrusted_ip_prefix_len
533         - get_input: vdbe_aap_untrusted_ip_prefix_len
534         subinterface_vlan1_ip_address:
535         - get_input: vdbe_untrusted_ip_1
536         - get_input: vdbe_untrusted_ip_1
537         subinterface_vlan2_aap_sec_untrusted_ip_prefix:
538         - get_input: vdbe_aap_sec_untrusted_ip_prefix
539         - get_input: vdbe_aap_sec_untrusted_ip_prefix
540         port_vdbe_untr_vmi_name:
541         - str_replace:
542             template: VM_NAMEDBE001p1n004
543             params:
544               DBE:
545                 get_input: vdbe_device_name
546               VM_NAME:
547                 get_input: vdbe_name_1
548         - str_replace:
549             template: Port 3
550             params:
551               DBE:
552                 get_input: vdbe_device_name
553               VM_NAME:
554                 get_input: vdbe_name_1
555         compute_vdbe_name:
556         - get_input: vdbe_name_1
557         - get_input: vdbe_name_1
558         subinterface_vlan2_aap_untrusted_ip_prefix:
559         - get_input: vdbe_aap_untrusted_ip_prefix
560         - get_input: vdbe_aap_untrusted_ip_prefix
561         subinterface_vlan1_ip_v6_address:
562         - get_input: vdbe_untrusted_v6_ip_1
563         - get_input: vdbe_untrusted_v6_ip_1
564         subinterface_vlan2_vmac_address:
565         - get_input: vdbe_untrusted_vmac_address
566         - get_input: vdbe_untrusted_vmac_address
567         subinterface_vlan1_aap_untrusted_ip_prefix:
568         - get_input: vdbe_aap_untrusted_ip_prefix
569         - get_input: vdbe_aap_untrusted_ip_prefix
570         subinterface_vlan2_vn_network_list:
571         - fabric_int_net
572         - fabric_int_net
573         port_vdbe_untr_vmi_virtual_machine_interface_mac_addresses:
574         - - get_input: vdbe_hw_untr_mac_1
575         - - get_input: vdbe_hw_untr_mac_1
576         subinterface_vlan1_subinterfaces_name_prefix:
577         - str_replace:
578             template: VM_NAMEDBE001p1n004
579             params:
580               DBE:
581                 get_input: vdbe_device_name
582               VM_NAME:
583                 get_input: vdbe_name_1
584         - str_replace:
585             template: VM_NAMEDBE001p1n004
586             params:
587               DBE:
588                 get_input: vdbe_device_name
589               VM_NAME:
590                 get_input: vdbe_name_1
591         port_vdbe_untr_vmi_virtual_network_refs:
592         - - control_int_net
593         - - control_int_net
594         subinterface_vlan2_vlan_tag_list:
595         - get_input: untrusted_vlan_tags
596         - get_input: untrusted_vlan_tags
597         subinterface_vlan1_vn_network_list:
598         - get_input: untrusted_vn_networks
599         - get_input: untrusted_vn_networks
600         subinterface_vlan2_aap_sec_untrusted_ip_prefix_len:
601         - get_input: vdbe_aap_sec_untrusted_ip_prefix_len
602         - get_input: vdbe_aap_sec_untrusted_ip_prefix_len
603         subinterface_vlan2_counter:
604         - get_input: counter
605         - get_input: counter
606         subinterface_vlan1_parent_interface:
607         - vdbe_1_untr_vmi_1
608         - vdbe_1_untr_vmi_2
609         subinterface_vlan1_aap_address_mode:
610         - get_input: aap_address_mode
611         - get_input: aap_address_mode
612         subinterface_vlan2_aap_untrusted_ip_prefix_len:
613         - get_input: vdbe_aap_untrusted_ip_prefix_len
614         - get_input: vdbe_aap_untrusted_ip_prefix_len
615         subinterface_vlan2_subinterfaces_name_prefix:
616         - str_replace:
617             template: VM_NAMEDBE001p1n004
618             params:
619               DBE:
620                 get_input: vdbe_device_name
621               VM_NAME:
622                 get_input: vdbe_name_1
623         - str_replace:
624             template: VM_NAMEDBE001p1n004
625             params:
626               DBE:
627                 get_input: vdbe_device_name
628               VM_NAME:
629                 get_input: vdbe_name_1
630         subinterface_vlan2_aap_untrusted_v6_ip_prefix_len:
631         - get_input: vdbe_aap_untrusted_v6_ip_prefix_len
632         - get_input: vdbe_aap_untrusted_v6_ip_prefix_len
633         subinterface_vlan1_aap_sec_untrusted_ip_prefix_len:
634         - get_input: vdbe_aap_sec_untrusted_ip_prefix_len
635         - get_input: vdbe_aap_sec_untrusted_ip_prefix_len
636         subinterface_vlan1_vlan_tag_list:
637         - get_input: untrusted_vlan_tags
638         - get_input: untrusted_vlan_tags
639         service_template_filter:
640           substitute_service_template: Nested_vdbeServiceTemplate.yaml
641           count: 2
642         index_value:
643           get_property:
644           - SELF
645           - service_template_filter
646           - index_value
647       requirements:
648       - link_vdbe_vdbe_untr_vmi:
649           capability: tosca.capabilities.network.Linkable
650           node: control_int_net
651           relationship: tosca.relationships.network.LinksTo
652       - link_vdbe_vdbe_oam_vmi:
653           capability: tosca.capabilities.network.Linkable
654           node: fabric_int_net
655           relationship: tosca.relationships.network.LinksTo
656       - link_vdbe_1_subint_oam_vmi_1_vdbe_vdbe_oam_vmi_vlan2:
657           capability: tosca.capabilities.network.Linkable
658           node: fabric_int_net
659           relationship: tosca.relationships.network.LinksTo
660   groups:
661     main_group:
662       type: org.openecomp.groups.heat.HeatStack
663       properties:
664         heat_file: ../Artifacts/main.yml
665         description: |
666           Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
667       members:
668       - fabric_int_net
669       - control_int_net
670       - abstract_vdbe
671     untr_group:
672       type: org.openecomp.groups.VfcInstanceGroup
673       properties:
674         vfc_parent_port_role: untr
675         network_collection_function:
676           get_input: untr_network_collection_function
677         vfc_instance_group_function:
678           get_input: untr_vfc_instance_group_function
679         subinterface_role: untr
680       members:
681       - abstract_vdbe
682     oam_group:
683       type: org.openecomp.groups.VfcInstanceGroup
684       properties:
685         vfc_parent_port_role: oam
686         network_collection_function:
687           get_input: oam_network_collection_function
688         vfc_instance_group_function:
689           get_input: oam_vfc_instance_group_function
690         subinterface_role: oam
691       members:
692       - abstract_vdbe