blob: 24a95495b956500b02a237c664622d3bcf766c75 [file] [log] [blame]
Scott Baker50421662016-06-27 22:09:48 -07001tosca_definitions_version: tosca_simple_yaml_1_0
2
3description: Just enough Tosca to get the vSG slice running on the CORD POD
4
5imports:
6 - custom_types/xos.yaml
7
8topology_template:
9 node_templates:
10 # CORD Services
11 service#vtr:
12 type: tosca.nodes.Service
13 properties:
14 view_url: /admin/vtr/vtrservice/$id$/
15 kind: vTR
16 replaces: service_vtr
17
18 service#volt:
19 type: tosca.nodes.VOLTService
20 requirements:
21 - vsg_tenant:
22 node: service#vsg
23 relationship: tosca.relationships.TenantOfService
24 properties:
25 view_url: /admin/volt/voltservice/$id$/
26 kind: vOLT
27 replaces: service_volt
28 public_key: { get_artifact: [ SELF, pubkey, LOCAL_FILE] }
29 private_key_fn: /opt/xos/services/volt/keys/volt_rsa
30 artifacts:
31 pubkey: /opt/xos/services/volt/keys/volt_rsa.pub
32
33 addresses_vsg:
34 type: tosca.nodes.AddressPool
35 properties:
36 addresses: 10.168.0.0/24
37 gateway_ip: 10.168.0.1
38 gateway_mac: 02:42:0a:a8:00:01
39
40 addresses_exampleservice-public:
41 type: tosca.nodes.AddressPool
42 properties:
43 addresses: 10.168.1.0/24
44 gateway_ip: 10.168.1.1
45 gateway_mac: 02:42:0a:a8:00:01
46
47 service#vsg:
48 type: tosca.nodes.VSGService
49 requirements:
50 - vrouter_tenant:
51 node: service#vrouter
52 relationship: tosca.relationships.TenantOfService
53 properties:
54 view_url: /admin/vsg/vsgservice/$id$/
55 backend_network_label: hpc_client
56 public_key: { get_artifact: [ SELF, pubkey, LOCAL_FILE] }
57 private_key_fn: /opt/xos/services/vsg/keys/vsg_rsa
58# node_label: label_vsg
59 replaces: service_vsg
60 artifacts:
61 pubkey: /opt/xos/services/vsg/keys/vsg_rsa.pub
62
63 service#vrouter:
64 type: tosca.nodes.VRouterService
65 properties:
66 view_url: /admin/vrouter/vrouterservice/$id$/
67 replaces: service_vrouter
68 requirements:
69 - addresses_vsg:
70 node: addresses_vsg
71 relationship: tosca.relationships.ProvidesAddresses
72 - addresses_service1:
73 node: addresses_exampleservice-public
74 relationship: tosca.relationships.ProvidesAddresses
75
76
77 service#ONOS_CORD:
78 type: tosca.nodes.ONOSService
79 properties:
80 no-delete: true
81 no-create: true
82 no-update: true
83
84 service#ONOS_Fabric:
85 type: tosca.nodes.ONOSService
86 properties:
87 no-delete: true
88 no-create: true
89 no-update: true
90
Scott Baker1edb6972016-06-29 15:23:01 -070091 # The vOLT ONOS app is not yet fully integrated
92 #vOLT_ONOS_app:
93 # type: tosca.nodes.ONOSvOLTApp
94 # requirements:
95 # - onos_tenant:
96 # node: service#ONOS_CORD
97 # relationship: tosca.relationships.TenantOfService
98 # - volt_service:
99 # node: service#volt
100 # relationship: tosca.relationships.UsedByService
101 # properties:
102 # install_dependencies: onos-ext-notifier-1.0-SNAPSHOT.oar, onos-ext-volt-event-publisher-1.0-SNAPSHOT.oar
103 # dependencies: org.onosproject.openflow-base, org.onosproject.olt, org.ciena.onos.ext_notifier, org.ciena.onos.volt_event_publisher
104 # autogenerate: volt-network-cfg
Scott Baker50421662016-06-27 22:09:48 -0700105
106 vRouter_ONOS_app:
107 type: tosca.nodes.ONOSvRouterApp
108 requirements:
109 - onos_tenant:
110 node: service#ONOS_Fabric
111 relationship: tosca.relationships.TenantOfService
112 - vrouter_service:
113 node: service#vrouter
114 relationship: tosca.relationships.UsedByService
115 properties:
116 dependencies: org.onosproject.vrouter
117 autogenerate: vrouter-network-cfg
118
Scott Baker3e397522016-09-09 15:23:56 -0700119 template#vsg:
Scott Baker50421662016-06-27 22:09:48 -0700120 type: tosca.nodes.NetworkTemplate
Scott Baker3e397522016-09-09 15:23:56 -0700121 properties:
122 visibility: private
123 translation: none
124 vtn_kind: VSG
Scott Baker50421662016-06-27 22:09:48 -0700125
126 management:
127 type: tosca.nodes.network.Network.XOS
128 properties:
129 no-create: true
130 no-delete: true
131 no-update: true
132
Scott Bakerb08cd8d2016-10-12 09:56:34 -0700133 management_hosts:
134 type: tosca.nodes.network.Network.XOS
135 properties:
136 no-create: true
137 no-delete: true
138 no-update: true
139
Scott Bakerd8d905a2016-07-18 16:04:05 -0700140 image#vsg-1.1:
Scott Baker50421662016-06-27 22:09:48 -0700141 type: tosca.nodes.Image
142
143 mysite:
144 type: tosca.nodes.Site
145
146 label_vsg:
147 type: tosca.nodes.NodeLabel
148
149 # Networks required by the CORD setup
150 mysite_vsg-access:
151 type: tosca.nodes.network.Network
152 properties:
153 ip_version: 4
154 requirements:
155 - network_template:
Scott Baker3e397522016-09-09 15:23:56 -0700156 node: template#vsg
Scott Baker50421662016-06-27 22:09:48 -0700157 relationship: tosca.relationships.UsesNetworkTemplate
158 - owner:
159 node: mysite_vsg
160 relationship: tosca.relationships.MemberOfSlice
161 - connection:
162 node: mysite_vsg
163 relationship: tosca.relationships.ConnectsToSlice
164
165 # CORD Slices
166 mysite_vsg:
167 description: vSG Controller Slice
168 type: tosca.nodes.Slice
169 properties:
170 network: noauto
171 requirements:
172 - vsg_service:
173 node: service#vsg
174 relationship: tosca.relationships.MemberOfService
175 - site:
176 node: mysite
177 relationship: tosca.relationships.MemberOfSite
178 - management:
179 node: management
180 relationship: tosca.relationships.ConnectsToNetwork
Scott Bakerb08cd8d2016-10-12 09:56:34 -0700181# - management_hosts:
182# node: management_hosts
183# relationship: tosca.relationships.ConnectsToNetwork
Scott Baker50421662016-06-27 22:09:48 -0700184 - image:
Scott Bakerd8d905a2016-07-18 16:04:05 -0700185 node: image#vsg-1.1
Scott Baker50421662016-06-27 22:09:48 -0700186 relationship: tosca.relationships.DefaultImage