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