cffb1be0a77abd1a2a25c50b687bf50c78648eee
[sdc.git] /
1 tosca_definitions_version: tosca_simple_yaml_1_0_0
2 metadata:
3   template_name: nested_vson_server_with_vol_dual_ip_stack
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.vson_vm:
11     derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
12 topology_template:
13   inputs:
14     vf_module_id:
15       label: VF module ID
16       hidden: false
17       immutable: false
18       type: string
19       description: Unique ID for this VF Module instance
20     default_gateway:
21       label: Default gateway
22       hidden: false
23       immutable: false
24       type: string
25       description: Default gateway.
26     port_vson_server_oam_net_port_0_ip_requirements:
27       type: list
28       required: true
29       entry_schema:
30         type: org.openecomp.datatypes.network.IpRequirements
31     instance_index:
32       label: Instance Index
33       hidden: false
34       immutable: false
35       type: float
36       description: Index of the instance.
37     vnf_name:
38       label: VF name
39       hidden: false
40       immutable: false
41       type: string
42       description: Unique name for this VF instance.
43     oam_net_subnet_prefix_length:
44       label: OAM net subnet prefix length
45       hidden: false
46       immutable: false
47       type: string
48       description: Prefix length of the subnet on the OAM network.
49     vf_module_name:
50       label: VF module name
51       hidden: false
52       immutable: false
53       type: string
54       description: Unique name for this VF module instance.
55     dns_servers:
56       label: DNS servers
57       hidden: false
58       immutable: false
59       type: list
60       description: List of DNS servers.
61       entry_schema:
62         type: string
63     oam_net_security_group_id:
64       label: OAM network security group ID
65       hidden: false
66       immutable: false
67       type: string
68       description: |
69         The ID of Security group applied on the port bound to the vSON OAM network.
70     vson_vm_image_name:
71       label: vSON base VM image name
72       hidden: false
73       immutable: false
74       type: string
75       description: VM Image name the vSON instance will be created from.
76     vnf_id:
77       label: VF ID
78       hidden: false
79       immutable: false
80       type: string
81       description: Unique ID for this VF instance.
82     port_vson_server_oam_net_port_0_network_role:
83       type: string
84       required: true
85     vson_clm_oam_net_ip:
86       label: vSON Cluster Manager IP
87       hidden: false
88       immutable: false
89       type: string
90       description: IP of the vSON Cluster Manager.
91     port_vson_server_oam_net_port_0_mac_requirements:
92       type: org.openecomp.datatypes.network.MacRequirements
93       required: true
94     port_vson_server_oam_net_port_0_subnetpoolid:
95       type: string
96       required: true
97     vson_dc_unit:
98       label: vSON Data Center name
99       hidden: false
100       immutable: false
101       type: string
102       description: Name of the vSON Data Center.
103     oam_net_ips:
104       label: vSON OAM network IPv4 addresses
105       hidden: false
106       immutable: false
107       type: list
108       description: Fixed IPv4 assignments for vSON instances on the OAM network.
109       entry_schema:
110         type: string
111     oam_net_subnet_v6_prefix_length:
112       label: OAM net IPv6 subnet prefix length
113       hidden: false
114       immutable: false
115       type: string
116       description: OAM network IPv6 subnet prefix length.
117     vfc_role:
118       label: VF module ID
119       hidden: false
120       immutable: false
121       type: string
122       description: Unique ID for this VF Module instance
123     swift_account_auth_token:
124       label: Swift account auth token
125       hidden: false
126       immutable: false
127       type: string
128       description: |
129         Swift account auth token. Example:  041a5187bb4641f9b89583e2539776b0
130     default_gateway_v6:
131       label: Default IPv6 gateway
132       hidden: false
133       immutable: false
134       type: string
135       description: Default IPv6 gateway.
136     vson_server_group_id:
137       label: vSON server group ID
138       hidden: false
139       immutable: false
140       type: string
141       description: |
142         Tells what policy should be applied to the ServerGroup. Affinity policy will force instances to share the same hypervisor. Anti-affinity will force instances to run in different hypervisors.
143     vson_vm_flavor_name:
144       label: Flavor name
145       hidden: false
146       immutable: false
147       type: string
148       description: The ID or name of the flavor to boot onto.
149     port_vson_server_oam_net_port_0_network_role_tag:
150       type: string
151       required: true
152     port_vson_server_oam_net_port_0_vlan_requirements:
153       type: list
154       required: true
155       entry_schema:
156         type: org.openecomp.datatypes.network.VlanRequirements
157     availability_zones:
158       label: Availability zones
159       hidden: false
160       immutable: false
161       type: list
162       description: List of availability zones.
163       entry_schema:
164         type: string
165     volume_ids:
166       label: Volumes IDs
167       hidden: false
168       immutable: false
169       type: list
170       description: List of Volumes IDs.
171       entry_schema:
172         type: string
173     oam_net_v6_ips:
174       label: vSON OAM network IPv6 addresses
175       hidden: false
176       immutable: false
177       type: list
178       description: Fixed IPv6 assignments for vSON instances on the OAM network.
179       entry_schema:
180         type: string
181     ntp_servers:
182       label: NTP servers
183       hidden: false
184       immutable: false
185       type: list
186       description: List of NTP servers.
187       entry_schema:
188         type: string
189     vson_join_cluster_auth_token:
190       label: vSON join cluster auth token
191       hidden: false
192       immutable: false
193       type: string
194       description: |
195         Authentication Token generated for the user permitted to add a new Datacenter/vSON member to existing vSON Cluster.
196     oam_net_id:
197       label: OAM network ID
198       hidden: false
199       immutable: false
200       type: string
201       description: The ID of the OAM network.
202     port_vson_server_oam_net_port_0_order:
203       type: integer
204       required: true
205     port_vson_server_oam_net_port_0_exCP_naming:
206       type: org.openecomp.datatypes.Naming
207       required: true
208     vson_vm_names:
209       label: vSON Cluster leader names
210       hidden: false
211       immutable: false
212       type: list
213       description: A list of unique names to be issued to the vSON Cluster leaders.
214       entry_schema:
215         type: string
216   node_templates:
217     vson_server:
218       type: org.openecomp.resource.vfc.compute.nodes.heat.vson_vm
219       properties:
220         flavor:
221           get_input: vson_vm_flavor_name
222         availability_zone:
223           get_input:
224           - availability_zones
225           - get_input: instance_index
226         image:
227           get_input: vson_vm_image_name
228         metadata:
229           vf_module_id:
230             get_input: vf_module_id
231           vm_role:
232             get_input: vfc_role
233           vnf_id:
234             get_input: vnf_id
235           vnf_name:
236             get_input: vnf_name
237           vf_module_name:
238             get_input: vf_module_name
239         config_drive: true
240         user_data_format: RAW
241         name:
242           get_input:
243           - vson_vm_names
244           - get_input: instance_index
245         scheduler_hints:
246           group:
247             get_input: vson_server_group_id
248     vson_server_oam_net_port_0:
249       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
250       properties:
251         ip_requirements:
252           get_input: port_vson_server_oam_net_port_0_ip_requirements
253         security_groups:
254         - get_input: oam_net_security_group_id
255         network_role:
256           get_input: port_vson_server_oam_net_port_0_network_role
257         fixed_ips:
258         - ip_address:
259             get_input:
260             - oam_net_ips
261             - get_input: instance_index
262         - ip_address:
263             get_input:
264             - oam_net_v6_ips
265             - get_input: instance_index
266         subnetpoolid:
267           get_input: port_vson_server_oam_net_port_0_subnetpoolid
268         mac_requirements:
269           get_input: port_vson_server_oam_net_port_0_mac_requirements
270         name:
271           str_replace:
272             template: VNF_NAME_VNF_ID_SERVER_NAME_oam_net_port_0
273             params:
274               VNF_NAME:
275                 get_input: vnf_name
276               VNF_ID:
277                 get_input: vnf_id
278               SERVER_NAME:
279                 get_input:
280                 - vson_vm_names
281                 - get_input: instance_index
282         exCP_naming:
283           get_input: port_vson_server_oam_net_port_0_exCP_naming
284         vlan_requirements:
285           get_input: port_vson_server_oam_net_port_0_vlan_requirements
286         network_role_tag:
287           get_input: port_vson_server_oam_net_port_0_network_role_tag
288         network:
289           get_input: oam_net_id
290         order:
291           get_input: port_vson_server_oam_net_port_0_order
292       requirements:
293       - binding:
294           capability: tosca.capabilities.network.Bindable
295           node: vson_server
296           relationship: tosca.relationships.network.BindsTo
297   groups:
298     nested_vson_server_with_vol_dual_ip_stack_group:
299       type: org.openecomp.groups.heat.HeatStack
300       properties:
301         heat_file: ../Artifacts/nested_vson_server_with_vol_dual_ip_stack.yaml
302         description: |
303           The template intended for deploying vSON VM instance.
304       members:
305       - vson_server
306       - vson_server_oam_net_port_0
307   substitution_mappings:
308     node_type: org.openecomp.resource.abstract.nodes.heat.vson_vm
309     capabilities:
310       disk.write.bytes_vson_server:
311       - vson_server
312       - disk.write.bytes
313       disk.device.allocation_vson_server:
314       - vson_server
315       - disk.device.allocation
316       network.incoming.packets_vson_server_oam_net_port_0:
317       - vson_server_oam_net_port_0
318       - network.incoming.packets
319       memory.usage_vson_server:
320       - vson_server
321       - memory.usage
322       network.incoming.bytes_vson_server_oam_net_port_0:
323       - vson_server_oam_net_port_0
324       - network.incoming.bytes
325       disk.device.latency_vson_server:
326       - vson_server
327       - disk.device.latency
328       disk.device.write.bytes.rate_vson_server:
329       - vson_server
330       - disk.device.write.bytes.rate
331       disk.device.read.requests_vson_server:
332       - vson_server
333       - disk.device.read.requests
334       memory_vson_server:
335       - vson_server
336       - memory
337       disk.latency_vson_server:
338       - vson_server
339       - disk.latency
340       os_vson_server:
341       - vson_server
342       - os
343       feature_vson_server_oam_net_port_0:
344       - vson_server_oam_net_port_0
345       - feature
346       instance_vson_server:
347       - vson_server
348       - instance
349       cpu_vson_server:
350       - vson_server
351       - cpu
352       attachment_vson_server_oam_net_port_0:
353       - vson_server_oam_net_port_0
354       - attachment
355       disk.iops_vson_server:
356       - vson_server
357       - disk.iops
358       network.outgoing.bytes_vson_server_oam_net_port_0:
359       - vson_server_oam_net_port_0
360       - network.outgoing.bytes
361       disk.device.write.bytes_vson_server:
362       - vson_server
363       - disk.device.write.bytes
364       disk.device.read.bytes.rate_vson_server:
365       - vson_server
366       - disk.device.read.bytes.rate
367       endpoint_vson_server:
368       - vson_server
369       - endpoint
370       vcpus_vson_server:
371       - vson_server
372       - vcpus
373       network.incoming.packets.rate_vson_server_oam_net_port_0:
374       - vson_server_oam_net_port_0
375       - network.incoming.packets.rate
376       disk.device.read.requests.rate_vson_server:
377       - vson_server
378       - disk.device.read.requests.rate
379       disk.write.requests.rate_vson_server:
380       - vson_server
381       - disk.write.requests.rate
382       disk.capacity_vson_server:
383       - vson_server
384       - disk.capacity
385       disk.device.capacity_vson_server:
386       - vson_server
387       - disk.device.capacity
388       forwarder_vson_server_oam_net_port_0:
389       - vson_server_oam_net_port_0
390       - forwarder
391       disk.device.iops_vson_server:
392       - vson_server
393       - disk.device.iops
394       disk.device.write.requests.rate_vson_server:
395       - vson_server
396       - disk.device.write.requests.rate
397       network.outpoing.packets_vson_server_oam_net_port_0:
398       - vson_server_oam_net_port_0
399       - network.outpoing.packets
400       disk.read.bytes_vson_server:
401       - vson_server
402       - disk.read.bytes
403       disk.read.bytes.rate_vson_server:
404       - vson_server
405       - disk.read.bytes.rate
406       disk.device.write.requests_vson_server:
407       - vson_server
408       - disk.device.write.requests
409       network.outgoing.packets.rate_vson_server_oam_net_port_0:
410       - vson_server_oam_net_port_0
411       - network.outgoing.packets.rate
412       disk.root.size_vson_server:
413       - vson_server
414       - disk.root.size
415       disk.ephemeral.size_vson_server:
416       - vson_server
417       - disk.ephemeral.size
418       memory.resident_vson_server:
419       - vson_server
420       - memory.resident
421       disk.device.read.bytes_vson_server:
422       - vson_server
423       - disk.device.read.bytes
424       scalable_vson_server:
425       - vson_server
426       - scalable
427       network.outgoing.bytes.rate_vson_server_oam_net_port_0:
428       - vson_server_oam_net_port_0
429       - network.outgoing.bytes.rate
430       disk.write.requests_vson_server:
431       - vson_server
432       - disk.write.requests
433       disk.usage_vson_server:
434       - vson_server
435       - disk.usage
436       cpu_util_vson_server:
437       - vson_server
438       - cpu_util
439       disk.device.usage_vson_server:
440       - vson_server
441       - disk.device.usage
442       cpu.delta_vson_server:
443       - vson_server
444       - cpu.delta
445       disk.write.bytes.rate_vson_server:
446       - vson_server
447       - disk.write.bytes.rate
448       feature_vson_server:
449       - vson_server
450       - feature
451       disk.allocation_vson_server:
452       - vson_server
453       - disk.allocation
454       binding_vson_server:
455       - vson_server
456       - binding
457       host_vson_server:
458       - vson_server
459       - host
460       network.incoming.bytes.rate_vson_server_oam_net_port_0:
461       - vson_server_oam_net_port_0
462       - network.incoming.bytes.rate
463       binding_vson_server_oam_net_port_0:
464       - vson_server_oam_net_port_0
465       - binding
466       disk.read.requests_vson_server:
467       - vson_server
468       - disk.read.requests
469     requirements:
470       link_vson_server_oam_net_port_0:
471       - vson_server_oam_net_port_0
472       - link
473       dependency_vson_server:
474       - vson_server
475       - dependency
476       dependency_vson_server_oam_net_port_0:
477       - vson_server_oam_net_port_0
478       - dependency
479       local_storage_vson_server:
480       - vson_server
481       - local_storage