blob: 2dc088d23fde22ebe9ffb0e628a59cd1466452ab [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
53 service#vtr:
54 type: tosca.nodes.Service
55 properties:
56 view_url: /admin/vtr/vtrservice/$id$/
57 kind: vTR
58 replaces: service_vtr
59
60 addresses_veg:
61 type: tosca.nodes.AddressPool
62 properties:
63 addresses: 10.6.1.128/26
64 gateway_ip: 10.6.1.129
65 gateway_mac: 02:42:0a:06:01:01
66
67 addresses_public:
68 type: tosca.nodes.AddressPool
69 properties:
70 addresses: 10.6.1.192/26
71 gateway_ip: 10.6.1.193
72 gateway_mac: 02:42:0a:06:01:01
73
74 label_veg:
75 type: tosca.nodes.NodeLabel
76
77 service#veg:
78 type: tosca.nodes.VEGService
79 requirements:
80 - vrouter_tenant:
81 node: service#vrouter
82 relationship: tosca.relationships.TenantOfService
83 properties:
84 view_url: /admin/vEG/vegservice/$id$/
85 backend_network_label: hpc_client
86 public_key: { get_artifact: [ SELF, pubkey, LOCAL_FILE] }
87 private_key_fn: /opt/xos/services/veg/keys/veg_rsa
88# node_label: label_veg
89 replaces: service_veg
90 artifacts:
91 pubkey: /opt/xos/services/veg/keys/veg_rsa.pub
92
93 service#vrouter:
94 type: tosca.nodes.VRouterService
95 properties:
96 view_url: /admin/vrouter/vrouterservice/$id$/
97 replaces: service_vrouter
98 requirements:
99 - addresses_veg:
100 node: addresses_veg
101 relationship: tosca.relationships.ProvidesAddresses
102 - addresses_public:
103 node: addresses_public
104 relationship: tosca.relationships.ProvidesAddresses
105
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
119 template#veg:
120 type: tosca.nodes.NetworkTemplate
121 properties:
122 visibility: private
123 translation: none
124 vtn_kind: VEG
125
126 # Networks required by the CORD setup
127 {{ site_name }}_veg-access:
128 type: tosca.nodes.network.Network
129 properties:
130 ip_version: 4
131 requirements:
132 - network_template:
133 node: template#veg
134 relationship: tosca.relationships.UsesNetworkTemplate
135 - owner:
136 node: {{ site_name }}_veg
137 relationship: tosca.relationships.MemberOfSlice
138 - connection:
139 node: {{ site_name }}_veg
140 relationship: tosca.relationships.ConnectsToSlice
141
142 # CORD Slices
143 {{ site_name }}_veg:
144 description: vEG Controller Slice
145 type: tosca.nodes.Slice
146 properties:
147 network: noauto
148 requirements:
149 - veg_service:
150 node: service#veg
151 relationship: tosca.relationships.MemberOfService
152 - site:
153 node: {{ site_name }}
154 relationship: tosca.relationships.MemberOfSite
155 - management:
156 node: management
157 relationship: tosca.relationships.ConnectsToNetwork
158{% if use_management_hosts %}
159 - management_hosts:
160 node: management_hosts
161 relationship: tosca.relationships.ConnectsToNetwork
162{% endif %}
163 - image:
Andrea Campanella0a34e232017-02-23 17:20:04 +0100164 node: image#vsg-1.1
Andrea Campanellabcfb2d62017-02-15 09:37:35 -0800165 relationship: tosca.relationships.DefaultImage
166