blob: f3661541a1fe77713d576149e08cf0e5ff2bb6ca [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
49
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
467# ServiceDependencies
468 vmme_vspgwc:
469 type: tosca.nodes.ServiceDependency
470 properties:
471 connect_method: None
472 requirements:
473 - subscriber_service:
474 node: service#vmme
475 relationship: tosca.relationships.BelongsToOne
476 - provider_service:
477 node: service#vspgwc
478 relationship: tosca.relationships.BelongsToOne
479
480 vmme_vspgwu:
481 type: tosca.nodes.ServiceDependency
482 properties:
483 connect_method: None
484 requirements:
485 - subscriber_service:
486 node: service#vmme
487 relationship: tosca.relationships.BelongsToOne
488 - provider_service:
489 node: service#vspgwu
490 relationship: tosca.relationships.BelongsToOne
491
492 vspgwc_vspgwu:
493 type: tosca.nodes.ServiceDependency
494 properties:
495 connect_method: None
496 requirements:
497 - subscriber_service:
498 node: service#vspgwc
499 relationship: tosca.relationships.BelongsToOne
500 - provider_service:
501 node: service#vspgwu
502 relationship: tosca.relationships.BelongsToOne
503
Andy Bavier0d1131e2018-01-02 11:27:43 -0700504 vmme_vhss:
505 type: tosca.nodes.ServiceDependency
506 properties:
507 connect_method: None
508 requirements:
509 - subscriber_service:
510 node: service#vmme
511 relationship: tosca.relationships.BelongsToOne
512 - provider_service:
513 node: service#vhss
514 relationship: tosca.relationships.BelongsToOne
515
Woojoong Kim6586fe82018-01-09 13:10:03 -0800516 vhss_hssdb:
517 type: tosca.nodes.ServiceDependency
518 properties:
519 connect_method: None
520 requirements:
521 - subscriber_service:
522 node: service#vhss
523 relationship: tosca.relationships.BelongsToOne
524 - provider_service:
525 node: service#hssdb
526 relationship: tosca.relationships.BelongsToOne
527
Andy Baviere6478b22017-12-21 13:17:56 -0700528# M-CORD Subscriber
529 service#mcord:
530 type: tosca.nodes.MCordSubscriberService
531 properties:
532 name: mcord
533
Andy Bavier0d1131e2018-01-02 11:27:43 -0700534 # ServiceDependency M-CORD to vMME
Andy Baviere6478b22017-12-21 13:17:56 -0700535 mcord_vmme:
536 type: tosca.nodes.ServiceDependency
537 properties:
538 connect_method: None
539 requirements:
540 - subscriber_service:
541 node: service#vmme
542 relationship: tosca.relationships.BelongsToOne
543 - provider_service:
544 node: service#mcord
545 relationship: tosca.relationships.BelongsToOne
Andy Bavier96701282018-01-22 20:41:25 -0800546
547# EPC networks
548
549{% for network in mcord_networks %}
550 {{ network['name'] }}:
551 type: tosca.nodes.Network
552 properties:
553 name: {{ network['name'] }}
554 subnet: {{ network['subnet'] }}
555 permit_all_slices: {{ network['permit_all_slices'] }}
556 requirements:
557 - template:
558 node: {{ network['template'] }}
559 relationship: tosca.relationships.BelongsToOne
560 - owner:
561 node: {{ site_name }}_{{ network['owner'] }}
562 relationship: tosca.relationships.BelongsToOne
563
564{% endfor %}
565
566# Network Slices for InternetEmulator, not created by EPC
567
568 internetemulator_slice_management_network:
569 type: tosca.nodes.NetworkSlice
570 requirements:
571 - network:
572 node: management
573 relationship: tosca.relationships.BelongsToOne
574 - slice:
575 node: {{ site_name }}_internetemulator
576 relationship: tosca.relationships.BelongsToOne
577
578 internetemulator_slice_sgi_network:
579 type: tosca.nodes.NetworkSlice
580 requirements:
581 - network:
582 node: sgi_network
583 relationship: tosca.relationships.BelongsToOne
584 - slice:
585 node: {{ site_name }}_internetemulator
586 relationship: tosca.relationships.BelongsToOne