e71657f3c9df7493b52b83de2782087e12f0277b
[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     control_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: control_int_net_rpf
35       type: string
36       description: Reverse Path Filtering enable or disable for the control virtual network
37     control_int_net_forwarding_mode:
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_forwarding_mode
48       type: string
49       description: forwarding mode of the control virtual network
50     vnf_name:
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: vnf_name
61       type: string
62       description: Unique name for this VF instance
63     vdbe_untrusted_ip_1:
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: vdbe_untrusted_ip_1
74       type: string
75       description: IPV4 address of the secondary vDBE VM on the VAN untrusted network
76     vdbe_aap_untrusted_ip_prefix_len:
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_aap_untrusted_ip_prefix_len
87       type: string
88       description: ip prefix length for the primary vDBE VM on the VAN untrusted network
89     untrusted_num_vn:
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: untrusted_num_vn
100       type: float
101       description: Number of vDBE subinterface virtual Networks
102       constraints:
103       - in_range:
104         - 1
105         - 77
106     aap_address_mode:
107       hidden: false
108       immutable: false
109       annotations:
110         source:
111           type: org.openecomp.annotations.Source
112           properties:
113             vf_module_label:
114             - main
115             source_type: HEAT
116             param_name: aap_address_mode
117       type: string
118       description: Address mode for the vDBE cluster IP
119     control_int_net_shared:
120       hidden: false
121       immutable: false
122       annotations:
123         source:
124           type: org.openecomp.annotations.Source
125           properties:
126             vf_module_label:
127             - main
128             source_type: HEAT
129             param_name: control_int_net_shared
130       type: boolean
131       description: control virtual network shared
132     vdbe_untrusted_v6_ip_1:
133       hidden: false
134       immutable: false
135       annotations:
136         source:
137           type: org.openecomp.annotations.Source
138           properties:
139             vf_module_label:
140             - main
141             source_type: HEAT
142             param_name: vdbe_untrusted_v6_ip_1
143       type: string
144       description: IPV6 address of the secondary vDBE VM on the VAN untrusted network
145     vdbe_untrusted_vmac_address:
146       hidden: false
147       immutable: false
148       annotations:
149         source:
150           type: org.openecomp.annotations.Source
151           properties:
152             vf_module_label:
153             - main
154             source_type: HEAT
155             param_name: vdbe_untrusted_vmac_address
156       type: string
157       description: Virtual MAC of the primary vDBE VM on the VAN untrusted network
158     control_int_net_flood_unknown_unicast:
159       hidden: false
160       immutable: false
161       annotations:
162         source:
163           type: org.openecomp.annotations.Source
164           properties:
165             vf_module_label:
166             - main
167             source_type: HEAT
168             param_name: control_int_net_flood_unknown_unicast
169       type: boolean
170       description: forwarding mode of the control virtual network
171     vdbe_aap_sec_untrusted_ip_prefix:
172       hidden: false
173       immutable: false
174       annotations:
175         source:
176           type: org.openecomp.annotations.Source
177           properties:
178             vf_module_label:
179             - main
180             source_type: HEAT
181             param_name: vdbe_aap_sec_untrusted_ip_prefix
182       type: string
183       description: ip prefix for secondary vDBE VM aap on the VAN untrusted network
184     vnf_id:
185       hidden: false
186       immutable: false
187       annotations:
188         source:
189           type: org.openecomp.annotations.Source
190           properties:
191             vf_module_label:
192             - main
193             source_type: HEAT
194             param_name: vnf_id
195       type: string
196       description: Unique ID for this VF inst
197     vdbe_name_1:
198       hidden: false
199       immutable: false
200       annotations:
201         source:
202           type: org.openecomp.annotations.Source
203           properties:
204             vf_module_label:
205             - main
206             source_type: HEAT
207             param_name: vdbe_name_1
208       type: string
209       description: VM Name for this vdbe node 1
210     availability_zone_1:
211       hidden: false
212       immutable: false
213       annotations:
214         source:
215           type: org.openecomp.annotations.Source
216           properties:
217             vf_module_label:
218             - main
219             source_type: HEAT
220             param_name: availability_zone_1
221       type: string
222       description: The availability zone of secondary node1 vDBE vm in the local HA pair.
223     untrusted_vn_networks:
224       hidden: false
225       immutable: false
226       annotations:
227         source:
228           type: org.openecomp.annotations.Source
229           properties:
230             vf_module_label:
231             - main
232             source_type: HEAT
233             param_name: untrusted_vn_networks
234       type: list
235       description: List of subinterface virtual networks
236       entry_schema:
237         type: string
238     vdbe_image_name:
239       hidden: false
240       immutable: false
241       annotations:
242         source:
243           type: org.openecomp.annotations.Source
244           properties:
245             vf_module_label:
246             - main
247             source_type: HEAT
248             param_name: vdbe_image_name
249       type: string
250       description: Image to use for vDBE
251     oam_net_name:
252       hidden: false
253       immutable: false
254       annotations:
255         source:
256           type: org.openecomp.annotations.Source
257           properties:
258             vf_module_label:
259             - main
260             source_type: HEAT
261             param_name: oam_net_name
262       type: string
263       description: Name of NSDNet network from which the management IP addresses will be allocated
264     vdbe_aap_sec_untrusted_ip_prefix_len:
265       hidden: false
266       immutable: false
267       annotations:
268         source:
269           type: org.openecomp.annotations.Source
270           properties:
271             vf_module_label:
272             - main
273             source_type: HEAT
274             param_name: vdbe_aap_sec_untrusted_ip_prefix_len
275       type: string
276       description: ip prefix length for the secondary DBE VM aap on the VAN untrusted network
277     vdbe_aap_untrusted_v6_ip_prefix:
278       hidden: false
279       immutable: false
280       annotations:
281         source:
282           type: org.openecomp.annotations.Source
283           properties:
284             vf_module_label:
285             - main
286             source_type: HEAT
287             param_name: vdbe_aap_untrusted_v6_ip_prefix
288       type: string
289       description: ipv6 prefix for the primary vDBE VM on the VAN untrusted network
290     vdbe_aap_untrusted_v6_ip_prefix_len:
291       hidden: false
292       immutable: false
293       annotations:
294         source:
295           type: org.openecomp.annotations.Source
296           properties:
297             vf_module_label:
298             - main
299             source_type: HEAT
300             param_name: vdbe_aap_untrusted_v6_ip_prefix_len
301       type: string
302       description: ipv6 prefix length for the primary vDBE VM on the VAN untrusted network
303     oam_network_collection_function:
304       type: string
305       required: true
306     untrusted_vlan_tags:
307       hidden: false
308       immutable: false
309       annotations:
310         source:
311           type: org.openecomp.annotations.Source
312           properties:
313             vf_module_label:
314             - main
315             source_type: HEAT
316             param_name: untrusted_vlan_tags
317       type: list
318       description: List of subinterface vlan tags
319       entry_schema:
320         type: string
321     untr_network_collection_function:
322       type: string
323       required: true
324     untr_vfc_instance_group_function:
325       type: string
326       required: true
327     vdbe_flavor_name:
328       hidden: false
329       immutable: false
330       annotations:
331         source:
332           type: org.openecomp.annotations.Source
333           properties:
334             vf_module_label:
335             - main
336             source_type: HEAT
337             param_name: vdbe_flavor_name
338       type: string
339       description: Flavor to use for vDBE
340     counter:
341       hidden: false
342       immutable: false
343       annotations:
344         source:
345           type: org.openecomp.annotations.Source
346           properties:
347             vf_module_label:
348             - main
349             source_type: HEAT
350             param_name: counter
351       type: float
352       description: Counter.
353     oam_vfc_instance_group_function:
354       type: string
355       required: true
356     vdbe_hw_untr_mac_1:
357       hidden: false
358       immutable: false
359       annotations:
360         source:
361           type: org.openecomp.annotations.Source
362           properties:
363             vf_module_label:
364             - main
365             source_type: HEAT
366             param_name: vdbe_hw_untr_mac_1
367       type: string
368       description: Secondary MAC address of the secondary vDBE VM on the VAN untrusted network
369     untrusted_net_name:
370       hidden: false
371       immutable: false
372       annotations:
373         source:
374           type: org.openecomp.annotations.Source
375           properties:
376             vf_module_label:
377             - main
378             source_type: HEAT
379             param_name: untrusted_net_name
380       type: string
381       description: Name of public untrusted network into which this vDBE HA cluster is deployed
382     vdbe_device_name:
383       hidden: false
384       immutable: false
385       annotations:
386         source:
387           type: org.openecomp.annotations.Source
388           properties:
389             vf_module_label:
390             - main
391             source_type: HEAT
392             param_name: vdbe_device_name
393       type: string
394       description: VDBE device Name for this vdbe VNF
395     vdbe_aap_untrusted_ip_prefix:
396       hidden: false
397       immutable: false
398       annotations:
399         source:
400           type: org.openecomp.annotations.Source
401           properties:
402             vf_module_label:
403             - main
404             source_type: HEAT
405             param_name: vdbe_aap_untrusted_ip_prefix
406       type: string
407       description: ip prefix for primary vDBE VM on the VAN untrusted network
408   node_templates:
409     control_int_net:
410       type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
411       properties:
412         network_name:
413           str_replace:
414             template: VNF_NAME_control_net
415             params:
416               VNF_NAME:
417                 get_input: vnf_name
418     abstract_vdbe_1:
419       type: org.openecomp.resource.abstract.nodes.vdbe_1
420       directives:
421       - substitutable
422       properties:
423         subinterface_nested2_subinterfaces_name_prefix:
424         - str_replace:
425             template: VM_NAMEDBE001p1n004
426             params:
427               DBE:
428                 get_input: vdbe_device_name
429               VM_NAME:
430                 get_input: vdbe_name_1
431         compute_vdbe_availability_zone:
432         - get_input: availability_zone_1
433         subinterface_nested2_aap_untrusted_v6_ip_prefix:
434         - get_input: vdbe_aap_untrusted_v6_ip_prefix
435         vm_flavor_name:
436           get_input: vdbe_flavor_name
437         subinterface_nested2_parent_interface:
438         - vdbe_2_untr_port_2
439         subinterface_nested2_aap_sec_untrusted_ip_prefix:
440         - get_input: vdbe_aap_sec_untrusted_ip_prefix
441         subinterface_nested2_vmac_address:
442         - get_input: vdbe_untrusted_vmac_address
443         vm_image_name:
444           get_input: vdbe_image_name
445         compute_vdbe_metadata:
446         - vf_module_id:
447             get_input: vf_module_id
448           vnf_id:
449             get_input: vnf_id
450           vnf_name:
451             get_input: vnf_name
452         subinterface_nested2_aap_sec_untrusted_ip_prefix_len:
453         - get_input: vdbe_aap_sec_untrusted_ip_prefix_len
454         subinterface_nested2_mac_address:
455         - get_input: vdbe_hw_untr_mac_1
456         port_vdbe_untr_port_mac_requirements:
457           mac_count_required:
458             is_required: false
459         subinterface_nested2_ip_address:
460         - get_input: vdbe_untrusted_ip_1
461         port_vdbe_untr_port_name:
462         - str_replace:
463             template: VM_NAMEDBE001p1n004
464             params:
465               DBE:
466                 get_input: vdbe_device_name
467               VM_NAME:
468                 get_input: vdbe_name_1
469         subinterface_nested2_vlan_tag_list:
470         - get_input: untrusted_vlan_tags
471         subinterface_nested2_aap_untrusted_ip_prefix_len:
472         - get_input: vdbe_aap_untrusted_ip_prefix_len
473         subinterface_nested2_service_template_filter_count:
474         - 5
475         subinterface_nested2_counter:
476         - get_input: counter
477         subinterface_nested2_aap_untrusted_v6_ip_prefix_len:
478         - get_input: vdbe_aap_untrusted_v6_ip_prefix_len
479         subinterface_nested2_ip_v6_address:
480         - get_input: vdbe_untrusted_v6_ip_1
481         compute_vdbe_name:
482         - get_input: vdbe_name_1
483         subinterface_nested2_aap_untrusted_ip_prefix:
484         - get_input: vdbe_aap_untrusted_ip_prefix
485         subinterface_nested2_aap_address_mode:
486         - get_input: aap_address_mode
487         subinterface_nested2_vn_network_list:
488         - get_input: untrusted_vn_networks
489         port_vdbe_untr_port_ip_requirements:
490         - ip_version: 4
491           ip_count_required:
492             is_required: false
493           floating_ip_count_required:
494             is_required: false
495         service_template_filter:
496           substitute_service_template: Nested_vdbe_1ServiceTemplate.yaml
497           count: 1
498         index_value:
499           get_property:
500           - SELF
501           - service_template_filter
502           - index_value
503     abstract_vdbe:
504       type: org.openecomp.resource.abstract.nodes.vdbe
505       directives:
506       - substitutable
507       properties:
508         subinterface_nested1_aap_untrusted_v6_ip_prefix_len:
509         - get_input: vdbe_aap_untrusted_v6_ip_prefix_len
510         subinterface_nested1_aap_address_mode:
511         - get_input: aap_address_mode
512         subinterface_nested1_vn_network_list:
513         - get_input: untrusted_vn_networks
514         compute_vdbe_availability_zone:
515         - get_input: availability_zone_1
516         vm_flavor_name:
517           get_input: vdbe_flavor_name
518         vm_image_name:
519           get_input: vdbe_image_name
520         subinterface_nested1_vmac_address:
521         - get_input: vdbe_untrusted_vmac_address
522         subinterface_nested1_ip_address:
523         - get_input: vdbe_untrusted_ip_1
524         subinterface_nested1_subinterfaces_name_prefix:
525         - str_replace:
526             template: VM_NAMEDBE001p1n004
527             params:
528               DBE:
529                 get_input: vdbe_device_name
530               VM_NAME:
531                 get_input: vdbe_name_1
532         compute_vdbe_metadata:
533         - vf_module_id:
534             get_input: vf_module_id
535           vnf_id:
536             get_input: vnf_id
537           vnf_name:
538             get_input: vnf_name
539         subinterface_nested1_service_template_filter_count:
540         - get_input: untrusted_num_vn
541         subinterface_nested1_aap_untrusted_v6_ip_prefix:
542         - get_input: vdbe_aap_untrusted_v6_ip_prefix
543         subinterface_nested1_parent_interface:
544         - vdbe_1_untr_port_1
545         subinterface_nested1_aap_untrusted_ip_prefix_len:
546         - get_input: vdbe_aap_untrusted_ip_prefix_len
547         subinterface_nested1_ip_v6_address:
548         - get_input: vdbe_untrusted_v6_ip_1
549         port_vdbe_untr_port_mac_requirements:
550           mac_count_required:
551             is_required: false
552         port_vdbe_untr_port_name:
553         - str_replace:
554             template: VM_NAMEDBE001p1n004
555             params:
556               DBE:
557                 get_input: vdbe_device_name
558               VM_NAME:
559                 get_input: vdbe_name_1
560         subinterface_nested1_mac_address:
561         - get_input: vdbe_hw_untr_mac_1
562         subinterface_nested1_aap_untrusted_ip_prefix:
563         - get_input: vdbe_aap_untrusted_ip_prefix
564         subinterface_nested1_aap_sec_untrusted_ip_prefix_len:
565         - get_input: vdbe_aap_sec_untrusted_ip_prefix_len
566         subinterface_nested1_vlan_tag_list:
567         - get_input: untrusted_vlan_tags
568         compute_vdbe_name:
569         - get_input: vdbe_name_1
570         subinterface_nested1_aap_sec_untrusted_ip_prefix:
571         - get_input: vdbe_aap_sec_untrusted_ip_prefix
572         port_vdbe_untr_port_ip_requirements:
573         - ip_version: 4
574           ip_count_required:
575             is_required: false
576           floating_ip_count_required:
577             is_required: false
578         service_template_filter:
579           substitute_service_template: Nested_vdbeServiceTemplate.yaml
580           count: 1
581         index_value:
582           get_property:
583           - SELF
584           - service_template_filter
585           - index_value
586   groups:
587     main_group:
588       type: org.openecomp.groups.heat.HeatStack
589       properties:
590         heat_file: ../Artifacts/main.yml
591         description: |
592           Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
593       members:
594       - control_int_net
595       - abstract_vdbe
596       - abstract_vdbe_1
597     untr_group:
598       type: org.openecomp.groups.VfcInstanceGroup
599       properties:
600         vfc_parent_port_role: untr
601         network_collection_function:
602           get_input: untr_network_collection_function
603         vfc_instance_group_function:
604           get_input: untr_vfc_instance_group_function
605         subinterface_role: untr
606       members:
607       - abstract_vdbe
608     oam_group:
609       type: org.openecomp.groups.VfcInstanceGroup
610       properties:
611         vfc_parent_port_role: untr
612         network_collection_function:
613           get_input: oam_network_collection_function
614         vfc_instance_group_function:
615           get_input: oam_vfc_instance_group_function
616         subinterface_role: oam
617       members:
618       - abstract_vdbe_1