658b0d62a453fb2de61ee8131aca2b9f379686b8
[sdc.git] /
1 tosca_definitions_version: tosca_simple_yaml_1_0_0
2 metadata:
3   template_name: nested_cscf
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.cscf:
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 instance
19     internal_net_id:
20       hidden: false
21       immutable: false
22       type: string
23       description: internal network name/uuid
24     vcscf_release:
25       hidden: false
26       immutable: false
27       type: string
28       description: IMS release
29     port_cscf_internal_0_port_0_network_role:
30       type: string
31       required: true
32     cscf_internal_ips:
33       hidden: false
34       immutable: false
35       type: list
36       description: List of Internal Lan IPs for CSCF instances
37       entry_schema:
38         type: string
39     vcscf_gateway:
40       hidden: false
41       immutable: false
42       type: string
43       description: OAM unit cipa ip
44     vnf_name:
45       hidden: false
46       immutable: false
47       type: string
48       description: Unique name for this VF instance
49     port_cscf_internal_0_port_0_order:
50       type: integer
51       required: true
52     vf_module_name:
53       hidden: false
54       immutable: false
55       type: string
56       description: Unique name for this VF Module instance
57     cscf_image_name:
58       hidden: false
59       immutable: false
60       type: string
61       description: image name
62     cscf_names:
63       hidden: false
64       immutable: false
65       type: list
66       description: List of instance names for CSCF instances
67       entry_schema:
68         type: string
69     port_cscf_internal_0_port_0_subnetpoolid:
70       type: string
71       required: true
72     vcscf_swrepo_address:
73       hidden: false
74       immutable: false
75       type: string
76       description: SWRepo IP or FQDN
77     cscf_uuids:
78       hidden: false
79       immutable: false
80       type: list
81       description: List of UUIDs generated by cmrepo for CSCF instances
82       entry_schema:
83         type: string
84     vnf_id:
85       hidden: false
86       immutable: false
87       type: string
88       description: Unique ID for this VF instance
89     availability_zone_0:
90       hidden: false
91       immutable: false
92       type: string
93       description: Availability zone name for CSCF instances.
94     cscf_internal_v6_ips:
95       hidden: false
96       immutable: false
97       type: list
98       description: List of Internal Lan v6 IPs for CSCF instances
99       entry_schema:
100         type: string
101     cscf_flavor_name:
102       hidden: false
103       immutable: false
104       type: string
105       description: flavor name
106     vcscf_cmrepo_address:
107       hidden: false
108       immutable: false
109       type: string
110       description: CMRepo IP or FQDN
111     vcscf_dns_address:
112       hidden: false
113       immutable: false
114       type: string
115       description: DNS server IP
116     vcscf_internal_network_mtu:
117       hidden: false
118       immutable: false
119       type: float
120       description: MTU for internal network interface (eth0)
121       constraints:
122       - in_range:
123         - 1000
124         - 9100
125     port_cscf_internal_0_port_0_ip_requirements:
126       type: list
127       required: true
128       entry_schema:
129         type: org.openecomp.datatypes.network.IpRequirements
130     port_cscf_internal_0_port_0_vlan_requirements:
131       type: list
132       required: true
133       entry_schema:
134         type: org.openecomp.datatypes.network.VlanRequirements
135     index:
136       hidden: false
137       immutable: false
138       type: float
139       description: index
140       constraints:
141       - in_range:
142         - 0
143         - 119
144     vcscf_internal_netmask:
145       hidden: false
146       immutable: false
147       type: string
148       description: internal netmask
149     vcscf_name_delimeter:
150       hidden: false
151       immutable: false
152       type: string
153       description: 'delimeter used in concatenating different words while naming (ex:
154         "-","_",".",...)'
155       constraints:
156       - valid_values:
157         - '-'
158         - ''
159         - _
160         - .
161     port_cscf_internal_0_port_0_network_role_tag:
162       type: string
163       required: true
164     vcscf_dn:
165       hidden: false
166       immutable: false
167       type: string
168       description: DN name
169     vcscf_du:
170       hidden: false
171       immutable: false
172       type: string
173       description: DU name
174     port_cscf_internal_0_port_0_mac_requirements:
175       type: org.openecomp.datatypes.network.MacRequirements
176       required: true
177     port_cscf_internal_0_port_0_exCP_naming:
178       type: org.openecomp.datatypes.Naming
179       required: true
180     cscf_security_group:
181       hidden: false
182       immutable: false
183       type: string
184       description: security group
185   node_templates:
186     cscf_server_0:
187       type: org.openecomp.resource.vfc.compute.nodes.heat.cscf
188       properties:
189         flavor:
190           get_input: cscf_flavor_name
191         availability_zone:
192           get_input: availability_zone_0
193         image:
194           get_input: cscf_image_name
195         metadata:
196           vf_module_id:
197             get_input: vf_module_id
198           vm_role: cscf
199           vnf_id:
200             get_input: vnf_id
201           vnf_name:
202             get_input: vnf_name
203           vf_module_name:
204             get_input: vf_module_name
205         config_drive: true
206         user_data_format: RAW
207         name:
208           get_input:
209           - cscf_names
210           - get_input: index
211     cscf_internal_0_port_0:
212       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
213       properties:
214         ip_requirements:
215           get_input: port_cscf_internal_0_port_0_ip_requirements
216         security_groups:
217         - get_input: cscf_security_group
218         network_role:
219           get_input: port_cscf_internal_0_port_0_network_role
220         fixed_ips:
221         - ip_address:
222             get_input:
223             - cscf_internal_ips
224             - get_input: index
225         - ip_address:
226             get_input:
227             - cscf_internal_v6_ips
228             - get_input: index
229         subnetpoolid:
230           get_input: port_cscf_internal_0_port_0_subnetpoolid
231         mac_requirements:
232           get_input: port_cscf_internal_0_port_0_mac_requirements
233         name:
234           str_replace:
235             template: $PREFIX$DELeth0
236             params:
237               $PREFIX:
238                 get_input:
239                 - cscf_names
240                 - get_input: index
241               $DEL:
242                 get_input: vcscf_name_delimeter
243         exCP_naming:
244           get_input: port_cscf_internal_0_port_0_exCP_naming
245         vlan_requirements:
246           get_input: port_cscf_internal_0_port_0_vlan_requirements
247         network_role_tag:
248           get_input: port_cscf_internal_0_port_0_network_role_tag
249         network:
250           get_input: internal_net_id
251         order:
252           get_input: port_cscf_internal_0_port_0_order
253       requirements:
254       - binding:
255           capability: tosca.capabilities.network.Bindable
256           node: cscf_server_0
257           relationship: tosca.relationships.network.BindsTo
258   groups:
259     nested_cscf_group:
260       type: org.openecomp.groups.heat.HeatStack
261       properties:
262         heat_file: ../Artifacts/nested_cscf.yaml
263         description: IMS CSCF
264       members:
265       - cscf_server_0
266       - cscf_internal_0_port_0
267   substitution_mappings:
268     node_type: org.openecomp.resource.abstract.nodes.heat.cscf
269     capabilities:
270       disk.device.read.requests_cscf_server_0:
271       - cscf_server_0
272       - disk.device.read.requests
273       disk.device.usage_cscf_server_0:
274       - cscf_server_0
275       - disk.device.usage
276       disk.device.read.bytes_cscf_server_0:
277       - cscf_server_0
278       - disk.device.read.bytes
279       network.outgoing.bytes_cscf_internal_0_port_0:
280       - cscf_internal_0_port_0
281       - network.outgoing.bytes
282       network.incoming.packets_cscf_internal_0_port_0:
283       - cscf_internal_0_port_0
284       - network.incoming.packets
285       disk.usage_cscf_server_0:
286       - cscf_server_0
287       - disk.usage
288       disk.allocation_cscf_server_0:
289       - cscf_server_0
290       - disk.allocation
291       disk.device.allocation_cscf_server_0:
292       - cscf_server_0
293       - disk.device.allocation
294       cpu_cscf_server_0:
295       - cscf_server_0
296       - cpu
297       feature_cscf_internal_0_port_0:
298       - cscf_internal_0_port_0
299       - feature
300       disk.read.requests_cscf_server_0:
301       - cscf_server_0
302       - disk.read.requests
303       disk.device.write.bytes.rate_cscf_server_0:
304       - cscf_server_0
305       - disk.device.write.bytes.rate
306       disk.device.capacity_cscf_server_0:
307       - cscf_server_0
308       - disk.device.capacity
309       feature_cscf_server_0:
310       - cscf_server_0
311       - feature
312       endpoint_cscf_server_0:
313       - cscf_server_0
314       - endpoint
315       disk.root.size_cscf_server_0:
316       - cscf_server_0
317       - disk.root.size
318       vcpus_cscf_server_0:
319       - cscf_server_0
320       - vcpus
321       binding_cscf_server_0:
322       - cscf_server_0
323       - binding
324       disk.write.bytes.rate_cscf_server_0:
325       - cscf_server_0
326       - disk.write.bytes.rate
327       host_cscf_server_0:
328       - cscf_server_0
329       - host
330       network.outpoing.packets_cscf_internal_0_port_0:
331       - cscf_internal_0_port_0
332       - network.outpoing.packets
333       instance_cscf_server_0:
334       - cscf_server_0
335       - instance
336       disk.read.bytes.rate_cscf_server_0:
337       - cscf_server_0
338       - disk.read.bytes.rate
339       memory_cscf_server_0:
340       - cscf_server_0
341       - memory
342       disk.write.requests_cscf_server_0:
343       - cscf_server_0
344       - disk.write.requests
345       attachment_cscf_internal_0_port_0:
346       - cscf_internal_0_port_0
347       - attachment
348       disk.device.read.requests.rate_cscf_server_0:
349       - cscf_server_0
350       - disk.device.read.requests.rate
351       network.outgoing.bytes.rate_cscf_internal_0_port_0:
352       - cscf_internal_0_port_0
353       - network.outgoing.bytes.rate
354       disk.write.bytes_cscf_server_0:
355       - cscf_server_0
356       - disk.write.bytes
357       forwarder_cscf_internal_0_port_0:
358       - cscf_internal_0_port_0
359       - forwarder
360       cpu.delta_cscf_server_0:
361       - cscf_server_0
362       - cpu.delta
363       network.incoming.bytes_cscf_internal_0_port_0:
364       - cscf_internal_0_port_0
365       - network.incoming.bytes
366       disk.device.read.bytes.rate_cscf_server_0:
367       - cscf_server_0
368       - disk.device.read.bytes.rate
369       binding_cscf_internal_0_port_0:
370       - cscf_internal_0_port_0
371       - binding
372       disk.device.write.requests_cscf_server_0:
373       - cscf_server_0
374       - disk.device.write.requests
375       disk.device.write.requests.rate_cscf_server_0:
376       - cscf_server_0
377       - disk.device.write.requests.rate
378       disk.read.bytes_cscf_server_0:
379       - cscf_server_0
380       - disk.read.bytes
381       disk.capacity_cscf_server_0:
382       - cscf_server_0
383       - disk.capacity
384       memory.usage_cscf_server_0:
385       - cscf_server_0
386       - memory.usage
387       scalable_cscf_server_0:
388       - cscf_server_0
389       - scalable
390       disk.device.iops_cscf_server_0:
391       - cscf_server_0
392       - disk.device.iops
393       disk.iops_cscf_server_0:
394       - cscf_server_0
395       - disk.iops
396       disk.write.requests.rate_cscf_server_0:
397       - cscf_server_0
398       - disk.write.requests.rate
399       network.incoming.packets.rate_cscf_internal_0_port_0:
400       - cscf_internal_0_port_0
401       - network.incoming.packets.rate
402       os_cscf_server_0:
403       - cscf_server_0
404       - os
405       network.outgoing.packets.rate_cscf_internal_0_port_0:
406       - cscf_internal_0_port_0
407       - network.outgoing.packets.rate
408       disk.ephemeral.size_cscf_server_0:
409       - cscf_server_0
410       - disk.ephemeral.size
411       cpu_util_cscf_server_0:
412       - cscf_server_0
413       - cpu_util
414       memory.resident_cscf_server_0:
415       - cscf_server_0
416       - memory.resident
417       network.incoming.bytes.rate_cscf_internal_0_port_0:
418       - cscf_internal_0_port_0
419       - network.incoming.bytes.rate
420       disk.latency_cscf_server_0:
421       - cscf_server_0
422       - disk.latency
423       disk.device.latency_cscf_server_0:
424       - cscf_server_0
425       - disk.device.latency
426       disk.device.write.bytes_cscf_server_0:
427       - cscf_server_0
428       - disk.device.write.bytes
429     requirements:
430       dependency_cscf_server_0:
431       - cscf_server_0
432       - dependency
433       dependency_cscf_internal_0_port_0:
434       - cscf_internal_0_port_0
435       - dependency
436       link_cscf_internal_0_port_0:
437       - cscf_internal_0_port_0
438       - link
439       local_storage_cscf_server_0:
440       - cscf_server_0
441       - local_storage