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