933474cc28c92650478d414a4aebf1f47ca0f3e6
[sdc.git] /
1 tosca_definitions_version: tosca_simple_yaml_1_0_0
2 metadata:
3   template_name: nested_pattern4
4 imports:
5 - openecomp_heat_index:
6     file: openecomp-heat/_index.yml
7 - GlobalSubstitutionTypes:
8     file: GlobalSubstitutionTypesServiceTemplate.yaml
9 node_types:
10   org.openecomp.resource.vfc.compute.nodes.heat.vdbe:
11     derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
12 topology_template:
13   inputs:
14     vf_module_id:
15       hidden: false
16       immutable: false
17       type: string
18       description: Unique ID for this VF module inst
19     control_int_net_rpf:
20       hidden: false
21       immutable: false
22       type: string
23       description: Reverse Path Filtering enable or disable for the control virtual network
24     control_int_net_forwarding_mode:
25       hidden: false
26       immutable: false
27       type: string
28       description: forwarding mode of the control virtual network
29     vnf_name:
30       hidden: false
31       immutable: false
32       type: string
33       description: Unique name for this VF instance
34     vdbe_untrusted_ip_1:
35       hidden: false
36       immutable: false
37       type: string
38       description: IPV4 address of the secondary vDBE VM on the VAN untrusted network
39     vdbe_aap_untrusted_ip_prefix_len:
40       hidden: false
41       immutable: false
42       type: string
43       description: ip prefix length for the primary vDBE VM on the VAN untrusted network
44     untrusted_num_vn:
45       hidden: false
46       immutable: false
47       type: float
48       description: Number of vDBE subinterface virtual Networks
49       constraints:
50       - in_range:
51         - 1
52         - 77
53     vf_module_name:
54       hidden: false
55       immutable: false
56       type: string
57       description: Unique ID for this VF Module instance
58     aap_address_mode:
59       hidden: false
60       immutable: false
61       type: string
62       description: Address mode for the vDBE cluster IP
63     control_int_net_shared:
64       hidden: false
65       immutable: false
66       type: boolean
67       description: control virtual network shared
68     vdbe_untrusted_v6_ip_1:
69       hidden: false
70       immutable: false
71       type: string
72       description: IPV6 address of the secondary vDBE VM on the VAN untrusted network
73     vdbe_untrusted_vmac_address:
74       hidden: false
75       immutable: false
76       type: string
77       description: Virtual MAC of the primary vDBE VM on the VAN untrusted network
78     control_int_net_flood_unknown_unicast:
79       hidden: false
80       immutable: false
81       type: boolean
82       description: forwarding mode of the control virtual network
83     port_vdbe_untr_1_port_network_role:
84       type: string
85       required: true
86     vdbe_aap_sec_untrusted_ip_prefix:
87       hidden: false
88       immutable: false
89       type: string
90       description: ip prefix for secondary vDBE VM aap on the VAN untrusted network
91     vnf_id:
92       hidden: false
93       immutable: false
94       type: string
95       description: Unique ID for this VF inst
96     vdbe_name_1:
97       hidden: false
98       immutable: false
99       type: string
100       description: VM Name for this vdbe node 1
101     port_vdbe_untr_1_port_ip_requirements:
102       type: list
103       required: true
104       entry_schema:
105         type: org.openecomp.datatypes.network.IpRequirements
106     availability_zone_1:
107       hidden: false
108       immutable: false
109       type: string
110       description: The availability zone of secondary node1 vDBE vm in the local HA pair.
111     untrusted_vn_networks:
112       hidden: false
113       immutable: false
114       type: list
115       description: List of subinterface virtual networks
116       entry_schema:
117         type: string
118     vdbe_image_name:
119       hidden: false
120       immutable: false
121       type: string
122       description: Image to use for vDBE
123     oam_net_name:
124       hidden: false
125       immutable: false
126       type: string
127       description: Name of NSDNet network from which the management IP addresses will be allocated
128     vdbe_aap_sec_untrusted_ip_prefix_len:
129       hidden: false
130       immutable: false
131       type: string
132       description: ip prefix length for the secondary DBE VM aap on the VAN untrusted network
133     port_vdbe_untr_1_port_mac_requirements:
134       type: org.openecomp.datatypes.network.MacRequirements
135       required: true
136     port_vdbe_untr_1_port_order:
137       type: integer
138       required: true
139     vdbe_aap_untrusted_v6_ip_prefix:
140       hidden: false
141       immutable: false
142       type: string
143       description: ipv6 prefix for the primary vDBE VM on the VAN untrusted network
144     vdbe_aap_untrusted_v6_ip_prefix_len:
145       hidden: false
146       immutable: false
147       type: string
148       description: ipv6 prefix length for the primary vDBE VM on the VAN untrusted network
149     untrusted_vlan_tags:
150       hidden: false
151       immutable: false
152       type: list
153       description: List of subinterface vlan tags
154       entry_schema:
155         type: string
156     vdbe_flavor_name:
157       hidden: false
158       immutable: false
159       type: string
160       description: Flavor to use for vDBE
161     port_vdbe_untr_1_port_exCP_naming:
162       type: org.openecomp.datatypes.Naming
163       required: true
164     counter:
165       hidden: false
166       immutable: false
167       type: float
168       description: Counter.
169     port_vdbe_untr_1_port_subnetpoolid:
170       type: string
171       required: true
172     vdbe_hw_untr_mac_1:
173       hidden: false
174       immutable: false
175       type: string
176       description: Secondary MAC address of the secondary vDBE VM on the VAN untrusted network
177     untrusted_net_name:
178       hidden: false
179       immutable: false
180       type: string
181       description: Name of public untrusted network into which this vDBE HA cluster is deployed
182     port_vdbe_untr_1_port_network_role_tag:
183       type: string
184       required: true
185     vdbe_device_name:
186       hidden: false
187       immutable: false
188       type: string
189       description: VDBE device Name for this vdbe VNF
190     port_vdbe_untr_1_port_vlan_requirements:
191       type: list
192       required: true
193       entry_schema:
194         type: org.openecomp.datatypes.network.VlanRequirements
195     vdbe_aap_untrusted_ip_prefix:
196       hidden: false
197       immutable: false
198       type: string
199       description: ip prefix for primary vDBE VM on the VAN untrusted network
200   node_templates:
201     vdbe_untr_2_subports:
202       type: org.openecomp.resource.abstract.nodes.heat.subinterface.nested_vlan
203       directives:
204       - substitutable
205       properties:
206         aap_untrusted_ip_prefix:
207           get_input: vdbe_aap_untrusted_ip_prefix
208         aap_sec_untrusted_ip_prefix:
209           get_input: vdbe_aap_sec_untrusted_ip_prefix
210         ip_v6_address:
211           get_input: vdbe_untrusted_v6_ip_1
212         counter:
213           get_input: counter
214         ip_address:
215           get_input: vdbe_untrusted_ip_1
216         subinterfaces_name_prefix:
217           str_replace:
218             template: VM_NAMEDBE001p1n004
219             params:
220               DBE:
221                 get_input: vdbe_device_name
222               VM_NAME:
223                 get_input: vdbe_name_1
224         aap_address_mode:
225           get_input: aap_address_mode
226         service_template_filter:
227           substitute_service_template: nested_vlanServiceTemplate.yaml
228           count: 5
229           mandatory: true
230         aap_untrusted_v6_ip_prefix:
231           get_input: vdbe_aap_untrusted_v6_ip_prefix
232         parent_interface: vdbe_untr_1_port
233         vn_network_list:
234           get_input: untrusted_vn_networks
235         mac_address:
236           get_input: vdbe_hw_untr_mac_1
237         vlan_tag_list:
238           get_input: untrusted_vlan_tags
239         aap_sec_untrusted_ip_prefix_len:
240           get_input: vdbe_aap_sec_untrusted_ip_prefix_len
241         vmac_address:
242           get_input: vdbe_untrusted_vmac_address
243         aap_untrusted_v6_ip_prefix_len:
244           get_input: vdbe_aap_untrusted_v6_ip_prefix_len
245         aap_untrusted_ip_prefix_len:
246           get_input: vdbe_aap_untrusted_ip_prefix_len
247       requirements:
248       - binding_vdbe_untr_x_subport:
249           capability: tosca.capabilities.network.Bindable
250           node: vdbe_untr_1_port
251           relationship: tosca.relationships.network.BindsTo
252     vdbe_node_1:
253       type: org.openecomp.resource.vfc.compute.nodes.heat.vdbe
254       properties:
255         flavor:
256           get_input: vdbe_flavor_name
257         availability_zone:
258           get_input: availability_zone_1
259         image:
260           get_input: vdbe_image_name
261         metadata:
262           vf_module_id:
263             get_input: vf_module_id
264           vnf_id:
265             get_input: vnf_id
266           vnf_name:
267             get_input: vnf_name
268         name:
269           get_input: vdbe_name_1
270     vdbe_untr_1_port:
271       type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
272       properties:
273         subnetpoolid:
274           get_input: port_vdbe_untr_1_port_subnetpoolid
275         ip_requirements:
276           get_input: port_vdbe_untr_1_port_ip_requirements
277         network_role:
278           get_input: port_vdbe_untr_1_port_network_role
279         mac_requirements:
280           get_input: port_vdbe_untr_1_port_mac_requirements
281         subinterface_indicator: true
282         name:
283           str_replace:
284             template: VM_NAMEDBE001p1n004
285             params:
286               DBE:
287                 get_input: vdbe_device_name
288               VM_NAME:
289                 get_input: vdbe_name_1
290         exCP_naming:
291           get_input: port_vdbe_untr_1_port_exCP_naming
292         virtual_network_refs:
293         - control_int_net
294         vlan_requirements:
295           get_input: port_vdbe_untr_1_port_vlan_requirements
296         virtual_machine_interface_allowed_address_pairs:
297           allowed_address_pair:
298           - address_mode:
299               get_input: aap_address_mode
300             ip:
301               ip_prefix:
302                 get_input: vdbe_aap_untrusted_ip_prefix
303               ip_prefix_len:
304                 get_input: vdbe_aap_untrusted_ip_prefix_len
305             mac:
306               get_input: vdbe_untrusted_vmac_address
307           - address_mode:
308               get_input: aap_address_mode
309             ip:
310               ip_prefix:
311                 get_input: vdbe_aap_sec_untrusted_ip_prefix
312               ip_prefix_len:
313                 get_input: vdbe_aap_sec_untrusted_ip_prefix_len
314             mac:
315               get_input: vdbe_hw_untr_mac_1
316           - address_mode:
317               get_input: aap_address_mode
318             ip:
319               ip_prefix:
320                 get_input: vdbe_aap_untrusted_v6_ip_prefix
321               ip_prefix_len:
322                 get_input: vdbe_aap_untrusted_v6_ip_prefix_len
323             mac:
324               get_input: vdbe_untrusted_vmac_address
325         network_role_tag:
326           get_input: port_vdbe_untr_1_port_network_role_tag
327         virtual_machine_interface_mac_addresses:
328         - get_input: vdbe_hw_untr_mac_1
329         order:
330           get_input: port_vdbe_untr_1_port_order
331       requirements:
332       - link:
333           capability: tosca.capabilities.network.Linkable
334           node: control_int_net
335           relationship: tosca.relationships.network.LinksTo
336       - binding:
337           capability: tosca.capabilities.network.Bindable
338           node: vdbe_node_1
339           relationship: tosca.relationships.network.BindsTo
340     vdbe_untr_1_subports:
341       type: org.openecomp.resource.abstract.nodes.heat.subinterface.nested_vlan
342       directives:
343       - substitutable
344       properties:
345         aap_untrusted_ip_prefix:
346           get_input: vdbe_aap_untrusted_ip_prefix
347         aap_sec_untrusted_ip_prefix:
348           get_input: vdbe_aap_sec_untrusted_ip_prefix
349         ip_v6_address:
350           get_input: vdbe_untrusted_v6_ip_1
351         counter:
352           get_property:
353           - SELF
354           - service_template_filter
355           - index_value
356         ip_address:
357           get_input: vdbe_untrusted_ip_1
358         subinterfaces_name_prefix:
359           str_replace:
360             template: VM_NAMEDBE001p1n004
361             params:
362               DBE:
363                 get_input: vdbe_device_name
364               VM_NAME:
365                 get_input: vdbe_name_1
366         aap_address_mode:
367           get_input: aap_address_mode
368         service_template_filter:
369           substitute_service_template: nested_vlanServiceTemplate.yaml
370           count:
371             get_input: untrusted_num_vn
372           mandatory: false
373         aap_untrusted_v6_ip_prefix:
374           get_input: vdbe_aap_untrusted_v6_ip_prefix
375         parent_interface: vdbe_untr_1_port
376         vn_network_list:
377           get_input: untrusted_vn_networks
378         mac_address:
379           get_input: vdbe_hw_untr_mac_1
380         vlan_tag_list:
381           get_input: untrusted_vlan_tags
382         aap_sec_untrusted_ip_prefix_len:
383           get_input: vdbe_aap_sec_untrusted_ip_prefix_len
384         vmac_address:
385           get_input: vdbe_untrusted_vmac_address
386         aap_untrusted_v6_ip_prefix_len:
387           get_input: vdbe_aap_untrusted_v6_ip_prefix_len
388         aap_untrusted_ip_prefix_len:
389           get_input: vdbe_aap_untrusted_ip_prefix_len
390       requirements:
391       - binding_vdbe_untr_x_subport:
392           capability: tosca.capabilities.network.Bindable
393           node: vdbe_untr_1_port
394           relationship: tosca.relationships.network.BindsTo
395     control_int_net:
396       type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
397       properties:
398         network_name:
399           str_replace:
400             template: VNF_NAME_control_net
401             params:
402               VNF_NAME:
403                 get_input: vnf_name
404   groups:
405     nested_pattern4_group:
406       type: org.openecomp.groups.heat.HeatStack
407       properties:
408         heat_file: ../Artifacts/nested_pattern4.yml
409         description: |
410           Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
411       members:
412       - vdbe_untr_2_subports
413       - vdbe_node_1
414       - vdbe_untr_1_port
415       - vdbe_untr_1_subports
416       - control_int_net
417   substitution_mappings:
418     node_type: org.openecomp.resource.abstract.nodes.heat.vdbe
419     capabilities:
420       disk.latency_vdbe_node_1:
421       - vdbe_node_1
422       - disk.latency
423       binding_vdbe_node_1:
424       - vdbe_node_1
425       - binding
426       network.outgoing.bytes.rate_vdbe_untr_1_port:
427       - vdbe_untr_1_port
428       - network.outgoing.bytes.rate
429       instance_vdbe_node_1:
430       - vdbe_node_1
431       - instance
432       forwarder_vdbe_untr_1_port:
433       - vdbe_untr_1_port
434       - forwarder
435       disk.device.read.requests_vdbe_node_1:
436       - vdbe_node_1
437       - disk.device.read.requests
438       disk.device.usage_vdbe_node_1:
439       - vdbe_node_1
440       - disk.device.usage
441       disk.write.bytes_vdbe_node_1:
442       - vdbe_node_1
443       - disk.write.bytes
444       disk.device.write.bytes_vdbe_node_1:
445       - vdbe_node_1
446       - disk.device.write.bytes
447       disk.allocation_vdbe_node_1:
448       - vdbe_node_1
449       - disk.allocation
450       memory_vdbe_node_1:
451       - vdbe_node_1
452       - memory
453       cpu_util_vdbe_node_1:
454       - vdbe_node_1
455       - cpu_util
456       network.incoming.packets.rate_vdbe_untr_1_port:
457       - vdbe_untr_1_port
458       - network.incoming.packets.rate
459       disk.device.read.bytes_vdbe_node_1:
460       - vdbe_node_1
461       - disk.device.read.bytes
462       feature_vdbe_untr_2_subports:
463       - vdbe_untr_2_subports
464       - feature
465       disk.device.read.bytes.rate_vdbe_node_1:
466       - vdbe_node_1
467       - disk.device.read.bytes.rate
468       disk.device.allocation_vdbe_node_1:
469       - vdbe_node_1
470       - disk.device.allocation
471       disk.write.requests.rate_vdbe_node_1:
472       - vdbe_node_1
473       - disk.write.requests.rate
474       disk.root.size_vdbe_node_1:
475       - vdbe_node_1
476       - disk.root.size
477       disk.device.iops_vdbe_node_1:
478       - vdbe_node_1
479       - disk.device.iops
480       disk.device.write.requests_vdbe_node_1:
481       - vdbe_node_1
482       - disk.device.write.requests
483       disk.write.requests_vdbe_node_1:
484       - vdbe_node_1
485       - disk.write.requests
486       network.incoming.bytes.rate_vdbe_untr_1_port:
487       - vdbe_untr_1_port
488       - network.incoming.bytes.rate
489       vcpus_vdbe_node_1:
490       - vdbe_node_1
491       - vcpus
492       binding_vdbe_untr_1_port:
493       - vdbe_untr_1_port
494       - binding
495       disk.ephemeral.size_vdbe_node_1:
496       - vdbe_node_1
497       - disk.ephemeral.size
498       network.outgoing.bytes_vdbe_untr_1_port:
499       - vdbe_untr_1_port
500       - network.outgoing.bytes
501       feature_vdbe_untr_1_subports:
502       - vdbe_untr_1_subports
503       - feature
504       disk.device.latency_vdbe_node_1:
505       - vdbe_node_1
506       - disk.device.latency
507       disk.capacity_vdbe_node_1:
508       - vdbe_node_1
509       - disk.capacity
510       disk.device.capacity_vdbe_node_1:
511       - vdbe_node_1
512       - disk.device.capacity
513       link_control_int_net:
514       - control_int_net
515       - link
516       network.incoming.bytes_vdbe_untr_1_port:
517       - vdbe_untr_1_port
518       - network.incoming.bytes
519       end_point_control_int_net:
520       - control_int_net
521       - end_point
522       disk.usage_vdbe_node_1:
523       - vdbe_node_1
524       - disk.usage
525       disk.read.bytes_vdbe_node_1:
526       - vdbe_node_1
527       - disk.read.bytes
528       feature_vdbe_untr_x_subport_vdbe_untr_1_subports:
529       - vdbe_untr_1_subports
530       - feature_vdbe_untr_x_subport
531       disk.device.read.requests.rate_vdbe_node_1:
532       - vdbe_node_1
533       - disk.device.read.requests.rate
534       host_vdbe_node_1:
535       - vdbe_node_1
536       - host
537       feature_control_int_net:
538       - control_int_net
539       - feature
540       cpu.delta_vdbe_node_1:
541       - vdbe_node_1
542       - cpu.delta
543       network.incoming.packets_vdbe_untr_1_port:
544       - vdbe_untr_1_port
545       - network.incoming.packets
546       scalable_vdbe_node_1:
547       - vdbe_node_1
548       - scalable
549       disk.iops_vdbe_node_1:
550       - vdbe_node_1
551       - disk.iops
552       feature_vdbe_node_1:
553       - vdbe_node_1
554       - feature
555       memory.resident_vdbe_node_1:
556       - vdbe_node_1
557       - memory.resident
558       endpoint_vdbe_node_1:
559       - vdbe_node_1
560       - endpoint
561       network.outgoing.packets.rate_vdbe_untr_1_port:
562       - vdbe_untr_1_port
563       - network.outgoing.packets.rate
564       os_vdbe_node_1:
565       - vdbe_node_1
566       - os
567       network.outpoing.packets_vdbe_untr_1_port:
568       - vdbe_untr_1_port
569       - network.outpoing.packets
570       disk.read.bytes.rate_vdbe_node_1:
571       - vdbe_node_1
572       - disk.read.bytes.rate
573       disk.device.write.bytes.rate_vdbe_node_1:
574       - vdbe_node_1
575       - disk.device.write.bytes.rate
576       attachment_control_int_net:
577       - control_int_net
578       - attachment
579       cpu_vdbe_node_1:
580       - vdbe_node_1
581       - cpu
582       disk.device.write.requests.rate_vdbe_node_1:
583       - vdbe_node_1
584       - disk.device.write.requests.rate
585       disk.read.requests_vdbe_node_1:
586       - vdbe_node_1
587       - disk.read.requests
588       feature_vdbe_untr_x_subport_vdbe_untr_2_subports:
589       - vdbe_untr_2_subports
590       - feature_vdbe_untr_x_subport
591       disk.write.bytes.rate_vdbe_node_1:
592       - vdbe_node_1
593       - disk.write.bytes.rate
594       feature_vdbe_untr_1_port:
595       - vdbe_untr_1_port
596       - feature
597       memory.usage_vdbe_node_1:
598       - vdbe_node_1
599       - memory.usage
600     requirements:
601       dependency_vdbe_untr_2_subports:
602       - vdbe_untr_2_subports
603       - dependency
604       dependency_vdbe_untr_x_subport_vdbe_untr_1_subports:
605       - vdbe_untr_1_subports
606       - dependency_vdbe_untr_x_subport
607       dependency_vdbe_node_1:
608       - vdbe_node_1
609       - dependency
610       local_storage_vdbe_node_1:
611       - vdbe_node_1
612       - local_storage
613       dependency_vdbe_untr_1_port:
614       - vdbe_untr_1_port
615       - dependency
616       dependency_control_int_net:
617       - control_int_net
618       - dependency
619       dependency_vdbe_untr_x_subport_vdbe_untr_2_subports:
620       - vdbe_untr_2_subports
621       - dependency_vdbe_untr_x_subport
622       subinterface_link_vdbe_untr_x_subport_vdbe_untr_2_subports:
623       - vdbe_untr_2_subports
624       - subinterface_link_vdbe_untr_x_subport
625       subinterface_link_vdbe_untr_x_subport_vdbe_untr_1_subports:
626       - vdbe_untr_1_subports
627       - subinterface_link_vdbe_untr_x_subport
628       dependency_vdbe_untr_1_subports:
629       - vdbe_untr_1_subports
630       - dependency