blob: 603ac09656cae7dabf90d598fb9826c6a34ae573 [file] [log] [blame]
Pingping Linc5bf2e52016-10-05 01:50:08 +00001tosca_definitions_version: tosca_simple_yaml_1_0
2
3description: Setup CORD-related services -- vOLT, vCPE, vBNG.
4
5imports:
6 - custom_types/xos.yaml
7
8node_types:
9 tosca.nodes.SFlowService:
10 derived_from: tosca.nodes.Root
11 description: >
12 XOS SFlow Collection Service
13 capabilities:
14 scalable:
15 type: tosca.capabilities.Scalable
16 service:
17 type: tosca.capabilities.xos.Service
18 properties:
19 no-delete:
20 type: boolean
21 default: false
22 description: Do not allow Tosca to delete this object
23 no-create:
24 type: boolean
25 default: false
26 description: Do not allow Tosca to create this object
27 no-update:
28 type: boolean
29 default: false
30 description: Do not allow Tosca to update this object
31 kind:
32 type: string
33 default: generic
34 description: Type of service.
35 view_url:
36 type: string
37 required: false
38 description: URL to follow when icon is clicked in the Service Directory.
39 icon_url:
40 type: string
41 required: false
42 description: ICON to display in the Service Directory.
43 enabled:
44 type: boolean
45 default: true
46 published:
47 type: boolean
48 default: true
49 description: If True then display this Service in the Service Directory.
50 public_key:
51 type: string
52 required: false
53 description: Public key to install into Instances to allows Services to SSH into them.
54 private_key_fn:
55 type: string
56 required: false
57 description: Location of private key file
58 versionNumber:
59 type: string
60 required: false
61 description: Version number of Service.
62 sflow_port:
63 type: integer
64 required: false
65 default: 6343
66 description: sFlow listening port
67 sflow_api_port:
68 type: integer
69 required: false
70 default: 33333
71 description: sFlow publish subscribe api listening port
72
73 tosca.nodes.CeilometerService:
74 derived_from: tosca.nodes.Root
75 description: >
76 XOS Ceilometer Service
77 capabilities:
78 scalable:
79 type: tosca.capabilities.Scalable
80 service:
81 type: tosca.capabilities.xos.Service
82 properties:
83 no-delete:
84 type: boolean
85 default: false
86 description: Do not allow Tosca to delete this object
87 no-create:
88 type: boolean
89 default: false
90 description: Do not allow Tosca to create this object
91 no-update:
92 type: boolean
93 default: false
94 description: Do not allow Tosca to update this object
95 kind:
96 type: string
97 default: generic
98 description: Type of service.
99 view_url:
100 type: string
101 required: false
102 description: URL to follow when icon is clicked in the Service Directory.
103 icon_url:
104 type: string
105 required: false
106 description: ICON to display in the Service Directory.
107 enabled:
108 type: boolean
109 default: true
110 published:
111 type: boolean
112 default: true
113 description: If True then display this Service in the Service Directory.
114 public_key:
115 type: string
116 required: false
117 description: Public key to install into Instances to allows Services to SSH into them.
118 private_key_fn:
119 type: string
120 required: false
121 description: Location of private key file
122 versionNumber:
123 type: string
124 required: false
125 description: Version number of Service.
126 ceilometer_pub_sub_url:
127 type: string
128 required: false
129 description: REST URL of ceilometer PUB/SUB component
130
131 tosca.nodes.CeilometerTenant:
132 derived_from: tosca.nodes.Root
133 description: >
134 CORD: A Tenant of the Ceilometer Service.
135 properties:
136 kind:
137 type: string
138 default: generic
139 description: Kind of tenant
140
141topology_template:
142 node_templates:
143 service_ceilometer:
144 type: tosca.nodes.CeilometerService
145 requirements:
146 properties:
147 view_url: /admin/monitoring/ceilometerservice/$id$/
148 kind: ceilometer
149 ceilometer_pub_sub_url: http://10.11.10.1:4455/
150 public_key: { get_artifact: [ SELF, pubkey, LOCAL_FILE] }
151 private_key_fn: /opt/xos/services/monitoring/keys/monitoringservice_rsa
152 artifacts:
153 pubkey: /opt/xos/services/monitoring/keys/monitoringservice_rsa.pub
154
155# service_sflow:
156# type: tosca.nodes.SFlowService
157# requirements:
158# properties:
159# view_url: /admin/monitoring/sflowservice/$id$/
160# kind: sflow
161# sflow_port: 6343
162# sflow_api_port: 33333
163
164 Private:
165 type: tosca.nodes.NetworkTemplate
166
167 management:
168 type: tosca.nodes.network.Network.XOS
169 properties:
170 no-create: true
171 no-delete: true
172 no-update: true
173
174# ceilometer_network:
175# type: tosca.nodes.network.Network.XOS
176# properties:
177# ip_version: 4
178# labels: ceilometer_client_access
179# requirements:
180# - network_template:
181# node: Private
182# relationship: tosca.relationships.UsesNetworkTemplate
183# - owner:
184# node: mysite_ceilometer
185# relationship: tosca.relationships.MemberOfSlice
186# - connection:
187# node: mysite_ceilometer
188# relationship: tosca.relationships.ConnectsToSlice
189
190 mysite:
191 type: tosca.nodes.Site
192
193 trusty-server-multi-nic:
194 type: tosca.nodes.Image
195
196 ceilometer-trusty-server-multi-nic:
197 type: tosca.nodes.Image
198
199 ceilometer-service-trusty-server-multi-nic:
200 type: tosca.nodes.Image
201
202 m1.small:
203 type: tosca.nodes.Flavor
204
205 mysite_ceilometer:
206 description: Ceilometer Proxy Slice
207 type: tosca.nodes.Slice
208 requirements:
209 - ceilometer_service:
210 node: service_ceilometer
211 relationship: tosca.relationships.MemberOfService
212 - site:
213 node: mysite
214 relationship: tosca.relationships.MemberOfSite
215 - default_image:
216 node: ceilometer-trusty-server-multi-nic
217 relationship: tosca.relationships.DefaultImage
218 - management:
219 node: management
220 relationship: tosca.relationships.ConnectsToNetwork
221 - m1.small:
222 node: m1.small
223 relationship: tosca.relationships.DefaultFlavor
224 properties:
225 default_node: nova-compute-1
226
227 # Virtual machines
228 ceilometer_service_instance:
229 type: tosca.nodes.Compute
230 capabilities:
231 # Host container properties
232 host:
233 properties:
234 num_cpus: 1
235 disk_size: 20 GB
236 mem_size: 2 GB
237 requirements:
238 - slice:
239 node: mysite_ceilometer
240 relationship: tosca.relationships.MemberOfSlice
241 - image:
242 node: ceilometer-service-trusty-server-multi-nic
243 relationship: tosca.relationships.UsesImage
244
245# mysite_sflow:
246# description: Slice for sFlow service
247# type: tosca.nodes.Slice
248# requirements:
249# - sflow_service:
250# node: service_sflow
251# relationship: tosca.relationships.MemberOfService
252# - site:
253# node: mysite
254# relationship: tosca.relationships.MemberOfSite
255
256# MOVING this section to monitoringtenant.yaml
257# my_ceilometer_tenant:
258# description: Ceilometer Service default Tenant
259# type: tosca.nodes.CeilometerTenant
260# requirements:
261# - provider_service:
262# node: service_ceilometer
263# relationship: tosca.relationships.MemberOfService
264# - dependency:
265# node: ceilometer_service_instance
266# relationship: tosca.relationships.DependsOn
267
268 # Virtual machines
269# sflow_service_instance:
270# type: tosca.nodes.Compute
271# capabilities:
272# # Host container properties
273# host:
274# properties:
275# num_cpus: 1
276# disk_size: 10 GB
277# mem_size: 4 MB
278# # Guest Operating System properties
279# os:
280# properties:
281# # host Operating System image properties
282# architecture: x86_64
283# type: linux
284# distribution: Ubuntu
285# version: 14.10
286# requirements:
287# - slice:
288# node: mysite_sflow
289# relationship: tosca.relationships.MemberOfSlice
290
291# MOVING the below sections to monitoringtenant.yaml
292# Ceilometer:
293# type: tosca.nodes.DashboardView
294# properties:
295# url: template:xosCeilometerDashboard
296# Tenant:
297# type: tosca.nodes.DashboardView
298# properties:
299# no-create: true
300# no-update: true
301# no-delete: true
302#
303# padmin@vicci.org:
304# type: tosca.nodes.User
305# properties:
306# firstname: XOS
307# lastname: admin
308# is_admin: true
309# requirements:
310# - tenant_dashboard:
311# node: Tenant
312# relationship: tosca.relationships.UsesDashboard
313# - ceilometer_dashboard:
314# node: Ceilometer
315# relationship: tosca.relationships.UsesDashboard