blob: 609d9ca26561bb7e2b9ec2c9b0e171ce926cbd2c [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:
24 - custom_types/xos.yaml
25 - custom_types/slice.yaml
26 - custom_types/site.yaml
27 - custom_types/image.yaml
28 - custom_types/flavor.yaml
29 - custom_types/network.yaml
Andy Bavier0d1131e2018-01-02 11:27:43 -070030 - custom_types/networktemplate.yaml
Andy Baviere6478b22017-12-21 13:17:56 -070031 - custom_types/onosservice.yaml
32 - custom_types/networkslice.yaml
33 - custom_types/vspgwcservice.yaml
34 - custom_types/vspgwcvendor.yaml
35 - custom_types/vspgwuservice.yaml
36 - custom_types/vspgwuvendor.yaml
37 - custom_types/vmmeservice.yaml
38 - custom_types/vmmevendor.yaml
Andy Bavier0d1131e2018-01-02 11:27:43 -070039 - custom_types/vhssservice.yaml
40 - custom_types/vhssvendor.yaml
Woojoong Kim6586fe82018-01-09 13:10:03 -080041 - custom_types/hssdbservice.yaml
42 - custom_types/hssdbvendor.yaml
JianHaoea1948b2018-01-18 20:14:01 +080043 - custom_types/internetemulatorservice.yaml
Andy Bavier0d1131e2018-01-02 11:27:43 -070044 - custom_types/sdncontrollerservice.yaml
45 - custom_types/sdncontrollervendor.yaml
Andy Baviere6478b22017-12-21 13:17:56 -070046 - custom_types/vepcservice.yaml
47 - custom_types/servicedependency.yaml
48 - custom_types/mcordsubscriberservice.yaml
Matteo Scandolo0fd48b42018-01-26 11:03:37 -080049 - custom_types/progranservice.yaml
Andy Baviere6478b22017-12-21 13:17:56 -070050
51topology_template:
52 node_templates:
53
54# site, image, fully created in deployment.yaml
55 {{ site_name }}:
56 type: tosca.nodes.Site
57 properties:
58 must-exist: true
59 name: {{ site_name }}
60
Andy Bavier0d1131e2018-01-02 11:27:43 -070061# flavors
Andy Baviere6478b22017-12-21 13:17:56 -070062 m1.small:
63 type: tosca.nodes.Flavor
64 properties:
65 name: m1.small
66 must-exist: true
67 m1.large:
68 type: tosca.nodes.Flavor
69 properties:
70 name: m1.large
71 must-exist: true
72 m1.medium:
73 type: tosca.nodes.Flavor
74 properties:
75 name: m1.medium
76 must-exist: true
77 m1.xlarge:
78 type: tosca.nodes.Flavor
79 properties:
80 name: m1.xlarge
81 must-exist: true
82
Andy Bavier0d1131e2018-01-02 11:27:43 -070083# images
Andy Baviere6478b22017-12-21 13:17:56 -070084 image-test:
85 type: tosca.nodes.Image
86 properties:
87 name: image-test
88
Andy Bavier0db4faf2018-01-17 16:20:16 -070089 image-mme:
90 type: tosca.nodes.Image
91 properties:
92 name: image-mme
93
94 image-hss:
95 type: tosca.nodes.Image
96 properties:
97 name: image-hss
98
99 image-hss-db:
100 type: tosca.nodes.Image
101 properties:
102 name: image-hss-db
103
Andy Baviere6478b22017-12-21 13:17:56 -0700104 image-spgwc:
105 type: tosca.nodes.Image
106 properties:
107 name: image-spgwc
108
109 image-spgwu:
110 type: tosca.nodes.Image
111 properties:
112 name: image-spgwu
113
JianHaoea1948b2018-01-18 20:14:01 +0800114 image-internetemulator:
115 type: tosca.nodes.Image
116 properties:
117 name: image-internetemulator
118
Andy Bavier0d1131e2018-01-02 11:27:43 -0700119# network templates
120 private_template:
121 type: tosca.nodes.NetworkTemplate
122 properties:
123 name: private_template
124 visibility: private
125 translation: none
126 vtn_kind: PRIVATE
127
128 flat_template:
129 type: tosca.nodes.NetworkTemplate
130 properties:
131 name: flat_template
132 visibility: private
133 translation: none
134 vtn_kind: FLAT
135
Andy Baviere6478b22017-12-21 13:17:56 -0700136# management networks, fully created in management-net.yaml
137 management:
138 type: tosca.nodes.Network
139 properties:
140 must-exist: true
141 name: management
142
143{% if use_management_hosts %}
144 management_hosts:
145 type: tosca.nodes.Network
146 properties:
147 must-exist: true
148 name: management_hosts
149{% endif %}
150
Andy Bavier0d1131e2018-01-02 11:27:43 -0700151# Other networks are created by vEPC service
Andy Baviere6478b22017-12-21 13:17:56 -0700152
153# ONOS_CORD, fully created in vtn.yaml
154 service#ONOS_CORD:
155 type: tosca.nodes.ONOSService
156 properties:
157 must-exist: true
158 name: ONOS_CORD
159
160# ONOS_Fabric, fully created in fabric.yaml
161 service#ONOS_Fabric:
162 type: tosca.nodes.ONOSService
163 properties:
164 must-exist: true
165 name: ONOS_Fabric
166
167# vMME Service
168 service#vmme:
169 type: tosca.nodes.VMMEService
170 properties:
171 name: vmme
172 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
173 private_key_fn: /opt/xos/services/vmme/keys/mcord_rsa
174 artifacts:
175 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
176
177 {{ site_name }}_vmme:
178 description: vMME Service Slice
179 type: tosca.nodes.Slice
180 properties:
181 name: {{ site_name }}_vmme
182 default_isolation: vm
183 network: noauto
184 requirements:
185 - site:
186 node: mysite
187 relationship: tosca.relationships.BelongsToOne
188 - service:
189 node: service#vmme
190 relationship: tosca.relationships.BelongsToOne
191 - default_image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700192 node: image-mme
Andy Baviere6478b22017-12-21 13:17:56 -0700193 relationship: tosca.relationships.BelongsToOne
194 - default_flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700195 node: m1.large
Andy Baviere6478b22017-12-21 13:17:56 -0700196 relationship: tosca.relationships.BelongsToOne
197
198 sprint_mme:
199 type: tosca.nodes.VMMEVendor
200 properties:
201 name: sprint_mme
202 requirements:
203 - image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700204 node: image-mme
Andy Baviere6478b22017-12-21 13:17:56 -0700205 relationship: tosca.relationships.BelongsToOne
206 - flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700207 node: m1.large
Andy Baviere6478b22017-12-21 13:17:56 -0700208 relationship: tosca.relationships.BelongsToOne
209
210#vSPGWC Service
211 service#vspgwc:
212 type: tosca.nodes.VSPGWCService
213 properties:
214 name: vspgwc
215 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
216 private_key_fn: /opt/xos/services/vspgwc/keys/mcord_rsa
217 artifacts:
218 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
219
220 {{ site_name }}_vspgwc:
Andy Bavier0d1131e2018-01-02 11:27:43 -0700221 description: vSPGW-C slice
Andy Baviere6478b22017-12-21 13:17:56 -0700222 type: tosca.nodes.Slice
223 properties:
224 name: {{ site_name }}_vspgwc
225 default_isolation: vm
226 network: noauto
227 requirements:
228 - site:
229 node: mysite
230 relationship: tosca.relationships.BelongsToOne
231 - service:
232 node: service#vspgwc
233 relationship: tosca.relationships.BelongsToOne
234 - default_image:
235 node: image-spgwc
236 relationship: tosca.relationships.BelongsToOne
237 - default_flavor:
238 node: m1.large
239 relationship: tosca.relationships.BelongsToOne
240
241 intel_vspgwc:
242 type: tosca.nodes.VSPGWCVendor
243 properties:
244 name: intel_vspgwc
245 requirements:
246 - image:
247 node: image-spgwc
248 relationship: tosca.relationships.BelongsToOne
249 - flavor:
250 node: m1.large
251 relationship: tosca.relationships.BelongsToOne
252
253
254#vSPGWU Service
255 service#vspgwu:
256 type: tosca.nodes.VSPGWUService
257 properties:
258 name: vspgwu
259 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
260 private_key_fn: /opt/xos/services/vspgwu/keys/mcord_rsa
261 artifacts:
262 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
263
264 {{ site_name }}_vspgwu:
Andy Bavier0d1131e2018-01-02 11:27:43 -0700265 description: vSPGW-U slice
Andy Baviere6478b22017-12-21 13:17:56 -0700266 type: tosca.nodes.Slice
267 properties:
268 name: {{ site_name }}_vspgwu
269 default_isolation: vm
270 network: noauto
271 requirements:
272 - site:
273 node: mysite
274 relationship: tosca.relationships.BelongsToOne
275 - service:
276 node: service#vspgwu
277 relationship: tosca.relationships.BelongsToOne
278 - default_image:
279 node: image-spgwu
280 relationship: tosca.relationships.BelongsToOne
281 - default_flavor:
282 node: m1.xlarge
283 relationship: tosca.relationships.BelongsToOne
284
285 intel_vspgwu:
286 type: tosca.nodes.VSPGWUVendor
287 properties:
288 name: intel_vspgwu
289 requirements:
290 - image:
291 node: image-spgwu
292 relationship: tosca.relationships.BelongsToOne
293 - flavor:
294 node: m1.xlarge
295 relationship: tosca.relationships.BelongsToOne
296
Andy Bavier0d1131e2018-01-02 11:27:43 -0700297# vHSS service
298 service#vhss:
299 type: tosca.nodes.VHSSService
300 properties:
301 name: vhss
302 kind: vEPC
303 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
304 private_key_fn: /opt/xos/services/vhss/keys/mcord_rsa
305 artifacts:
306 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
307
308 {{ site_name }}_vhss:
309 description: vHSS Service Slice
310 type: tosca.nodes.Slice
311 properties:
312 name: {{ site_name }}_vhss
313 default_isolation: vm
314 network: noauto
315 requirements:
316 - site:
317 node: mysite
318 relationship: tosca.relationships.BelongsToOne
319 - service:
320 node: service#vhss
321 relationship: tosca.relationships.BelongsToOne
322 - default_image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700323 node: image-hss
Andy Bavier0d1131e2018-01-02 11:27:43 -0700324 relationship: tosca.relationships.BelongsToOne
325 - default_flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700326 node: m1.large
Andy Bavier0d1131e2018-01-02 11:27:43 -0700327 relationship: tosca.relationships.BelongsToOne
328
329 sprint_hss:
330 type: tosca.nodes.VHSSVendor
331 properties:
332 name: sprint_hss
333 requirements:
334 - image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700335 node: image-hss
Andy Bavier0d1131e2018-01-02 11:27:43 -0700336 relationship: tosca.relationships.BelongsToOne
337 - flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700338 node: m1.large
Andy Bavier0d1131e2018-01-02 11:27:43 -0700339 relationship: tosca.relationships.BelongsToOne
340
Woojoong Kim6586fe82018-01-09 13:10:03 -0800341# HSS_DB service
342 service#hssdb:
343 type: tosca.nodes.HSSDBService
344 properties:
345 name: hssdb
346 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
347 private_key_fn: /opt/xos/services/hssdb/keys/mcord_rsa
348 artifacts:
349 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
350
351 {{ site_name }}_hssdb:
352 description: HSS-DB Service Slice
353 type: tosca.nodes.Slice
354 properties:
355 name: {{ site_name }}_hssdb
356 default_isolation: vm
357 network: noauto
358 requirements:
359 - site:
360 node: mysite
361 relationship: tosca.relationships.BelongsToOne
362 - service:
363 node: service#hssdb
364 relationship: tosca.relationships.BelongsToOne
365 - default_image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700366 node: image-hss-db
Woojoong Kim6586fe82018-01-09 13:10:03 -0800367 relationship: tosca.relationships.BelongsToOne
368 - default_flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700369 node: m1.large
Woojoong Kim6586fe82018-01-09 13:10:03 -0800370 relationship: tosca.relationships.BelongsToOne
371
372 sprint_hssdb:
373 type: tosca.nodes.HSSDBVendor
374 properties:
375 name: sprint_hssdb
376 requirements:
377 - image:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700378 node: image-hss-db
Woojoong Kim6586fe82018-01-09 13:10:03 -0800379 relationship: tosca.relationships.BelongsToOne
380 - flavor:
Andy Bavier0db4faf2018-01-17 16:20:16 -0700381 node: m1.large
Woojoong Kim6586fe82018-01-09 13:10:03 -0800382 relationship: tosca.relationships.BelongsToOne
383
JianHaoea1948b2018-01-18 20:14:01 +0800384# InternetEmulator service
385 service#internetemulator:
386 type: tosca.nodes.InternetEmulatorService
387 properties:
388 name: internetemulator
389 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
390 private_key_fn: /opt/xos/services/internetemulator/keys/mcord_rsa
391 artifacts:
392 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
393
394 {{ site_name }}_internetemulator:
395 description: Internetemulator Service Slice
396 type: tosca.nodes.Slice
397 properties:
398 name: {{ site_name }}_internetemulator
399 default_isolation: vm
400 network: noauto
401 requirements:
402 - site:
403 node: mysite
404 relationship: tosca.relationships.BelongsToOne
405 - service:
406 node: service#internetemulator
407 relationship: tosca.relationships.BelongsToOne
408 - default_image:
409 node: image-internetemulator
410 relationship: tosca.relationships.BelongsToOne
411 - default_flavor:
412 node: m1.small
413 relationship: tosca.relationships.BelongsToOne
414
Andy Bavier0d1131e2018-01-02 11:27:43 -0700415#SDN Controller Service
416 service#sdncontroller:
417 type: tosca.nodes.SDNControllerService
418 properties:
419 name: sdncontroller
420 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
421 private_key_fn: /opt/xos/services/vspgwu/keys/mcord_rsa
422 artifacts:
423 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
424
425 {{ site_name }}_sdncontroller:
426 description: SDN controller slice
427 type: tosca.nodes.Slice
428 properties:
429 name: {{ site_name }}_sdncontroller
430 default_isolation: vm
431 network: noauto
432 requirements:
433 - site:
434 node: mysite
435 relationship: tosca.relationships.BelongsToOne
436 - service:
437 node: service#sdncontroller
438 relationship: tosca.relationships.BelongsToOne
439 - default_image:
440 node: image-test
441 relationship: tosca.relationships.BelongsToOne
442 - default_flavor:
443 node: m1.small
444 relationship: tosca.relationships.BelongsToOne
445
446 intel_sdncontroller:
447 type: tosca.nodes.SDNControllerVendor
448 properties:
449 name: intel_sdncontroller
450 requirements:
451 - image:
452 node: image-test
453 relationship: tosca.relationships.BelongsToOne
454 - flavor:
455 node: m1.small
456 relationship: tosca.relationships.BelongsToOne
457
Andy Baviere6478b22017-12-21 13:17:56 -0700458# vEPC Service
459 service#vepc:
460 type: tosca.nodes.VEPCService
461 properties:
462 name: vepc
463 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
464 private_key_fn: /opt/xos/services/epc-service/keys/mcord_rsa
465 artifacts:
466 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
467
Matteo Scandolo0fd48b42018-01-26 11:03:37 -0800468# Progran Service
469 service#progran:
470 type: tosca.nodes.ProgranService
471 properties:
472 name: progran
473 public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
474 private_key_fn: /opt/xos/services/epc-service/keys/mcord_rsa
475 artifacts:
476 pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
477
Andy Baviere6478b22017-12-21 13:17:56 -0700478# ServiceDependencies
479 vmme_vspgwc:
480 type: tosca.nodes.ServiceDependency
481 properties:
482 connect_method: None
483 requirements:
484 - subscriber_service:
485 node: service#vmme
486 relationship: tosca.relationships.BelongsToOne
487 - provider_service:
488 node: service#vspgwc
489 relationship: tosca.relationships.BelongsToOne
490
491 vmme_vspgwu:
492 type: tosca.nodes.ServiceDependency
493 properties:
494 connect_method: None
495 requirements:
496 - subscriber_service:
497 node: service#vmme
498 relationship: tosca.relationships.BelongsToOne
499 - provider_service:
500 node: service#vspgwu
501 relationship: tosca.relationships.BelongsToOne
502
503 vspgwc_vspgwu:
504 type: tosca.nodes.ServiceDependency
505 properties:
506 connect_method: None
507 requirements:
508 - subscriber_service:
509 node: service#vspgwc
510 relationship: tosca.relationships.BelongsToOne
511 - provider_service:
512 node: service#vspgwu
513 relationship: tosca.relationships.BelongsToOne
514
Andy Bavier0d1131e2018-01-02 11:27:43 -0700515 vmme_vhss:
516 type: tosca.nodes.ServiceDependency
517 properties:
518 connect_method: None
519 requirements:
520 - subscriber_service:
521 node: service#vmme
522 relationship: tosca.relationships.BelongsToOne
523 - provider_service:
524 node: service#vhss
525 relationship: tosca.relationships.BelongsToOne
526
Woojoong Kim6586fe82018-01-09 13:10:03 -0800527 vhss_hssdb:
528 type: tosca.nodes.ServiceDependency
529 properties:
530 connect_method: None
531 requirements:
532 - subscriber_service:
533 node: service#vhss
534 relationship: tosca.relationships.BelongsToOne
535 - provider_service:
536 node: service#hssdb
537 relationship: tosca.relationships.BelongsToOne
538
Andy Baviere6478b22017-12-21 13:17:56 -0700539# M-CORD Subscriber
540 service#mcord:
541 type: tosca.nodes.MCordSubscriberService
542 properties:
543 name: mcord
544
Andy Bavier0d1131e2018-01-02 11:27:43 -0700545 # ServiceDependency M-CORD to vMME
Andy Baviere6478b22017-12-21 13:17:56 -0700546 mcord_vmme:
547 type: tosca.nodes.ServiceDependency
548 properties:
549 connect_method: None
550 requirements:
551 - subscriber_service:
552 node: service#vmme
553 relationship: tosca.relationships.BelongsToOne
554 - provider_service:
555 node: service#mcord
556 relationship: tosca.relationships.BelongsToOne
Andy Bavier96701282018-01-22 20:41:25 -0800557
558# EPC networks
559
560{% for network in mcord_networks %}
561 {{ network['name'] }}:
562 type: tosca.nodes.Network
563 properties:
564 name: {{ network['name'] }}
565 subnet: {{ network['subnet'] }}
566 permit_all_slices: {{ network['permit_all_slices'] }}
567 requirements:
568 - template:
569 node: {{ network['template'] }}
570 relationship: tosca.relationships.BelongsToOne
571 - owner:
572 node: {{ site_name }}_{{ network['owner'] }}
573 relationship: tosca.relationships.BelongsToOne
574
575{% endfor %}
576
577# Network Slices for InternetEmulator, not created by EPC
578
579 internetemulator_slice_management_network:
580 type: tosca.nodes.NetworkSlice
581 requirements:
582 - network:
583 node: management
584 relationship: tosca.relationships.BelongsToOne
585 - slice:
586 node: {{ site_name }}_internetemulator
587 relationship: tosca.relationships.BelongsToOne
588
589 internetemulator_slice_sgi_network:
590 type: tosca.nodes.NetworkSlice
591 requirements:
592 - network:
593 node: sgi_network
594 relationship: tosca.relationships.BelongsToOne
595 - slice:
596 node: {{ site_name }}_internetemulator
597 relationship: tosca.relationships.BelongsToOne