010d46bbc518acd0e4bc9ec4a26d4953e6cda14c
[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 name 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     port_vdbe_untr_1_port_subnetpoolid:
165       type: string
166       required: true
167     vdbe_hw_untr_mac_1:
168       hidden: false
169       immutable: false
170       type: string
171       description: Secondary MAC address of the secondary vDBE VM on the VAN untrusted network
172     untrusted_net_name:
173       hidden: false
174       immutable: false
175       type: string
176       description: Name of public untrusted network into which this vDBE HA cluster is deployed
177     port_vdbe_untr_1_port_network_role_tag:
178       type: string
179       required: true
180     vdbe_device_name:
181       hidden: false
182       immutable: false
183       type: string
184       description: VDBE device Name for this vdbe VNF
185     port_vdbe_untr_1_port_vlan_requirements:
186       type: list
187       required: true
188       entry_schema:
189         type: org.openecomp.datatypes.network.VlanRequirements
190     vdbe_aap_untrusted_ip_prefix:
191       hidden: false
192       immutable: false
193       type: string
194       description: ip prefix for primary vDBE VM on the VAN untrusted network
195   node_templates:
196     vdbe_node_1:
197       type: org.openecomp.resource.vfc.compute.nodes.heat.vdbe
198       properties:
199         flavor:
200           get_input: vdbe_flavor_name
201         availability_zone:
202           get_input: availability_zone_1
203         image:
204           get_input: vdbe_image_name
205         metadata:
206           vf_module_id:
207             get_input: vf_module_id
208           vnf_id:
209             get_input: vnf_id
210           vnf_name:
211             get_input: vnf_name
212         name:
213           get_input: vdbe_name_1
214     vdbe_untr_1_port:
215       type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
216       properties:
217         subnetpoolid:
218           get_input: port_vdbe_untr_1_port_subnetpoolid
219         ip_requirements:
220           get_input: port_vdbe_untr_1_port_ip_requirements
221         network_role:
222           get_input: port_vdbe_untr_1_port_network_role
223         mac_requirements:
224           get_input: port_vdbe_untr_1_port_mac_requirements
225         subinterface_indicator: true
226         name:
227           str_replace:
228             template: VM_NAMEDBE001p1n004
229             params:
230               DBE:
231                 get_input: vdbe_device_name
232               VM_NAME:
233                 get_input: vdbe_name_1
234         exCP_naming:
235           get_input: port_vdbe_untr_1_port_exCP_naming
236         virtual_network_refs:
237         - control_int_net
238         vlan_requirements:
239           get_input: port_vdbe_untr_1_port_vlan_requirements
240         virtual_machine_interface_allowed_address_pairs:
241           allowed_address_pair:
242           - address_mode:
243               get_input: aap_address_mode
244             ip:
245               ip_prefix:
246                 get_input: vdbe_aap_untrusted_ip_prefix
247               ip_prefix_len:
248                 get_input: vdbe_aap_untrusted_ip_prefix_len
249             mac:
250               get_input: vdbe_untrusted_vmac_address
251           - address_mode:
252               get_input: aap_address_mode
253             ip:
254               ip_prefix:
255                 get_input: vdbe_aap_sec_untrusted_ip_prefix
256               ip_prefix_len:
257                 get_input: vdbe_aap_sec_untrusted_ip_prefix_len
258             mac:
259               get_input: vdbe_hw_untr_mac_1
260           - address_mode:
261               get_input: aap_address_mode
262             ip:
263               ip_prefix:
264                 get_input: vdbe_aap_untrusted_v6_ip_prefix
265               ip_prefix_len:
266                 get_input: vdbe_aap_untrusted_v6_ip_prefix_len
267             mac:
268               get_input: vdbe_untrusted_vmac_address
269         network_role_tag:
270           get_input: port_vdbe_untr_1_port_network_role_tag
271         virtual_machine_interface_mac_addresses:
272         - get_input: vdbe_hw_untr_mac_1
273         order:
274           get_input: port_vdbe_untr_1_port_order
275       requirements:
276       - link:
277           capability: tosca.capabilities.network.Linkable
278           node: control_int_net
279           relationship: tosca.relationships.network.LinksTo
280       - binding:
281           capability: tosca.capabilities.network.Bindable
282           node: vdbe_node_1
283           relationship: tosca.relationships.network.BindsTo
284     vdbe_untr_1_subports:
285       type: org.openecomp.resource.abstract.nodes.heat.subinterface.nested_vlan
286       directives:
287       - substitutable
288       properties:
289         aap_untrusted_ip_prefix:
290           get_input: vdbe_aap_untrusted_ip_prefix
291         aap_sec_untrusted_ip_prefix:
292           get_input: vdbe_aap_sec_untrusted_ip_prefix
293         ip_v6_address:
294           get_input: vdbe_untrusted_v6_ip_1
295         counter:
296           get_property:
297           - SELF
298           - service_template_filter
299           - index_value
300         ip_address:
301           get_input: vdbe_untrusted_ip_1
302         subinterfaces_name_prefix:
303           str_replace:
304             template: VM_NAMEDBE001p1n004
305             params:
306               DBE:
307                 get_input: vdbe_device_name
308               VM_NAME:
309                 get_input: vdbe_name_1
310         aap_address_mode:
311           get_input: aap_address_mode
312         service_template_filter:
313           substitute_service_template: nested_vlanServiceTemplate.yaml
314           count:
315             get_input: untrusted_num_vn
316           mandatory: false
317         aap_untrusted_v6_ip_prefix:
318           get_input: vdbe_aap_untrusted_v6_ip_prefix
319         parent_interface: vdbe_untr_1_port
320         vn_network_list:
321           get_input: untrusted_vn_networks
322         mac_address:
323           get_input: vdbe_hw_untr_mac_1
324         vlan_tag_list:
325           get_input: untrusted_vlan_tags
326         aap_sec_untrusted_ip_prefix_len:
327           get_input: vdbe_aap_sec_untrusted_ip_prefix_len
328         vmac_address:
329           get_input: vdbe_untrusted_vmac_address
330         aap_untrusted_v6_ip_prefix_len:
331           get_input: vdbe_aap_untrusted_v6_ip_prefix_len
332         aap_untrusted_ip_prefix_len:
333           get_input: vdbe_aap_untrusted_ip_prefix_len
334       requirements:
335       - binding_vdbe_untr_x_subport:
336           capability: tosca.capabilities.network.Bindable
337           node: vdbe_untr_1_port
338           relationship: tosca.relationships.network.BindsTo
339     control_int_net:
340       type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
341       properties:
342         network_name:
343           str_replace:
344             template: VNF_NAME_control_net
345             params:
346               VNF_NAME:
347                 get_input: vnf_name
348   groups:
349     nested_pattern4_group:
350       type: org.openecomp.groups.heat.HeatStack
351       properties:
352         heat_file: ../Artifacts/nested_pattern4.yml
353         description: |
354           Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
355       members:
356       - vdbe_node_1
357       - vdbe_untr_1_port
358       - vdbe_untr_1_subports
359       - control_int_net
360   substitution_mappings:
361     node_type: org.openecomp.resource.abstract.nodes.heat.vdbe
362     capabilities:
363       disk.latency_vdbe_node_1:
364       - vdbe_node_1
365       - disk.latency
366       binding_vdbe_node_1:
367       - vdbe_node_1
368       - binding
369       network.outgoing.bytes.rate_vdbe_untr_1_port:
370       - vdbe_untr_1_port
371       - network.outgoing.bytes.rate
372       instance_vdbe_node_1:
373       - vdbe_node_1
374       - instance
375       forwarder_vdbe_untr_1_port:
376       - vdbe_untr_1_port
377       - forwarder
378       disk.device.read.requests_vdbe_node_1:
379       - vdbe_node_1
380       - disk.device.read.requests
381       disk.device.usage_vdbe_node_1:
382       - vdbe_node_1
383       - disk.device.usage
384       disk.write.bytes_vdbe_node_1:
385       - vdbe_node_1
386       - disk.write.bytes
387       disk.device.write.bytes_vdbe_node_1:
388       - vdbe_node_1
389       - disk.device.write.bytes
390       disk.allocation_vdbe_node_1:
391       - vdbe_node_1
392       - disk.allocation
393       memory_vdbe_node_1:
394       - vdbe_node_1
395       - memory
396       cpu_util_vdbe_node_1:
397       - vdbe_node_1
398       - cpu_util
399       network.incoming.packets.rate_vdbe_untr_1_port:
400       - vdbe_untr_1_port
401       - network.incoming.packets.rate
402       disk.device.read.bytes_vdbe_node_1:
403       - vdbe_node_1
404       - disk.device.read.bytes
405       disk.device.read.bytes.rate_vdbe_node_1:
406       - vdbe_node_1
407       - disk.device.read.bytes.rate
408       disk.device.allocation_vdbe_node_1:
409       - vdbe_node_1
410       - disk.device.allocation
411       disk.write.requests.rate_vdbe_node_1:
412       - vdbe_node_1
413       - disk.write.requests.rate
414       disk.root.size_vdbe_node_1:
415       - vdbe_node_1
416       - disk.root.size
417       disk.device.iops_vdbe_node_1:
418       - vdbe_node_1
419       - disk.device.iops
420       disk.device.write.requests_vdbe_node_1:
421       - vdbe_node_1
422       - disk.device.write.requests
423       disk.write.requests_vdbe_node_1:
424       - vdbe_node_1
425       - disk.write.requests
426       network.incoming.bytes.rate_vdbe_untr_1_port:
427       - vdbe_untr_1_port
428       - network.incoming.bytes.rate
429       vcpus_vdbe_node_1:
430       - vdbe_node_1
431       - vcpus
432       binding_vdbe_untr_1_port:
433       - vdbe_untr_1_port
434       - binding
435       disk.ephemeral.size_vdbe_node_1:
436       - vdbe_node_1
437       - disk.ephemeral.size
438       network.outgoing.bytes_vdbe_untr_1_port:
439       - vdbe_untr_1_port
440       - network.outgoing.bytes
441       feature_vdbe_untr_1_subports:
442       - vdbe_untr_1_subports
443       - feature
444       disk.device.latency_vdbe_node_1:
445       - vdbe_node_1
446       - disk.device.latency
447       disk.capacity_vdbe_node_1:
448       - vdbe_node_1
449       - disk.capacity
450       disk.device.capacity_vdbe_node_1:
451       - vdbe_node_1
452       - disk.device.capacity
453       link_control_int_net:
454       - control_int_net
455       - link
456       network.incoming.bytes_vdbe_untr_1_port:
457       - vdbe_untr_1_port
458       - network.incoming.bytes
459       end_point_control_int_net:
460       - control_int_net
461       - end_point
462       disk.usage_vdbe_node_1:
463       - vdbe_node_1
464       - disk.usage
465       disk.read.bytes_vdbe_node_1:
466       - vdbe_node_1
467       - disk.read.bytes
468       feature_vdbe_untr_x_subport_vdbe_untr_1_subports:
469       - vdbe_untr_1_subports
470       - feature_vdbe_untr_x_subport
471       disk.device.read.requests.rate_vdbe_node_1:
472       - vdbe_node_1
473       - disk.device.read.requests.rate
474       host_vdbe_node_1:
475       - vdbe_node_1
476       - host
477       feature_control_int_net:
478       - control_int_net
479       - feature
480       cpu.delta_vdbe_node_1:
481       - vdbe_node_1
482       - cpu.delta
483       network.incoming.packets_vdbe_untr_1_port:
484       - vdbe_untr_1_port
485       - network.incoming.packets
486       scalable_vdbe_node_1:
487       - vdbe_node_1
488       - scalable
489       disk.iops_vdbe_node_1:
490       - vdbe_node_1
491       - disk.iops
492       feature_vdbe_node_1:
493       - vdbe_node_1
494       - feature
495       memory.resident_vdbe_node_1:
496       - vdbe_node_1
497       - memory.resident
498       endpoint_vdbe_node_1:
499       - vdbe_node_1
500       - endpoint
501       network.outgoing.packets.rate_vdbe_untr_1_port:
502       - vdbe_untr_1_port
503       - network.outgoing.packets.rate
504       os_vdbe_node_1:
505       - vdbe_node_1
506       - os
507       network.outpoing.packets_vdbe_untr_1_port:
508       - vdbe_untr_1_port
509       - network.outpoing.packets
510       disk.read.bytes.rate_vdbe_node_1:
511       - vdbe_node_1
512       - disk.read.bytes.rate
513       disk.device.write.bytes.rate_vdbe_node_1:
514       - vdbe_node_1
515       - disk.device.write.bytes.rate
516       attachment_control_int_net:
517       - control_int_net
518       - attachment
519       cpu_vdbe_node_1:
520       - vdbe_node_1
521       - cpu
522       disk.device.write.requests.rate_vdbe_node_1:
523       - vdbe_node_1
524       - disk.device.write.requests.rate
525       disk.read.requests_vdbe_node_1:
526       - vdbe_node_1
527       - disk.read.requests
528       disk.write.bytes.rate_vdbe_node_1:
529       - vdbe_node_1
530       - disk.write.bytes.rate
531       feature_vdbe_untr_1_port:
532       - vdbe_untr_1_port
533       - feature
534       memory.usage_vdbe_node_1:
535       - vdbe_node_1
536       - memory.usage
537     requirements:
538       dependency_vdbe_untr_x_subport_vdbe_untr_1_subports:
539       - vdbe_untr_1_subports
540       - dependency_vdbe_untr_x_subport
541       dependency_vdbe_node_1:
542       - vdbe_node_1
543       - dependency
544       local_storage_vdbe_node_1:
545       - vdbe_node_1
546       - local_storage
547       dependency_vdbe_untr_1_port:
548       - vdbe_untr_1_port
549       - dependency
550       dependency_control_int_net:
551       - control_int_net
552       - dependency
553       subinterface_link_vdbe_untr_x_subport_vdbe_untr_1_subports:
554       - vdbe_untr_1_subports
555       - subinterface_link_vdbe_untr_x_subport
556       dependency_vdbe_untr_1_subports:
557       - vdbe_untr_1_subports
558       - dependency