blob: a182c9011665e3892ec45349afd1bcaa91ee5d5e [file] [log] [blame]
Andy Baviere6478b22017-12-21 13:17:56 -07001
2{#
3Copyright 2017-present Open Networking Foundation
4
5Licensed under the Apache License, Version 2.0 (the "License");
6you may not use this file except in compliance with the License.
7You may obtain a copy of the License at
8
9http://www.apache.org/licenses/LICENSE-2.0
10
11Unless required by applicable law or agreed to in writing, software
12distributed under the License is distributed on an "AS IS" BASIS,
13WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14See the License for the specific language governing permissions and
15limitations under the License.
16#}
17
18
19tosca_definitions_version: tosca_simple_yaml_1_0
20
21description: created by platform-install
22
23imports:
Andy Baviere6478b22017-12-21 13:17:56 -070024 - custom_types/slice.yaml
25 - custom_types/site.yaml
26 - custom_types/image.yaml
27 - custom_types/flavor.yaml
28 - custom_types/network.yaml
Andy Bavier0d1131e2018-01-02 11:27:43 -070029 - custom_types/networktemplate.yaml
Andy Baviere6478b22017-12-21 13:17:56 -070030 - custom_types/onosservice.yaml
31 - custom_types/networkslice.yaml
32 - custom_types/vspgwcservice.yaml
33 - custom_types/vspgwcvendor.yaml
34 - custom_types/vspgwuservice.yaml
35 - custom_types/vspgwuvendor.yaml
36 - custom_types/vmmeservice.yaml
37 - custom_types/vmmevendor.yaml
Andy Bavier0d1131e2018-01-02 11:27:43 -070038 - custom_types/vhssservice.yaml
39 - custom_types/vhssvendor.yaml
Woojoong Kim6586fe82018-01-09 13:10:03 -080040 - custom_types/hssdbservice.yaml
41 - custom_types/hssdbvendor.yaml
JianHaoea1948b2018-01-18 20:14:01 +080042 - custom_types/internetemulatorservice.yaml
Andy Bavier0d1131e2018-01-02 11:27:43 -070043 - custom_types/sdncontrollerservice.yaml
44 - custom_types/sdncontrollervendor.yaml
Andy Baviere6478b22017-12-21 13:17:56 -070045 - custom_types/vepcservice.yaml
46 - custom_types/servicedependency.yaml
47 - custom_types/mcordsubscriberservice.yaml
Matteo Scandolo0fd48b42018-01-26 11:03:37 -080048 - custom_types/progranservice.yaml
Andy Baviere6478b22017-12-21 13:17:56 -070049
50topology_template:
51 node_templates:
52
53# site, image, fully created in deployment.yaml
54 {{ site_name }}:
55 type: tosca.nodes.Site
56 properties:
57 must-exist: true
58 name: {{ site_name }}
59
Andy Bavier0d1131e2018-01-02 11:27:43 -070060# flavors
Andy Baviere6478b22017-12-21 13:17:56 -070061 m1.small:
62 type: tosca.nodes.Flavor
63 properties:
64 name: m1.small
65 must-exist: true
66 m1.large:
67 type: tosca.nodes.Flavor
68 properties:
69 name: m1.large
70 must-exist: true
71 m1.medium:
72 type: tosca.nodes.Flavor
73 properties:
74 name: m1.medium
75 must-exist: true
76 m1.xlarge:
77 type: tosca.nodes.Flavor
78 properties:
79 name: m1.xlarge
80 must-exist: true
81
Andy Bavier0d1131e2018-01-02 11:27:43 -070082# images
Andy Baviere6478b22017-12-21 13:17:56 -070083 image-test:
84 type: tosca.nodes.Image
85 properties:
86 name: image-test
87
Andy Bavier0db4faf2018-01-17 16:20:16 -070088 image-mme:
89 type: tosca.nodes.Image
90 properties:
91 name: image-mme
92
93 image-hss:
94 type: tosca.nodes.Image
95 properties:
96 name: image-hss
97
98 image-hss-db:
99 type: tosca.nodes.Image
100 properties:
101 name: image-hss-db
102
Andy Baviere6478b22017-12-21 13:17:56 -0700103 image-spgwc:
104 type: tosca.nodes.Image
105 properties:
106 name: image-spgwc
107
108 image-spgwu:
109 type: tosca.nodes.Image
110 properties:
111 name: image-spgwu
112
JianHaoea1948b2018-01-18 20:14:01 +0800113 image-internetemulator:
114 type: tosca.nodes.Image
115 properties:
116 name: image-internetemulator
117
Andy Bavier0d1131e2018-01-02 11:27:43 -0700118# network templates
119 private_template:
120 type: tosca.nodes.NetworkTemplate
121 properties:
122 name: private_template
123 visibility: private
124 translation: none
125 vtn_kind: PRIVATE
126
127 flat_template:
128 type: tosca.nodes.NetworkTemplate
129 properties:
130 name: flat_template
131 visibility: private
132 translation: none
133 vtn_kind: FLAT
134
Andy Baviere6478b22017-12-21 13:17:56 -0700135# management networks, fully created in management-net.yaml
136 management:
137 type: tosca.nodes.Network
138 properties:
139 must-exist: true
140 name: management
141
142{% if use_management_hosts %}
143 management_hosts:
144 type: tosca.nodes.Network
145 properties:
146 must-exist: true
147 name: management_hosts
148{% endif %}
149
Andy Bavier0d1131e2018-01-02 11:27:43 -0700150# Other networks are created by vEPC service
Andy Baviere6478b22017-12-21 13:17:56 -0700151
152# ONOS_CORD, fully created in vtn.yaml
153 service#ONOS_CORD:
154 type: tosca.nodes.ONOSService
155 properties:
156 must-exist: true
157 name: ONOS_CORD
158
159# ONOS_Fabric, fully created in fabric.yaml
160 service#ONOS_Fabric:
161 type: tosca.nodes.ONOSService
162 properties:
163 must-exist: true
164 name: ONOS_Fabric
165
166# vMME Service
167 service#vmme:
168 type: tosca.nodes.VMMEService
169 properties:
170 name: vmme
171 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
172 private_key_fn: /opt/xos/services/vmme/keys/mcord_rsa
173 artifacts:
174 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
175
176 {{ site_name }}_vmme:
177 description: vMME Service Slice
178 type: tosca.nodes.Slice
179 properties:
180 name: {{ site_name }}_vmme
181 default_isolation: vm
182 network: noauto
183 requirements:
184 - site:
185 node: mysite
186 relationship: tosca.relationships.BelongsToOne
187 - service:
188 node: service#vmme
189 relationship: tosca.relationships.BelongsToOne
190 - default_image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700191 node: image-mme
Andy Baviere6478b22017-12-21 13:17:56 -0700192 relationship: tosca.relationships.BelongsToOne
193 - default_flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700194 node: m1.large
Andy Baviere6478b22017-12-21 13:17:56 -0700195 relationship: tosca.relationships.BelongsToOne
196
197 sprint_mme:
198 type: tosca.nodes.VMMEVendor
199 properties:
200 name: sprint_mme
201 requirements:
202 - image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700203 node: image-mme
Andy Baviere6478b22017-12-21 13:17:56 -0700204 relationship: tosca.relationships.BelongsToOne
205 - flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700206 node: m1.large
Andy Baviere6478b22017-12-21 13:17:56 -0700207 relationship: tosca.relationships.BelongsToOne
208
209#vSPGWC Service
210 service#vspgwc:
211 type: tosca.nodes.VSPGWCService
212 properties:
213 name: vspgwc
214 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
215 private_key_fn: /opt/xos/services/vspgwc/keys/mcord_rsa
216 artifacts:
217 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
218
219 {{ site_name }}_vspgwc:
Andy Bavier0d1131e2018-01-02 11:27:43 -0700220 description: vSPGW-C slice
Andy Baviere6478b22017-12-21 13:17:56 -0700221 type: tosca.nodes.Slice
222 properties:
223 name: {{ site_name }}_vspgwc
224 default_isolation: vm
225 network: noauto
226 requirements:
227 - site:
228 node: mysite
229 relationship: tosca.relationships.BelongsToOne
230 - service:
231 node: service#vspgwc
232 relationship: tosca.relationships.BelongsToOne
233 - default_image:
234 node: image-spgwc
235 relationship: tosca.relationships.BelongsToOne
236 - default_flavor:
237 node: m1.large
238 relationship: tosca.relationships.BelongsToOne
239
240 intel_vspgwc:
241 type: tosca.nodes.VSPGWCVendor
242 properties:
243 name: intel_vspgwc
244 requirements:
245 - image:
246 node: image-spgwc
247 relationship: tosca.relationships.BelongsToOne
248 - flavor:
249 node: m1.large
250 relationship: tosca.relationships.BelongsToOne
251
252
253#vSPGWU Service
254 service#vspgwu:
255 type: tosca.nodes.VSPGWUService
256 properties:
257 name: vspgwu
258 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
259 private_key_fn: /opt/xos/services/vspgwu/keys/mcord_rsa
260 artifacts:
261 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
262
263 {{ site_name }}_vspgwu:
Andy Bavier0d1131e2018-01-02 11:27:43 -0700264 description: vSPGW-U slice
Andy Baviere6478b22017-12-21 13:17:56 -0700265 type: tosca.nodes.Slice
266 properties:
267 name: {{ site_name }}_vspgwu
268 default_isolation: vm
269 network: noauto
270 requirements:
271 - site:
272 node: mysite
273 relationship: tosca.relationships.BelongsToOne
274 - service:
275 node: service#vspgwu
276 relationship: tosca.relationships.BelongsToOne
277 - default_image:
278 node: image-spgwu
279 relationship: tosca.relationships.BelongsToOne
280 - default_flavor:
281 node: m1.xlarge
282 relationship: tosca.relationships.BelongsToOne
283
284 intel_vspgwu:
285 type: tosca.nodes.VSPGWUVendor
286 properties:
287 name: intel_vspgwu
288 requirements:
289 - image:
290 node: image-spgwu
291 relationship: tosca.relationships.BelongsToOne
292 - flavor:
293 node: m1.xlarge
294 relationship: tosca.relationships.BelongsToOne
295
Andy Bavier0d1131e2018-01-02 11:27:43 -0700296# vHSS service
297 service#vhss:
298 type: tosca.nodes.VHSSService
299 properties:
300 name: vhss
301 kind: vEPC
302 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
303 private_key_fn: /opt/xos/services/vhss/keys/mcord_rsa
304 artifacts:
305 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
306
307 {{ site_name }}_vhss:
308 description: vHSS Service Slice
309 type: tosca.nodes.Slice
310 properties:
311 name: {{ site_name }}_vhss
312 default_isolation: vm
313 network: noauto
314 requirements:
315 - site:
316 node: mysite
317 relationship: tosca.relationships.BelongsToOne
318 - service:
319 node: service#vhss
320 relationship: tosca.relationships.BelongsToOne
321 - default_image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700322 node: image-hss
Andy Bavier0d1131e2018-01-02 11:27:43 -0700323 relationship: tosca.relationships.BelongsToOne
324 - default_flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700325 node: m1.large
Andy Bavier0d1131e2018-01-02 11:27:43 -0700326 relationship: tosca.relationships.BelongsToOne
327
328 sprint_hss:
329 type: tosca.nodes.VHSSVendor
330 properties:
331 name: sprint_hss
332 requirements:
333 - image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700334 node: image-hss
Andy Bavier0d1131e2018-01-02 11:27:43 -0700335 relationship: tosca.relationships.BelongsToOne
336 - flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700337 node: m1.large
Andy Bavier0d1131e2018-01-02 11:27:43 -0700338 relationship: tosca.relationships.BelongsToOne
339
Woojoong Kim6586fe82018-01-09 13:10:03 -0800340# HSS_DB service
341 service#hssdb:
342 type: tosca.nodes.HSSDBService
343 properties:
344 name: hssdb
345 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
346 private_key_fn: /opt/xos/services/hssdb/keys/mcord_rsa
347 artifacts:
348 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
349
350 {{ site_name }}_hssdb:
351 description: HSS-DB Service Slice
352 type: tosca.nodes.Slice
353 properties:
354 name: {{ site_name }}_hssdb
355 default_isolation: vm
356 network: noauto
357 requirements:
358 - site:
359 node: mysite
360 relationship: tosca.relationships.BelongsToOne
361 - service:
362 node: service#hssdb
363 relationship: tosca.relationships.BelongsToOne
364 - default_image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700365 node: image-hss-db
Woojoong Kim6586fe82018-01-09 13:10:03 -0800366 relationship: tosca.relationships.BelongsToOne
367 - default_flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700368 node: m1.large
Woojoong Kim6586fe82018-01-09 13:10:03 -0800369 relationship: tosca.relationships.BelongsToOne
370
371 sprint_hssdb:
372 type: tosca.nodes.HSSDBVendor
373 properties:
374 name: sprint_hssdb
375 requirements:
376 - image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700377 node: image-hss-db
Woojoong Kim6586fe82018-01-09 13:10:03 -0800378 relationship: tosca.relationships.BelongsToOne
379 - flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700380 node: m1.large
Woojoong Kim6586fe82018-01-09 13:10:03 -0800381 relationship: tosca.relationships.BelongsToOne
382
JianHaoea1948b2018-01-18 20:14:01 +0800383# InternetEmulator service
384 service#internetemulator:
385 type: tosca.nodes.InternetEmulatorService
386 properties:
387 name: internetemulator
388 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
389 private_key_fn: /opt/xos/services/internetemulator/keys/mcord_rsa
390 artifacts:
391 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
392
393 {{ site_name }}_internetemulator:
394 description: Internetemulator Service Slice
395 type: tosca.nodes.Slice
396 properties:
397 name: {{ site_name }}_internetemulator
398 default_isolation: vm
399 network: noauto
400 requirements:
401 - site:
402 node: mysite
403 relationship: tosca.relationships.BelongsToOne
404 - service:
405 node: service#internetemulator
406 relationship: tosca.relationships.BelongsToOne
407 - default_image:
408 node: image-internetemulator
409 relationship: tosca.relationships.BelongsToOne
410 - default_flavor:
411 node: m1.small
412 relationship: tosca.relationships.BelongsToOne
413
Andy Bavier0d1131e2018-01-02 11:27:43 -0700414#SDN Controller Service
415 service#sdncontroller:
416 type: tosca.nodes.SDNControllerService
417 properties:
418 name: sdncontroller
419 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
420 private_key_fn: /opt/xos/services/vspgwu/keys/mcord_rsa
421 artifacts:
422 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
423
424 {{ site_name }}_sdncontroller:
425 description: SDN controller slice
426 type: tosca.nodes.Slice
427 properties:
428 name: {{ site_name }}_sdncontroller
429 default_isolation: vm
430 network: noauto
431 requirements:
432 - site:
433 node: mysite
434 relationship: tosca.relationships.BelongsToOne
435 - service:
436 node: service#sdncontroller
437 relationship: tosca.relationships.BelongsToOne
438 - default_image:
439 node: image-test
440 relationship: tosca.relationships.BelongsToOne
441 - default_flavor:
442 node: m1.small
443 relationship: tosca.relationships.BelongsToOne
444
445 intel_sdncontroller:
446 type: tosca.nodes.SDNControllerVendor
447 properties:
448 name: intel_sdncontroller
449 requirements:
450 - image:
451 node: image-test
452 relationship: tosca.relationships.BelongsToOne
453 - flavor:
454 node: m1.small
455 relationship: tosca.relationships.BelongsToOne
456
Andy Baviere6478b22017-12-21 13:17:56 -0700457# vEPC Service
458 service#vepc:
459 type: tosca.nodes.VEPCService
460 properties:
461 name: vepc
462 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
463 private_key_fn: /opt/xos/services/epc-service/keys/mcord_rsa
464 artifacts:
465 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
466
Matteo Scandolo0fd48b42018-01-26 11:03:37 -0800467# Progran Service
468 service#progran:
469 type: tosca.nodes.ProgranService
470 properties:
471 name: progran
472 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
473 private_key_fn: /opt/xos/services/epc-service/keys/mcord_rsa
474 artifacts:
475 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
476
Andy Baviere6478b22017-12-21 13:17:56 -0700477# ServiceDependencies
478 vmme_vspgwc:
479 type: tosca.nodes.ServiceDependency
480 properties:
481 connect_method: None
482 requirements:
483 - subscriber_service:
484 node: service#vmme
485 relationship: tosca.relationships.BelongsToOne
486 - provider_service:
487 node: service#vspgwc
488 relationship: tosca.relationships.BelongsToOne
489
490 vmme_vspgwu:
491 type: tosca.nodes.ServiceDependency
492 properties:
493 connect_method: None
494 requirements:
495 - subscriber_service:
496 node: service#vmme
497 relationship: tosca.relationships.BelongsToOne
498 - provider_service:
499 node: service#vspgwu
500 relationship: tosca.relationships.BelongsToOne
501
502 vspgwc_vspgwu:
503 type: tosca.nodes.ServiceDependency
504 properties:
505 connect_method: None
506 requirements:
507 - subscriber_service:
508 node: service#vspgwc
509 relationship: tosca.relationships.BelongsToOne
510 - provider_service:
511 node: service#vspgwu
512 relationship: tosca.relationships.BelongsToOne
513
Andy Bavier0d1131e2018-01-02 11:27:43 -0700514 vmme_vhss:
515 type: tosca.nodes.ServiceDependency
516 properties:
517 connect_method: None
518 requirements:
519 - subscriber_service:
520 node: service#vmme
521 relationship: tosca.relationships.BelongsToOne
522 - provider_service:
523 node: service#vhss
524 relationship: tosca.relationships.BelongsToOne
525
Woojoong Kim6586fe82018-01-09 13:10:03 -0800526 vhss_hssdb:
527 type: tosca.nodes.ServiceDependency
528 properties:
529 connect_method: None
530 requirements:
531 - subscriber_service:
532 node: service#vhss
533 relationship: tosca.relationships.BelongsToOne
534 - provider_service:
535 node: service#hssdb
536 relationship: tosca.relationships.BelongsToOne
537
Andy Baviere6478b22017-12-21 13:17:56 -0700538# M-CORD Subscriber
539 service#mcord:
540 type: tosca.nodes.MCordSubscriberService
541 properties:
542 name: mcord
543
Andy Bavier0d1131e2018-01-02 11:27:43 -0700544 # ServiceDependency M-CORD to vMME
Andy Baviere6478b22017-12-21 13:17:56 -0700545 mcord_vmme:
546 type: tosca.nodes.ServiceDependency
547 properties:
548 connect_method: None
549 requirements:
550 - subscriber_service:
551 node: service#vmme
552 relationship: tosca.relationships.BelongsToOne
553 - provider_service:
554 node: service#mcord
555 relationship: tosca.relationships.BelongsToOne
Andy Bavier96701282018-01-22 20:41:25 -0800556
557# EPC networks
558
559{% for network in mcord_networks %}
560 {{ network['name'] }}:
561 type: tosca.nodes.Network
562 properties:
563 name: {{ network['name'] }}
564 subnet: {{ network['subnet'] }}
565 permit_all_slices: {{ network['permit_all_slices'] }}
566 requirements:
567 - template:
568 node: {{ network['template'] }}
569 relationship: tosca.relationships.BelongsToOne
570 - owner:
571 node: {{ site_name }}_{{ network['owner'] }}
572 relationship: tosca.relationships.BelongsToOne
573
574{% endfor %}
575
576# Network Slices for InternetEmulator, not created by EPC
577
578 internetemulator_slice_management_network:
579 type: tosca.nodes.NetworkSlice
580 requirements:
581 - network:
582 node: management
583 relationship: tosca.relationships.BelongsToOne
584 - slice:
585 node: {{ site_name }}_internetemulator
586 relationship: tosca.relationships.BelongsToOne
587
588 internetemulator_slice_sgi_network:
589 type: tosca.nodes.NetworkSlice
590 requirements:
591 - network:
592 node: sgi_network
593 relationship: tosca.relationships.BelongsToOne
594 - slice:
595 node: {{ site_name }}_internetemulator
596 relationship: tosca.relationships.BelongsToOne