abe0e1701aa914b9b9d6d4b9cc52b1718efc8dd9
[sdc.git] /
1 tosca_definitions_version: tosca_simple_yaml_1_0_0
2 metadata:
3   template_name: Main
4 imports:
5 - openecomp_heat_index:
6     file: openecomp-heat/_index.yml
7 - GlobalSubstitutionTypes:
8     file: GlobalSubstitutionTypesServiceTemplate.yaml
9 topology_template:
10   inputs:
11     pd_flavor_name:
12       label: PD flavor name
13       hidden: false
14       immutable: false
15       type: string
16       description: flavor name of PD instance
17       default: m3.xlarge
18     oam_net_ips:
19       label: internet network ips
20       hidden: false
21       immutable: false
22       type: list
23       description: ip of the OAM network
24       default:
25       - 107.250.172.213
26       - 107.250.172.214
27       - 107.250.172.215
28       - 107.250.172.216
29       - 107.250.172.217
30       entry_schema:
31         type: string
32     dummy_net_name_1:
33       label: csb ineternal cidr
34       hidden: false
35       immutable: false
36       type: string
37       description: csb internal cidr
38       default: mog_dummy_1
39     cm_server_names:
40       label: CM server names
41       hidden: false
42       immutable: false
43       type: list
44       description: name of the CM instance
45       default:
46       - ZRDM1MOGX01MCM001
47       entry_schema:
48         type: string
49     availabilityzone_name:
50       label: availabilityzone name
51       hidden: false
52       immutable: false
53       type: string
54       description: availabilityzone name
55       default: nova
56     VMME_pd_boot_volume:
57       hidden: false
58       immutable: false
59       type: string
60       default: 49201898-333d-4c88-b58d-cf573b091633
61     oam_flavor_name:
62       label: OAM flavor name
63       hidden: false
64       immutable: false
65       type: string
66       description: flavor name of OAM instance
67       default: m3.xlarge
68     pd_image_name:
69       label: image name
70       hidden: false
71       immutable: false
72       type: string
73       description: PD image name
74       default: MOG_BASE_8.0
75     packet_mirror_network_name:
76       label: packet mirror network name
77       hidden: false
78       immutable: false
79       type: string
80       description: name of the network
81       default: mog_packet_1
82     pd_server_names:
83       label: PD server names
84       hidden: false
85       immutable: false
86       type: list
87       description: name of the PD instance
88       default:
89       - ZRDM1MOGX01MPD001
90       - ZRDM1MOGX01MPD002
91       entry_schema:
92         type: string
93     sm_server_names:
94       label: SM server names
95       hidden: false
96       immutable: false
97       type: list
98       description: name of the SM instance
99       default:
100       - ZRDM1MOGX01MSM001
101       - ZRDM1MOGX01MSM002
102       entry_schema:
103         type: string
104     VMME_ps_boot_volume:
105       hidden: false
106       immutable: false
107       type: string
108       default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
109     VMME_oam_boot_volume:
110       hidden: false
111       immutable: false
112       type: string
113       default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
114     cm_flavor_name:
115       label: CM flavor name
116       hidden: false
117       immutable: false
118       type: string
119       description: flavor name of CM instance
120       default: m3.xlarge
121     sm_image_name:
122       label: image name
123       hidden: false
124       immutable: false
125       type: string
126       description: SM image name
127       default: MOG_BASE_8.0
128     cm_image_name:
129       label: image name
130       hidden: false
131       immutable: false
132       type: string
133       description: CM image name
134       default: MOG_BASE_8.0
135     sm_flavor_name:
136       label: SM flavor name
137       hidden: false
138       immutable: false
139       type: string
140       description: flavor name of SM instance
141       default: m2.xlarge4
142     ps_server_names:
143       label: PS server names
144       hidden: false
145       immutable: false
146       type: list
147       description: name of the PS instance
148       default:
149       - ZRDM1MOGX01MPS001
150       - ZRDM1MOGX01MPS002
151       - ZRDM1MOGX01MPS003
152       - ZRDM1MOGX01MPS004
153       entry_schema:
154         type: string
155     ps_image_name:
156       label: PS image name
157       hidden: false
158       immutable: false
159       type: string
160       description: PS image name
161       default: MOG_BASE_8.0
162     oam_image_name:
163       label: image name
164       hidden: false
165       immutable: false
166       type: string
167       description: OAM image name
168       default: MOG_BASE_8.0
169     oam_server_names:
170       label: OAM server names
171       hidden: false
172       immutable: false
173       type: list
174       description: name of the OAM instance
175       default:
176       - ZRDM1MOGX01OAM001
177       - ZRDM1MOGX01OAM002
178       entry_schema:
179         type: string
180     ps_flavor_name:
181       label: PS flavor name
182       hidden: false
183       immutable: false
184       type: string
185       description: flavor name of PS instance
186       default: m3.xlarge
187     oam_net_name:
188       label: oam network name
189       hidden: false
190       immutable: false
191       type: string
192       description: name of the oam network
193       default: oam_protected_net_0
194   node_templates:
195     packet_mirror_network:
196       type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
197       properties:
198         network_name:
199           get_input: packet_mirror_network_name
200     abstract_pd_server:
201       type: org.openecomp.resource.abstract.nodes.pd_server
202       directives:
203       - substitutable
204       properties:
205         compute_pd_server_scheduler_hints:
206         - group: BE_Affinity_group
207         compute_pd_server_availability_zone:
208         - get_input: availabilityzone_name
209         compute_pd_server_name:
210         - get_input:
211           - pd_server_names
212           - 0
213         vm_flavor_name:
214           get_attribute:
215           - network_policy_server
216           - name
217         port_pd01_port_security_groups:
218         - - jsa_security_group
219         port_pd01_port_mac_requirements:
220           mac_count_required:
221             is_required: false
222         vm_image_name:
223           get_input: pd_image_name
224         port_pd01_port_ip_requirements:
225         - ip_version: 4
226           ip_count_required:
227             is_required: false
228           floating_ip_count_required:
229             is_required: false
230         port_pd01_port_network:
231         - get_input: oam_net_name
232         port_pd01_port_network_role_tag: oam
233         compute_pd_server_user_data_format:
234         - RAW
235         service_template_filter:
236           substitute_service_template: Nested_pd_serverServiceTemplate.yaml
237           count: 1
238         index_value:
239           get_property:
240           - SELF
241           - service_template_filter
242           - index_value
243       requirements:
244       - dependency_pd_server:
245           capability: tosca.capabilities.Node
246           node: packet_mirror_network
247           relationship: tosca.relationships.DependsOn
248       - dependency_server_pd_01_pd_server:
249           capability: tosca.capabilities.Node
250           node: packet_mirror_network
251           relationship: tosca.relationships.DependsOn
252     abstract_ps_server:
253       type: org.openecomp.resource.abstract.nodes.ps_server
254       directives:
255       - substitutable
256       properties:
257         compute_ps_server_name:
258         - get_input:
259           - ps_server_names
260           - 0
261         compute_ps_server_availability_zone:
262         - get_input: availabilityzone_name
263         compute_ps_server_user_data_format:
264         - RAW
265         compute_ps_server_scheduler_hints:
266         - group: BE_Affinity_group
267         vm_flavor_name:
268           get_attribute:
269           - network_policy_server
270           - name
271         port_pd01_port_security_groups:
272         - - jsa_security_group
273         port_pd01_port_mac_requirements:
274           mac_count_required:
275             is_required: false
276         vm_image_name:
277           get_input: pd_image_name
278         port_pd01_port_ip_requirements:
279         - ip_version: 4
280           ip_count_required:
281             is_required: false
282           floating_ip_count_required:
283             is_required: false
284         port_pd01_port_network:
285         - get_attribute:
286           - network_policy_server
287           - name
288         service_template_filter:
289           substitute_service_template: Nested_ps_serverServiceTemplate.yaml
290           count: 1
291         index_value:
292           get_property:
293           - SELF
294           - service_template_filter
295           - index_value
296       requirements:
297       - dependency_ps_server:
298           capability: tosca.capabilities.Node
299           node: packet_mirror_network
300           relationship: tosca.relationships.DependsOn
301       - dependency_server_ps_01_ps_server:
302           capability: tosca.capabilities.Node
303           node: packet_mirror_network
304           relationship: tosca.relationships.DependsOn
305     abstract_oam_server:
306       type: org.openecomp.resource.abstract.nodes.oam_server
307       directives:
308       - substitutable
309       properties:
310         vm_flavor_name:
311           get_attribute:
312           - network_policy_server
313           - name
314         port_pd01_port_security_groups:
315         - - jsa_security_group
316         port_pd01_port_mac_requirements:
317           mac_count_required:
318             is_required: false
319         compute_oam_server_availability_zone:
320         - get_input: availabilityzone_name
321         vm_image_name:
322           get_input: pd_image_name
323         port_pd01_port_ip_requirements:
324         - ip_version: 4
325           ip_count_required:
326             is_required: false
327           floating_ip_count_required:
328             is_required: false
329         port_pd01_port_network:
330         - get_input: oam_net_name
331         compute_oam_server_user_data_format:
332         - RAW
333         compute_oam_server_name:
334         - get_input:
335           - oam_server_names
336           - 0
337         port_pd01_port_network_role_tag: oam
338         compute_oam_server_scheduler_hints:
339         - group: BE_Affinity_group
340         service_template_filter:
341           substitute_service_template: Nested_oam_serverServiceTemplate.yaml
342           count: 1
343         index_value:
344           get_property:
345           - SELF
346           - service_template_filter
347           - index_value
348       requirements:
349       - dependency_oam_server:
350           capability: tosca.capabilities.Node
351           node: packet_mirror_network
352           relationship: tosca.relationships.DependsOn
353       - dependency_server_oam_01_oam_server:
354           capability: tosca.capabilities.Node
355           node: packet_mirror_network
356           relationship: tosca.relationships.DependsOn
357     network_policy_server_ps:
358       type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
359       properties:
360         name:
361           get_attribute:
362           - abstract_ps_server
363           - ps_server_accessIPv4
364     resources_with_dependOn:
365       type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
366       properties: {
367         }
368       requirements:
369       - dependency:
370           capability: feature_oam_server
371           node: abstract_oam_server
372           relationship: tosca.relationships.DependsOn
373       - dependency:
374           capability: feature_pd_server
375           node: abstract_pd_server
376           relationship: tosca.relationships.DependsOn
377       - dependency:
378           capability: feature_ps_server
379           node: abstract_ps_server
380           relationship: tosca.relationships.DependsOn
381     network_policy_server_oam:
382       type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
383       properties:
384         name:
385           get_attribute:
386           - abstract_oam_server
387           - oam_server_accessIPv4
388     jsa_security_group:
389       type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
390       properties:
391         name: Test-SecurityGroup
392         description: ems security group
393         rules:
394         - protocol: icmp
395           ethertype: IPv6
396           remote_ip_prefix: ::/0
397           direction: ingress
398       requirements:
399       - port:
400           capability: attachment_ps_server_pd01_port
401           node: abstract_ps_server
402           relationship: org.openecomp.relationships.AttachesTo
403       - port:
404           capability: attachment_pd_server_pd01_port
405           node: abstract_pd_server
406           relationship: org.openecomp.relationships.AttachesTo
407       - port:
408           capability: attachment_oam_server_pd01_port
409           node: abstract_oam_server
410           relationship: org.openecomp.relationships.AttachesTo
411     network_policy_server_pd:
412       type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
413       properties:
414         name:
415           get_attribute:
416           - abstract_pd_server
417           - pd_server_accessIPv4
418     network_policy_server:
419       type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
420       properties:
421         name:
422           get_input: dummy_net_name_1
423   groups:
424     hot-mog-0108-bs1271_group:
425       type: org.openecomp.groups.heat.HeatStack
426       properties:
427         heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
428         description: heat template that creates MOG stack
429       members:
430       - packet_mirror_network
431       - network_policy_server_ps
432       - resources_with_dependOn
433       - network_policy_server_oam
434       - jsa_security_group
435       - network_policy_server_pd
436       - network_policy_server
437       - abstract_pd_server
438       - abstract_ps_server
439       - abstract_oam_server
440     BE_Affinity_group:
441       type: tosca.groups.Root
442       members:
443       - abstract_pd_server
444       - abstract_ps_server
445       - abstract_oam_server
446   outputs:
447     out2:
448       description: output_regula
449       value:
450         get_attribute:
451         - abstract_ps_server
452         - ps_server_accessIPv4
453     out3:
454       description: output_regula
455       value:
456         get_attribute:
457         - abstract_oam_server
458         - oam_server_accessIPv4
459     out4:
460       description: output_regula
461       value:
462         get_attribute:
463         - abstract_pd_server
464         - pd_server_pd01_port_device_owner
465     out5:
466       description: output_regula
467       value:
468         get_attribute:
469         - abstract_ps_server
470         - ps_server_pd01_port_device_id
471     out1:
472       description: output_regula
473       value:
474         get_attribute:
475         - abstract_pd_server
476         - pd_server_accessIPv4
477   policies:
478     BE_Affinity_policy:
479       type: org.openecomp.policies.placement.Colocate
480       properties:
481         name: def
482         affinity: host
483       targets:
484       - BE_Affinity_group