blob: 0d695792f731c5e71a299e0324b9b28dcfed8bc2 [file] [log] [blame]
Joey Armstrong003e83e2023-01-09 20:23:48 -05001# Copyright 2017-2023 Open Networking Foundation (ONF) and the ONF Contributors
Wei-Yu Chen1a9599c2019-02-07 16:44:55 -08002#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15# curl -H "xos-username: admin@opencord.org" -H "xos-password: letmein" -X POST --data-binary @onf-mcord-pod1-fabric.yaml http://10.90.0.131:30007/run
16
17tosca_definitions_version: tosca_simple_yaml_1_0
18imports:
19 - custom_types/switch.yaml
20 - custom_types/switchport.yaml
21 - custom_types/portinterface.yaml
22 - custom_types/fabricipaddress.yaml
23 - custom_types/site.yaml
24 - custom_types/deployment.yaml
25 - custom_types/sitedeployment.yaml
26 - custom_types/node.yaml
27 - custom_types/vrouterservice.yaml
28 - custom_types/vrouterserviceinstance.yaml
29
30description: Configures the ONF SEBA POD with AT&T workflow
31
32topology_template:
33 node_templates:
34
35 # Site deployment
36 mySite:
37 type: tosca.nodes.Site
38 properties:
39 name: mysite
40 login_base: opencord
41 abbreviated_name: ms
42 site_url: http://opencord.org/
43 hosts_nodes: true
44
45 myDeployment:
46 type: tosca.nodes.Deployment
47 properties:
48 name: mydeployment
49
50 site_deployment:
51 type: tosca.nodes.SiteDeployment
52 requirements:
53 - site:
54 node: mySite
55 relationship: tosca.relationships.BelongsToOne
56 - deployment:
57 node: myDeployment
58 relationship: tosca.relationships.BelongsToOne
59
60 # compute nodes
61 node#node1:
62 type: tosca.nodes.Node
63 properties:
64 dataPlaneIntf: eth2
65 dataPlaneIp: 118.0.0.201
66 name: node1
67 requirements:
68 - site_deployment:
69 node: site_deployment
70 relationship: tosca.relationships.BelongsToOne
71
72 node#node2:
73 type: tosca.nodes.Node
74 properties:
75 dataPlaneIntf: eth2
76 dataPlaneIp: 118.0.0.202
77 name: node2
78 requirements:
79 - site_deployment:
80 node: site_deployment
81 relationship: tosca.relationships.BelongsToOne
82
83 node#node3:
84 type: tosca.nodes.Node
85 properties:
86 dataPlaneIntf: eth2
87 dataPlaneIp: 118.0.0.203
88 name: node3
89 requirements:
90 - site_deployment:
91 node: site_deployment
92 relationship: tosca.relationships.BelongsToOne
93
94 service#vrouter:
95 type: tosca.nodes.VRouterService
96 properties:
97 name: vrouter
98 must-exist: true
99
100 vroutersi#calico:
101 type: tosca.nodes.VRouterServiceInstance
102 properties:
103 name: calico
104 requirements:
105 - owner:
106 node: service#vrouter
107 relationship: tosca.relationships.BelongsToOne
108
109 # Fabric configuration
110 switch#leaf_1:
111 type: tosca.nodes.Switch
112 properties:
113 driver: ofdpa3
114 ipv4Loopback: 192.168.0.204
115 ipv4NodeSid: 214
116 isEdgeRouter: true
117 name: Agg Switch
118 ofId: of:0000000000000001
119 routerMac: 54:87:de:ad:be:ef
120
121 # Node1 Port
122 port#node_1_port:
123 type: tosca.nodes.SwitchPort
124 properties:
125 portId: 33
126 requirements:
127 - switch:
128 node: switch#leaf_1
129 relationship: tosca.relationships.BelongsToOne
130
131 interface#port_1_interface:
132 type: tosca.nodes.PortInterface
133 properties:
134 vlanUntagged: 20
135 name: node_1
136 requirements:
137 - port:
138 node: port#node_1_port
139 relationship: tosca.relationships.BelongsToOne
140
141 ip#port_1_ip_1:
142 type: tosca.nodes.FabricIpAddress
143 properties:
144 ip: 13.1.1.0/24
145 description: node_1_ip_1
146 requirements:
147 - interface:
148 node: interface#port_1_interface
149 relationship: tosca.relationships.BelongsToOne
150
151 ip#port_1_ip_2:
152 type: tosca.nodes.FabricIpAddress
153 properties:
154 ip: 119.0.0.254/24
155 description: node_1_ip_2
156 requirements:
157 - interface:
158 node: interface#port_1_interface
159 relationship: tosca.relationships.BelongsToOne
160
161 ip#port_1_ip_3:
162 type: tosca.nodes.FabricIpAddress
163 properties:
164 ip: 116.0.0.254/24
165 description: node_1_ip_3
166 requirements:
167 - interface:
168 node: interface#port_1_interface
169 relationship: tosca.relationships.BelongsToOne
170
171 # Node2 Port
172 port#node_2_port:
173 type: tosca.nodes.SwitchPort
174 properties:
175 portId: 34
176 requirements:
177 - switch:
178 node: switch#leaf_1
179 relationship: tosca.relationships.BelongsToOne
180
181 interface#port_2_interface:
182 type: tosca.nodes.PortInterface
183 properties:
184 vlanUntagged: 20
185 name: node_2
186 requirements:
187 - port:
188 node: port#node_2_port
189 relationship: tosca.relationships.BelongsToOne
190
191 ip#port_2_ip_1:
192 type: tosca.nodes.FabricIpAddress
193 properties:
194 ip: 13.1.1.0/24
195 description: node_2_ip_1
196 requirements:
197 - interface:
198 node: interface#port_2_interface
199 relationship: tosca.relationships.BelongsToOne
200
201 ip#port_2_ip_2:
202 type: tosca.nodes.FabricIpAddress
203 properties:
204 ip: 119.0.0.254/24
205 description: node_2_ip_2
206 requirements:
207 - interface:
208 node: interface#port_2_interface
209 relationship: tosca.relationships.BelongsToOne
210
211 ip#port_2_ip_3:
212 type: tosca.nodes.FabricIpAddress
213 properties:
214 ip: 116.0.0.254/24
215 description: node_2_ip_3
216 requirements:
217 - interface:
218 node: interface#port_2_interface
219 relationship: tosca.relationships.BelongsToOne
220
221 # Node3 Port
222 port#node_3_port:
223 type: tosca.nodes.SwitchPort
224 properties:
225 portId: 35
226 requirements:
227 - switch:
228 node: switch#leaf_1
229 relationship: tosca.relationships.BelongsToOne
230
231 interface#port_3_interface:
232 type: tosca.nodes.PortInterface
233 properties:
234 vlanUntagged: 20
235 name: node_3
236 requirements:
237 - port:
238 node: port#node_3_port
239 relationship: tosca.relationships.BelongsToOne
240
241 ip#port_3_ip_1:
242 type: tosca.nodes.FabricIpAddress
243 properties:
244 ip: 13.1.1.0/24
245 description: node_3_ip_1
246 requirements:
247 - interface:
248 node: interface#port_3_interface
249 relationship: tosca.relationships.BelongsToOne
250
251 ip#port_3_ip_2:
252 type: tosca.nodes.FabricIpAddress
253 properties:
254 ip: 119.0.0.254/24
255 description: node_3_ip_2
256 requirements:
257 - interface:
258 node: interface#port_3_interface
259 relationship: tosca.relationships.BelongsToOne
260
261 ip#port_3_ip_3:
262 type: tosca.nodes.FabricIpAddress
263 properties:
264 ip: 116.0.0.254/24
265 description: node_3_ip_2
266 requirements:
267 - interface:
268 node: interface#port_3_interface
269 relationship: tosca.relationships.BelongsToOne
270