9b2302bf01c954123e7cdcdf251bc66e456d0f48
[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_subinterface_indicator:
462         - true
463         port_vdbe_untr_port_name:
464         - str_replace:
465             template: VM_NAMEDBE001p1n004
466             params:
467               DBE:
468                 get_input: vdbe_device_name
469               VM_NAME:
470                 get_input: vdbe_name_1
471         subinterface_nested2_vlan_tag_list:
472         - get_input: untrusted_vlan_tags
473         subinterface_nested2_aap_untrusted_ip_prefix_len:
474         - get_input: vdbe_aap_untrusted_ip_prefix_len
475         subinterface_nested2_service_template_filter_count:
476         - 5
477         subinterface_nested2_counter:
478         - get_input: counter
479         subinterface_nested2_aap_untrusted_v6_ip_prefix_len:
480         - get_input: vdbe_aap_untrusted_v6_ip_prefix_len
481         subinterface_nested2_ip_v6_address:
482         - get_input: vdbe_untrusted_v6_ip_1
483         compute_vdbe_name:
484         - get_input: vdbe_name_1
485         subinterface_nested2_aap_untrusted_ip_prefix:
486         - get_input: vdbe_aap_untrusted_ip_prefix
487         subinterface_nested2_aap_address_mode:
488         - get_input: aap_address_mode
489         subinterface_nested2_vn_network_list:
490         - get_input: untrusted_vn_networks
491         port_vdbe_untr_port_ip_requirements:
492         - ip_version: 4
493           ip_count_required:
494             is_required: false
495           floating_ip_count_required:
496             is_required: false
497         service_template_filter:
498           substitute_service_template: Nested_vdbe_1ServiceTemplate.yaml
499           count: 1
500         index_value:
501           get_property:
502           - SELF
503           - service_template_filter
504           - index_value
505     abstract_vdbe:
506       type: org.openecomp.resource.abstract.nodes.vdbe
507       directives:
508       - substitutable
509       properties:
510         subinterface_nested1_aap_untrusted_v6_ip_prefix_len:
511         - get_input: vdbe_aap_untrusted_v6_ip_prefix_len
512         subinterface_nested1_aap_address_mode:
513         - get_input: aap_address_mode
514         subinterface_nested1_vn_network_list:
515         - get_input: untrusted_vn_networks
516         compute_vdbe_availability_zone:
517         - get_input: availability_zone_1
518         vm_flavor_name:
519           get_input: vdbe_flavor_name
520         vm_image_name:
521           get_input: vdbe_image_name
522         subinterface_nested1_vmac_address:
523         - get_input: vdbe_untrusted_vmac_address
524         subinterface_nested1_ip_address:
525         - get_input: vdbe_untrusted_ip_1
526         subinterface_nested1_subinterfaces_name_prefix:
527         - str_replace:
528             template: VM_NAMEDBE001p1n004
529             params:
530               DBE:
531                 get_input: vdbe_device_name
532               VM_NAME:
533                 get_input: vdbe_name_1
534         compute_vdbe_metadata:
535         - vf_module_id:
536             get_input: vf_module_id
537           vnf_id:
538             get_input: vnf_id
539           vnf_name:
540             get_input: vnf_name
541         subinterface_nested1_service_template_filter_count:
542         - get_input: untrusted_num_vn
543         subinterface_nested1_aap_untrusted_v6_ip_prefix:
544         - get_input: vdbe_aap_untrusted_v6_ip_prefix
545         subinterface_nested1_parent_interface:
546         - vdbe_1_untr_port_1
547         subinterface_nested1_aap_untrusted_ip_prefix_len:
548         - get_input: vdbe_aap_untrusted_ip_prefix_len
549         subinterface_nested1_ip_v6_address:
550         - get_input: vdbe_untrusted_v6_ip_1
551         port_vdbe_untr_port_mac_requirements:
552           mac_count_required:
553             is_required: false
554         port_vdbe_untr_port_subinterface_indicator:
555         - true
556         port_vdbe_untr_port_name:
557         - str_replace:
558             template: VM_NAMEDBE001p1n004
559             params:
560               DBE:
561                 get_input: vdbe_device_name
562               VM_NAME:
563                 get_input: vdbe_name_1
564         subinterface_nested1_mac_address:
565         - get_input: vdbe_hw_untr_mac_1
566         subinterface_nested1_aap_untrusted_ip_prefix:
567         - get_input: vdbe_aap_untrusted_ip_prefix
568         subinterface_nested1_aap_sec_untrusted_ip_prefix_len:
569         - get_input: vdbe_aap_sec_untrusted_ip_prefix_len
570         subinterface_nested1_vlan_tag_list:
571         - get_input: untrusted_vlan_tags
572         compute_vdbe_name:
573         - get_input: vdbe_name_1
574         subinterface_nested1_aap_sec_untrusted_ip_prefix:
575         - get_input: vdbe_aap_sec_untrusted_ip_prefix
576         port_vdbe_untr_port_ip_requirements:
577         - ip_version: 4
578           ip_count_required:
579             is_required: false
580           floating_ip_count_required:
581             is_required: false
582         service_template_filter:
583           substitute_service_template: Nested_vdbeServiceTemplate.yaml
584           count: 1
585         index_value:
586           get_property:
587           - SELF
588           - service_template_filter
589           - index_value
590   groups:
591     main_group:
592       type: org.openecomp.groups.heat.HeatStack
593       properties:
594         heat_file: ../Artifacts/main.yml
595         description: |
596           Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
597       members:
598       - control_int_net
599       - abstract_vdbe
600       - abstract_vdbe_1
601     untr_group:
602       type: org.openecomp.groups.VfcInstanceGroup
603       properties:
604         vfc_parent_port_role: untr
605         network_collection_function:
606           get_input: untr_network_collection_function
607         vfc_instance_group_function:
608           get_input: untr_vfc_instance_group_function
609         subinterface_role: untr
610       members:
611       - abstract_vdbe
612     oam_group:
613       type: org.openecomp.groups.VfcInstanceGroup
614       properties:
615         vfc_parent_port_role: untr
616         network_collection_function:
617           get_input: oam_network_collection_function
618         vfc_instance_group_function:
619           get_input: oam_vfc_instance_group_function
620         subinterface_role: oam
621       members:
622       - abstract_vdbe_1