7bda071fa22f5f8ea250c448ca032151375e5fc7
[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         ip_requirements:
274           get_input: port_vdbe_untr_1_port_ip_requirements
275         network_role:
276           get_input: port_vdbe_untr_1_port_network_role
277         subnetpoolid:
278           get_input: port_vdbe_untr_1_port_subnetpoolid
279         mac_requirements:
280           get_input: port_vdbe_untr_1_port_mac_requirements
281         name:
282           str_replace:
283             template: VM_NAMEDBE001p1n004
284             params:
285               DBE:
286                 get_input: vdbe_device_name
287               VM_NAME:
288                 get_input: vdbe_name_1
289         exCP_naming:
290           get_input: port_vdbe_untr_1_port_exCP_naming
291         virtual_network_refs:
292         - control_int_net
293         vlan_requirements:
294           get_input: port_vdbe_untr_1_port_vlan_requirements
295         virtual_machine_interface_allowed_address_pairs:
296           allowed_address_pair:
297           - address_mode:
298               get_input: aap_address_mode
299             ip:
300               ip_prefix:
301                 get_input: vdbe_aap_untrusted_ip_prefix
302               ip_prefix_len:
303                 get_input: vdbe_aap_untrusted_ip_prefix_len
304             mac:
305               get_input: vdbe_untrusted_vmac_address
306           - address_mode:
307               get_input: aap_address_mode
308             ip:
309               ip_prefix:
310                 get_input: vdbe_aap_sec_untrusted_ip_prefix
311               ip_prefix_len:
312                 get_input: vdbe_aap_sec_untrusted_ip_prefix_len
313             mac:
314               get_input: vdbe_hw_untr_mac_1
315           - address_mode:
316               get_input: aap_address_mode
317             ip:
318               ip_prefix:
319                 get_input: vdbe_aap_untrusted_v6_ip_prefix
320               ip_prefix_len:
321                 get_input: vdbe_aap_untrusted_v6_ip_prefix_len
322             mac:
323               get_input: vdbe_untrusted_vmac_address
324         network_role_tag:
325           get_input: port_vdbe_untr_1_port_network_role_tag
326         virtual_machine_interface_mac_addresses:
327         - get_input: vdbe_hw_untr_mac_1
328         order:
329           get_input: port_vdbe_untr_1_port_order
330       requirements:
331       - link:
332           capability: tosca.capabilities.network.Linkable
333           node: control_int_net
334           relationship: tosca.relationships.network.LinksTo
335       - binding:
336           capability: tosca.capabilities.network.Bindable
337           node: vdbe_node_1
338           relationship: tosca.relationships.network.BindsTo
339     vdbe_untr_1_subports:
340       type: org.openecomp.resource.abstract.nodes.heat.subinterface.nested_vlan
341       directives:
342       - substitutable
343       properties:
344         aap_untrusted_ip_prefix:
345           get_input: vdbe_aap_untrusted_ip_prefix
346         aap_sec_untrusted_ip_prefix:
347           get_input: vdbe_aap_sec_untrusted_ip_prefix
348         ip_v6_address:
349           get_input: vdbe_untrusted_v6_ip_1
350         counter:
351           get_property:
352           - SELF
353           - service_template_filter
354           - index_value
355         ip_address:
356           get_input: vdbe_untrusted_ip_1
357         subinterfaces_name_prefix:
358           str_replace:
359             template: VM_NAMEDBE001p1n004
360             params:
361               DBE:
362                 get_input: vdbe_device_name
363               VM_NAME:
364                 get_input: vdbe_name_1
365         aap_address_mode:
366           get_input: aap_address_mode
367         service_template_filter:
368           substitute_service_template: nested_vlanServiceTemplate.yaml
369           count:
370             get_input: untrusted_num_vn
371           mandatory: false
372         aap_untrusted_v6_ip_prefix:
373           get_input: vdbe_aap_untrusted_v6_ip_prefix
374         parent_interface: vdbe_untr_1_port
375         vn_network_list:
376           get_input: untrusted_vn_networks
377         mac_address:
378           get_input: vdbe_hw_untr_mac_1
379         vlan_tag_list:
380           get_input: untrusted_vlan_tags
381         aap_sec_untrusted_ip_prefix_len:
382           get_input: vdbe_aap_sec_untrusted_ip_prefix_len
383         vmac_address:
384           get_input: vdbe_untrusted_vmac_address
385         aap_untrusted_v6_ip_prefix_len:
386           get_input: vdbe_aap_untrusted_v6_ip_prefix_len
387         aap_untrusted_ip_prefix_len:
388           get_input: vdbe_aap_untrusted_ip_prefix_len
389       requirements:
390       - binding_vdbe_untr_x_subport:
391           capability: tosca.capabilities.network.Bindable
392           node: vdbe_untr_1_port
393           relationship: tosca.relationships.network.BindsTo
394     control_int_net:
395       type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
396       properties:
397         network_name:
398           str_replace:
399             template: VNF_NAME_control_net
400             params:
401               VNF_NAME:
402                 get_input: vnf_name
403   groups:
404     nested_pattern4_group:
405       type: org.openecomp.groups.heat.HeatStack
406       properties:
407         heat_file: ../Artifacts/nested_pattern4.yml
408         description: |
409           Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
410       members:
411       - vdbe_untr_2_subports
412       - vdbe_node_1
413       - vdbe_untr_1_port
414       - vdbe_untr_1_subports
415       - control_int_net
416   substitution_mappings:
417     node_type: org.openecomp.resource.abstract.nodes.heat.vdbe
418     capabilities:
419       disk.latency_vdbe_node_1:
420       - vdbe_node_1
421       - disk.latency
422       binding_vdbe_node_1:
423       - vdbe_node_1
424       - binding
425       network.outgoing.bytes.rate_vdbe_untr_1_port:
426       - vdbe_untr_1_port
427       - network.outgoing.bytes.rate
428       instance_vdbe_node_1:
429       - vdbe_node_1
430       - instance
431       forwarder_vdbe_untr_1_port:
432       - vdbe_untr_1_port
433       - forwarder
434       disk.device.read.requests_vdbe_node_1:
435       - vdbe_node_1
436       - disk.device.read.requests
437       disk.device.usage_vdbe_node_1:
438       - vdbe_node_1
439       - disk.device.usage
440       disk.write.bytes_vdbe_node_1:
441       - vdbe_node_1
442       - disk.write.bytes
443       disk.device.write.bytes_vdbe_node_1:
444       - vdbe_node_1
445       - disk.device.write.bytes
446       disk.allocation_vdbe_node_1:
447       - vdbe_node_1
448       - disk.allocation
449       memory_vdbe_node_1:
450       - vdbe_node_1
451       - memory
452       cpu_util_vdbe_node_1:
453       - vdbe_node_1
454       - cpu_util
455       network.incoming.packets.rate_vdbe_untr_1_port:
456       - vdbe_untr_1_port
457       - network.incoming.packets.rate
458       disk.device.read.bytes_vdbe_node_1:
459       - vdbe_node_1
460       - disk.device.read.bytes
461       feature_vdbe_untr_2_subports:
462       - vdbe_untr_2_subports
463       - feature
464       disk.device.read.bytes.rate_vdbe_node_1:
465       - vdbe_node_1
466       - disk.device.read.bytes.rate
467       disk.device.allocation_vdbe_node_1:
468       - vdbe_node_1
469       - disk.device.allocation
470       disk.write.requests.rate_vdbe_node_1:
471       - vdbe_node_1
472       - disk.write.requests.rate
473       disk.root.size_vdbe_node_1:
474       - vdbe_node_1
475       - disk.root.size
476       disk.device.iops_vdbe_node_1:
477       - vdbe_node_1
478       - disk.device.iops
479       disk.device.write.requests_vdbe_node_1:
480       - vdbe_node_1
481       - disk.device.write.requests
482       disk.write.requests_vdbe_node_1:
483       - vdbe_node_1
484       - disk.write.requests
485       network.incoming.bytes.rate_vdbe_untr_1_port:
486       - vdbe_untr_1_port
487       - network.incoming.bytes.rate
488       vcpus_vdbe_node_1:
489       - vdbe_node_1
490       - vcpus
491       binding_vdbe_untr_1_port:
492       - vdbe_untr_1_port
493       - binding
494       disk.ephemeral.size_vdbe_node_1:
495       - vdbe_node_1
496       - disk.ephemeral.size
497       network.outgoing.bytes_vdbe_untr_1_port:
498       - vdbe_untr_1_port
499       - network.outgoing.bytes
500       feature_vdbe_untr_1_subports:
501       - vdbe_untr_1_subports
502       - feature
503       disk.device.latency_vdbe_node_1:
504       - vdbe_node_1
505       - disk.device.latency
506       disk.capacity_vdbe_node_1:
507       - vdbe_node_1
508       - disk.capacity
509       disk.device.capacity_vdbe_node_1:
510       - vdbe_node_1
511       - disk.device.capacity
512       link_control_int_net:
513       - control_int_net
514       - link
515       network.incoming.bytes_vdbe_untr_1_port:
516       - vdbe_untr_1_port
517       - network.incoming.bytes
518       end_point_control_int_net:
519       - control_int_net
520       - end_point
521       disk.usage_vdbe_node_1:
522       - vdbe_node_1
523       - disk.usage
524       disk.read.bytes_vdbe_node_1:
525       - vdbe_node_1
526       - disk.read.bytes
527       feature_vdbe_untr_x_subport_vdbe_untr_1_subports:
528       - vdbe_untr_1_subports
529       - feature_vdbe_untr_x_subport
530       disk.device.read.requests.rate_vdbe_node_1:
531       - vdbe_node_1
532       - disk.device.read.requests.rate
533       host_vdbe_node_1:
534       - vdbe_node_1
535       - host
536       feature_control_int_net:
537       - control_int_net
538       - feature
539       cpu.delta_vdbe_node_1:
540       - vdbe_node_1
541       - cpu.delta
542       network.incoming.packets_vdbe_untr_1_port:
543       - vdbe_untr_1_port
544       - network.incoming.packets
545       scalable_vdbe_node_1:
546       - vdbe_node_1
547       - scalable
548       disk.iops_vdbe_node_1:
549       - vdbe_node_1
550       - disk.iops
551       feature_vdbe_node_1:
552       - vdbe_node_1
553       - feature
554       memory.resident_vdbe_node_1:
555       - vdbe_node_1
556       - memory.resident
557       endpoint_vdbe_node_1:
558       - vdbe_node_1
559       - endpoint
560       network.outgoing.packets.rate_vdbe_untr_1_port:
561       - vdbe_untr_1_port
562       - network.outgoing.packets.rate
563       os_vdbe_node_1:
564       - vdbe_node_1
565       - os
566       network.outpoing.packets_vdbe_untr_1_port:
567       - vdbe_untr_1_port
568       - network.outpoing.packets
569       disk.read.bytes.rate_vdbe_node_1:
570       - vdbe_node_1
571       - disk.read.bytes.rate
572       disk.device.write.bytes.rate_vdbe_node_1:
573       - vdbe_node_1
574       - disk.device.write.bytes.rate
575       attachment_control_int_net:
576       - control_int_net
577       - attachment
578       cpu_vdbe_node_1:
579       - vdbe_node_1
580       - cpu
581       disk.device.write.requests.rate_vdbe_node_1:
582       - vdbe_node_1
583       - disk.device.write.requests.rate
584       disk.read.requests_vdbe_node_1:
585       - vdbe_node_1
586       - disk.read.requests
587       feature_vdbe_untr_x_subport_vdbe_untr_2_subports:
588       - vdbe_untr_2_subports
589       - feature_vdbe_untr_x_subport
590       disk.write.bytes.rate_vdbe_node_1:
591       - vdbe_node_1
592       - disk.write.bytes.rate
593       feature_vdbe_untr_1_port:
594       - vdbe_untr_1_port
595       - feature
596       memory.usage_vdbe_node_1:
597       - vdbe_node_1
598       - memory.usage
599     requirements:
600       dependency_vdbe_untr_2_subports:
601       - vdbe_untr_2_subports
602       - dependency
603       dependency_vdbe_untr_x_subport_vdbe_untr_1_subports:
604       - vdbe_untr_1_subports
605       - dependency_vdbe_untr_x_subport
606       dependency_vdbe_node_1:
607       - vdbe_node_1
608       - dependency
609       local_storage_vdbe_node_1:
610       - vdbe_node_1
611       - local_storage
612       dependency_vdbe_untr_1_port:
613       - vdbe_untr_1_port
614       - dependency
615       dependency_control_int_net:
616       - control_int_net
617       - dependency
618       dependency_vdbe_untr_x_subport_vdbe_untr_2_subports:
619       - vdbe_untr_2_subports
620       - dependency_vdbe_untr_x_subport
621       subinterface_link_vdbe_untr_x_subport_vdbe_untr_2_subports:
622       - vdbe_untr_2_subports
623       - subinterface_link_vdbe_untr_x_subport
624       subinterface_link_vdbe_untr_x_subport_vdbe_untr_1_subports:
625       - vdbe_untr_1_subports
626       - subinterface_link_vdbe_untr_x_subport
627       dependency_vdbe_untr_1_subports:
628       - vdbe_untr_1_subports
629       - dependency