blob: 089837dfd94d330023021d6d147e1e2e3981bd62 [file] [log] [blame]
Scott Baker50421662016-06-27 22:09:48 -07001tosca_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 kind:
20 type: string
21 default: generic
22 description: Type of service.
23 view_url:
24 type: string
25 required: false
26 description: URL to follow when icon is clicked in the Service Directory.
27 icon_url:
28 type: string
29 required: false
30 description: ICON to display in the Service Directory.
31 enabled:
32 type: boolean
33 default: true
34 published:
35 type: boolean
36 default: true
37 description: If True then display this Service in the Service Directory.
38 public_key:
39 type: string
40 required: false
41 description: Public key to install into Instances to allows Services to SSH into them.
42 private_key_fn:
43 type: string
44 required: false
45 description: Location of private key file
46 versionNumber:
47 type: string
48 required: false
49 description: Version number of Service.
50 sflow_port:
51 type: integer
52 required: false
53 default: 6343
54 description: sFlow listening port
55 sflow_api_port:
56 type: integer
57 required: false
58 default: 33333
59 description: sFlow publish subscribe api listening port
60
61 tosca.nodes.CeilometerService:
62 derived_from: tosca.nodes.Root
63 description: >
64 XOS Ceilometer Service
65 capabilities:
66 scalable:
67 type: tosca.capabilities.Scalable
68 service:
69 type: tosca.capabilities.xos.Service
70 properties:
71 kind:
72 type: string
73 default: generic
74 description: Type of service.
75 view_url:
76 type: string
77 required: false
78 description: URL to follow when icon is clicked in the Service Directory.
79 icon_url:
80 type: string
81 required: false
82 description: ICON to display in the Service Directory.
83 enabled:
84 type: boolean
85 default: true
86 published:
87 type: boolean
88 default: true
89 description: If True then display this Service in the Service Directory.
90 public_key:
91 type: string
92 required: false
93 description: Public key to install into Instances to allows Services to SSH into them.
94 private_key_fn:
95 type: string
96 required: false
97 description: Location of private key file
98 versionNumber:
99 type: string
100 required: false
101 description: Version number of Service.
102 ceilometer_pub_sub_url:
103 type: string
104 required: false
105 description: REST URL of ceilometer PUB/SUB component
106
107 tosca.nodes.CeilometerTenant:
108 derived_from: tosca.nodes.Root
109 description: >
110 CORD: A Tenant of the Ceilometer Service.
111 properties:
112 kind:
113 type: string
114 default: generic
115 description: Kind of tenant
116
117topology_template:
118 node_templates:
119 service_ceilometer:
120 type: tosca.nodes.CeilometerService
121 requirements:
122 properties:
123 view_url: /admin/ceilometer/ceilometerservice/$id$/
124 kind: ceilometer
125 ceilometer_pub_sub_url: http://130.127.133.58:4455/
126 public_key: { get_artifact: [ SELF, pubkey, LOCAL_FILE] }
127 artifacts:
128 pubkey: /opt/xos/synchronizers/monitoring_channel/monitoring_channel_public_key
129
130 service_sflow:
131 type: tosca.nodes.SFlowService
132 requirements:
133 properties:
134 view_url: /admin/ceilometer/sflowservice/$id$/
135 kind: sflow
136 sflow_port: 6343
137 sflow_api_port: 33333
138
139 Private:
140 type: tosca.nodes.NetworkTemplate
141#
142# ceilometer_network:
143# type: tosca.nodes.network.Network.XOS
144# properties:
145# ip_version: 4
146# labels: ceilometer_client_access
147# requirements:
148# - network_template:
149# node: Private
150# relationship: tosca.relationships.UsesNetworkTemplate
151# - owner:
152# node: mysite_ceilometer
153# relationship: tosca.relationships.MemberOfSlice
154# - connection:
155# node: mysite_ceilometer
156# relationship: tosca.relationships.ConnectsToSlice
157
158 mysite:
159 type: tosca.nodes.Site
160
161 trusty-server-multi-nic:
162 type: tosca.nodes.Image
163
164 ceilometer-trusty-server-multi-nic:
165 type: tosca.nodes.Image
166
167 m1.small:
168 type: tosca.nodes.Flavor
169
170 mysite_ceilometer:
171 description: Ceilometer Proxy Slice
172 type: tosca.nodes.Slice
173 requirements:
174 - ceilometer_service:
175 node: service_ceilometer
176 relationship: tosca.relationships.MemberOfService
177 - site:
178 node: mysite
179 relationship: tosca.relationships.MemberOfSite
180 - default_image:
181 node: ceilometer-trusty-server-multi-nic
182 relationship: tosca.relationships.DefaultImage
183 - m1.small:
184 node: m1.small
185 relationship: tosca.relationships.DefaultFlavor
186 properties:
187 max_instances: 2
188
189 mysite_sflow:
190 description: Slice for sFlow service
191 type: tosca.nodes.Slice
192 requirements:
193 - sflow_service:
194 node: service_sflow
195 relationship: tosca.relationships.MemberOfService
196 - site:
197 node: mysite
198 relationship: tosca.relationships.MemberOfSite
199 - default_image:
200 node: trusty-server-multi-nic
201 relationship: tosca.relationships.DefaultImage
202 - m1.small:
203 node: m1.small
204 relationship: tosca.relationships.DefaultFlavor
205 properties:
206 max_instances: 2
207
208 my_ceilometer_tenant:
209 description: Ceilometer Service default Tenant
210 type: tosca.nodes.CeilometerTenant
211 requirements:
212 - provider_service:
213 node: service_ceilometer
214 relationship: tosca.relationships.MemberOfService
215
216 # Virtual machines
217 sflow_service_instance:
218 type: tosca.nodes.Compute
219 capabilities:
220 # Host container properties
221 host:
222 properties:
223 num_cpus: 1
224 disk_size: 10 GB
225 mem_size: 4 MB
226 # Guest Operating System properties
227 os:
228 properties:
229 # host Operating System image properties
230 architecture: x86_64
231 type: linux
232 distribution: Ubuntu
233 version: 14.10
234 requirements:
235 - slice:
236 node: mysite_sflow
237 relationship: tosca.relationships.MemberOfSlice
238
239 Ceilometer:
240 type: tosca.nodes.DashboardView
241 properties:
242 url: template:xosCeilometerDashboard
243 Tenant:
244 type: tosca.nodes.DashboardView
245 properties:
246 no-create: true
247 no-update: true
248 no-delete: true
249
250 padmin@vicci.org:
251 type: tosca.nodes.User
252 properties:
253 firstname: XOS
254 lastname: admin
255 is_admin: true
256 requirements:
257 - tenant_dashboard:
258 node: Tenant
259 relationship: tosca.relationships.UsesDashboard
260 - ceilometer_dashboard:
261 node: Ceilometer
262 relationship: tosca.relationships.UsesDashboard