blob: 3d797d2e2756eba2a1be4c3c1833a890c0bbe3df [file] [log] [blame]
# Copyright 2017-2023 Open Networking Foundation (ONF) and the ONF Contributors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# curl -H "xos-username: admin@opencord.org" -H "xos-password: letmein" -X POST --data-binary @aether-production-fabric.yaml http://192.168.69.1:30007/run
tosca_definitions_version: tosca_simple_yaml_1_0
imports:
- custom_types/switch.yaml
- custom_types/switchport.yaml
- custom_types/portinterface.yaml
- custom_types/fabricipaddress.yaml
- custom_types/site.yaml
- custom_types/node.yaml
- custom_types/vrouterservice.yaml
- custom_types/vrouterserviceinstance.yaml
description: Configures the ONF Aether Production Fabric
topology_template:
node_templates:
# Site deployment
mySite:
type: tosca.nodes.Site
properties:
name: mysite
login_base: opencord
abbreviated_name: ms
site_url: http://opencord.org/
hosts_nodes: true
# compute nodes
node#node1:
type: tosca.nodes.Node
properties:
dataPlaneIntf: eth2
dataPlaneIp: 192.168.251.20
name: node1
node#node2:
type: tosca.nodes.Node
properties:
dataPlaneIntf: eth2
dataPlaneIp: 192.168.251.21
name: node2
node#node3:
type: tosca.nodes.Node
properties:
dataPlaneIntf: eth2
dataPlaneIp: 192.168.251.22
name: node3
# static routes
service#vrouter:
type: tosca.nodes.VRouterService
properties:
name: vrouter
must-exist: true
vroutersi#calico:
type: tosca.nodes.VRouterServiceInstance
properties:
name: calico
requirements:
- owner:
node: service#vrouter
relationship: tosca.relationships.BelongsToOne
# Fabric configuration
switch#leaf_1:
type: tosca.nodes.Switch
properties:
driver: ofdpa3
ipv4Loopback: 192.168.0.204
ipv4NodeSid: 214
isEdgeRouter: true
name: Agg Switch
ofId: of:0000000000000001
routerMac: 54:87:de:ad:be:ef
# Node1 Port
port#node_1_port:
type: tosca.nodes.SwitchPort
properties:
portId: 37
requirements:
- switch:
node: switch#leaf_1
relationship: tosca.relationships.BelongsToOne
interface#port_1_interface:
type: tosca.nodes.PortInterface
properties:
vlanUntagged: 20
name: node_1
requirements:
- port:
node: port#node_1_port
relationship: tosca.relationships.BelongsToOne
ip#port_1_sgi_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.250.0/24
description: node_1_sgi_net
requirements:
- interface:
node: interface#port_1_interface
relationship: tosca.relationships.BelongsToOne
ip#port_1_s1u_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.252.0/24
description: node_1_s1u_net
requirements:
- interface:
node: interface#port_1_interface
relationship: tosca.relationships.BelongsToOne
ip#port_1_rru_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.251.0/24
description: node_1_rru_net
requirements:
- interface:
node: interface#port_1_interface
relationship: tosca.relationships.BelongsToOne
# Node2 Port
port#node_2_port:
type: tosca.nodes.SwitchPort
properties:
portId: 40
requirements:
- switch:
node: switch#leaf_1
relationship: tosca.relationships.BelongsToOne
interface#port_2_interface:
type: tosca.nodes.PortInterface
properties:
vlanUntagged: 20
name: node_2
requirements:
- port:
node: port#node_2_port
relationship: tosca.relationships.BelongsToOne
ip#port_2_sgi_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.250.0/24
description: node_2_sgi_net
requirements:
- interface:
node: interface#port_2_interface
relationship: tosca.relationships.BelongsToOne
ip#port_2_s1u_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.252.0/24
description: node_2_s1u_net
requirements:
- interface:
node: interface#port_2_interface
relationship: tosca.relationships.BelongsToOne
ip#port_2_rru_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.251.0/24
description: node_2_rru_net
requirements:
- interface:
node: interface#port_2_interface
relationship: tosca.relationships.BelongsToOne
# Node3 Port
port#node_3_port:
type: tosca.nodes.SwitchPort
properties:
portId: 38
requirements:
- switch:
node: switch#leaf_1
relationship: tosca.relationships.BelongsToOne
interface#port_3_interface:
type: tosca.nodes.PortInterface
properties:
vlanUntagged: 20
name: node_3
requirements:
- port:
node: port#node_3_port
relationship: tosca.relationships.BelongsToOne
ip#port_3_sgi_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.250.0/24
description: node_3_sgi_net
requirements:
- interface:
node: interface#port_3_interface
relationship: tosca.relationships.BelongsToOne
ip#port_3_s1u_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.252.0/24
description: node_3_s1u_net
requirements:
- interface:
node: interface#port_3_interface
relationship: tosca.relationships.BelongsToOne
ip#port_3_rru_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.0.251/24
description: node_3_rru_net
requirements:
- interface:
node: interface#port_3_interface
relationship: tosca.relationships.BelongsToOne
# RRU Port
port#rru_port:
type: tosca.nodes.SwitchPort
properties:
portId: 39
requirements:
- switch:
node: switch#leaf_1
relationship: tosca.relationships.BelongsToOne
interface#rru_interface:
type: tosca.nodes.PortInterface
properties:
vlanUntagged: 20
name: rru
requirements:
- port:
node: port#rru_port
relationship: tosca.relationships.BelongsToOne
ip#port_rru_sgi_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.250.0/24
description: rru_sgi_net
requirements:
- interface:
node: interface#rru_interface
relationship: tosca.relationships.BelongsToOne
ip#port_rru_s1u_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.252.0/24
description: rru_s1u_net
requirements:
- interface:
node: interface#rru_interface
relationship: tosca.relationships.BelongsToOne
ip#port_rru_net:
type: tosca.nodes.FabricIpAddress
properties:
ip: 192.168.251.0/24
description: rru_net
requirements:
- interface:
node: interface#rru_interface
relationship: tosca.relationships.BelongsToOne