blob: e8b69a0e42f92ce94a87b5c6a5550f6b7e13f57d [file] [log] [blame]
Andrea Campanellabcfb2d62017-02-15 09:37:35 -08001tosca_definitions_version: tosca_simple_yaml_1_0
2
3description: Just enough Tosca to get the vEG slice running on the CORD POD, created by platform-install
4
5imports:
6 - custom_types/xos.yaml
7 - custom_types/veg.yaml
8
9topology_template:
10 node_templates:
11
12# site, image, fully created in deployment.yaml
13 {{ site_name }}:
14 type: tosca.nodes.Site
15
Andrea Campanella0a34e232017-02-23 17:20:04 +010016 image#vsg-1.1:
Andrea Campanellabcfb2d62017-02-15 09:37:35 -080017 type: tosca.nodes.Image
18
19# management networks, fully created in management-net.yaml
20 management:
21 type: tosca.nodes.network.Network.XOS
22 properties:
23 no-create: true
24 no-delete: true
25 no-update: true
26
27{% if use_management_hosts %}
28 management_hosts:
29 type: tosca.nodes.network.Network.XOS
30 properties:
31 no-create: true
32 no-delete: true
33 no-update: true
34{% endif %}
35
36# ONOS_CORD, fully created in vtn.yaml
37 service#ONOS_CORD:
38 type: tosca.nodes.ONOSService
39 properties:
40 no-delete: true
41 no-create: true
42 no-update: true
43
44# ONOS_Fabric, fully created in fabric.yaml
45 service#ONOS_Fabric:
46 type: tosca.nodes.ONOSService
47 properties:
48 no-delete: true
49 no-create: true
50 no-update: true
51
52# CORD Services
Andrea Campanellabcfb2d62017-02-15 09:37:35 -080053 addresses_veg:
54 type: tosca.nodes.AddressPool
55 properties:
56 addresses: 10.6.1.128/26
57 gateway_ip: 10.6.1.129
58 gateway_mac: 02:42:0a:06:01:01
59
60 addresses_public:
61 type: tosca.nodes.AddressPool
62 properties:
63 addresses: 10.6.1.192/26
64 gateway_ip: 10.6.1.193
65 gateway_mac: 02:42:0a:06:01:01
66
67 label_veg:
68 type: tosca.nodes.NodeLabel
69
70 service#veg:
71 type: tosca.nodes.VEGService
72 requirements:
73 - vrouter_tenant:
74 node: service#vrouter
75 relationship: tosca.relationships.TenantOfService
76 properties:
77 view_url: /admin/vEG/vegservice/$id$/
78 backend_network_label: hpc_client
79 public_key: { get_artifact: [ SELF, pubkey, LOCAL_FILE] }
80 private_key_fn: /opt/xos/services/veg/keys/veg_rsa
81# node_label: label_veg
82 replaces: service_veg
83 artifacts:
84 pubkey: /opt/xos/services/veg/keys/veg_rsa.pub
85
86 service#vrouter:
87 type: tosca.nodes.VRouterService
88 properties:
89 view_url: /admin/vrouter/vrouterservice/$id$/
90 replaces: service_vrouter
91 requirements:
92 - addresses_veg:
93 node: addresses_veg
94 relationship: tosca.relationships.ProvidesAddresses
95 - addresses_public:
96 node: addresses_public
97 relationship: tosca.relationships.ProvidesAddresses
98
99 vRouter_ONOS_app:
100 type: tosca.nodes.ONOSvRouterApp
101 requirements:
102 - onos_tenant:
103 node: service#ONOS_Fabric
104 relationship: tosca.relationships.TenantOfService
105 - vrouter_service:
106 node: service#vrouter
107 relationship: tosca.relationships.UsedByService
108 properties:
109 dependencies: org.onosproject.vrouter
110 autogenerate: vrouter-network-cfg
111
112 template#veg:
113 type: tosca.nodes.NetworkTemplate
114 properties:
115 visibility: private
116 translation: none
117 vtn_kind: VEG
118
119 # Networks required by the CORD setup
120 {{ site_name }}_veg-access:
121 type: tosca.nodes.network.Network
122 properties:
123 ip_version: 4
124 requirements:
125 - network_template:
126 node: template#veg
127 relationship: tosca.relationships.UsesNetworkTemplate
128 - owner:
129 node: {{ site_name }}_veg
130 relationship: tosca.relationships.MemberOfSlice
131 - connection:
132 node: {{ site_name }}_veg
133 relationship: tosca.relationships.ConnectsToSlice
134
135 # CORD Slices
136 {{ site_name }}_veg:
137 description: vEG Controller Slice
138 type: tosca.nodes.Slice
139 properties:
140 network: noauto
141 requirements:
142 - veg_service:
143 node: service#veg
144 relationship: tosca.relationships.MemberOfService
145 - site:
146 node: {{ site_name }}
147 relationship: tosca.relationships.MemberOfSite
148 - management:
149 node: management
150 relationship: tosca.relationships.ConnectsToNetwork
151{% if use_management_hosts %}
152 - management_hosts:
153 node: management_hosts
154 relationship: tosca.relationships.ConnectsToNetwork
155{% endif %}
156 - image:
Andrea Campanella0a34e232017-02-23 17:20:04 +0100157 node: image#vsg-1.1
Andrea Campanellabcfb2d62017-02-15 09:37:35 -0800158 relationship: tosca.relationships.DefaultImage
159