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