blob: 12cfe729b15f6b973f0fbe74ac4e0ac462b3db96 [file] [log] [blame]
mcordbef65082017-05-24 16:05:07 -07001---
2# vars/cord-pod.yaml
3# Configures an M-CORD pod
4
5# site configuration
6site_name: mysite
7site_humanname: MySite
8deployment_type: MyDeployment
9
10xos_admin_user: xosadmin@opencord.org
11xos_admin_pass: "{{ lookup('password', 'credentials/xosadmin@opencord.org chars=ascii_letters,digits') }}"
12xos_admin_first: XOS
13xos_admin_last: Admin
14
15xos_users: []
16
17use_vtn: True
18
19xos_tosca_config_templates:
20 - openstack.yaml
21 - vtn-service.yaml
22 - fabric-service.yaml
23 - management-net.yaml
24# - mcord-services.yaml # should unify this with services.yaml.j2 eventually
25# - public-net.yaml
26# - volt-devices.yaml
27# - vrouter.yaml
28
29xos_other_templates:
30 - fabric-network-cfg.json
31
32cord_profile_dir: "{{ ansible_user_dir + '/cord_profile' }}"
33
34xos_docker_volumes:
35 - host: "{{ cord_profile_dir }}/images"
36 container: /opt/xos/images
37
Pingping Lin3d4d8ea2017-06-15 16:24:16 -070038# GUI Config [new GUI]
39gui_project_name: "M-CORD"
40gui_background: "cord-bg.jpg" # TODO find mcord image
41
mcordbef65082017-05-24 16:05:07 -070042# GUI branding [OLD GUI to be removed]
43gui_branding_name: "MCORD"
44gui_branding_icon: "/static/mcord-logo.png"
45gui_branding_favicon: "/static/mcord-favicon.png"
46gui_branding_bg: "/static/mcord-bg.jpg"
47
48enabled_gui_extensions: []
49#enabled_gui_extensions:
50# - name: vtr
51# path: orchestration/xos_services/vtr/xos/gui
52# - name: rcord
53# path: orchestration/profiles/rcord/xos/gui
54
55# paths defined in manifest/default.xml
56xos_services:
57 - name: vtn
58 path: onos-apps/apps/vtn
59 keypair: vsg_rsa
60 synchronizer: true
61 - name: openstack
62 path: orchestration/xos_services/openstack
63 synchronizer: true
64 - name: onos
65 path: orchestration/xos_services/onos-service
66 keypair: onos_rsa
67 synchronizer: true
68 - name: fabric
69 path: orchestration/xos_services/fabric
70 synchronizer: true
71# - name: vBBU
72# path: orchestration/xos_services/vBBU
73# keypair: mcord_rsa
74# synchronizer: true
75# - name: vMME
76# path: orchestration/xos_services/vMME
77# keypair: mcord_rsa
78# synchronizer: true
79# - name: vSGW
80# path: orchestration/xos_services/vSGW
81# keypair: mcord_rsa
82# synchronizer: true
83# - name: vPGWC
84# path: orchestration/xos_services/vPGWC
85# keypair: mcord_rsa
86# synchronizer: true
87# needed onboarding synchronizer doesn't require service code to be present when started
88 - name: exampleservice
89 path: orchestration/xos_services/exampleservice
90 keypair: exampleservice_rsa
91 synchronizer: true
92 - name: monitoring
93 path: orchestration/xos_services/monitoring
94 keypair: monitoringservice_rsa
95 synchronizer: false
96
97xos_service_sshkeys:
98 - name: onos_rsa
99 source_path: "~/.ssh/id_rsa"
100 - name: onos_rsa.pub
101 source_path: "~/.ssh/id_rsa.pub"
102 - name: mcord_rsa
103 source_path: "~/.ssh/id_rsa"
104 - name: mcord_rsa.pub
105 source_path: "~/.ssh/id_rsa.pub"
106# needed onboarding synchronizer doesn't require service code to be present when started
107 - name: exampleservice_rsa
108 source_path: "~/.ssh/id_rsa"
109 - name: exampleservice_rsa.pub
110 source_path: "~/.ssh/id_rsa.pub"
111 - name: monitoringservice_rsa
112 source_path: "~/.ssh/id_rsa"
113 - name: monitoringservice_rsa.pub
114 source_path: "~/.ssh/id_rsa.pub"
115
116# profile_library: "mcord"
117
118# VM networks/bridges on head
119virt_nets:
120 - name: mgmtbr
121 ipv4_prefix: 192.168.122
122 head_vms: true
123
124# site domain suffix
125site_suffix: cord.lab
126
127# resolv.conf settings
128dns_search:
129 - "{{ site_suffix }}"
130
131# SSL server certificate generation
132server_certs:
133 - cn: "keystone.{{ site_suffix }}"
134 subj: "/C=US/ST=California/L=Menlo Park/O=ON.Lab/OU=Test Deployment/CN=keystone.{{ site_suffix }}"
135 altnames:
136 - "DNS:keystone.{{ site_suffix }}"
137 - "DNS:keystone"
138 - cn: "xos-core.{{ site_suffix }}"
139 subj: "/C=US/ST=California/L=Menlo Park/O=ON.Lab/OU=Test Deployment/CN=xos-core.{{ site_suffix }}"
140 altnames:
141 - "DNS:xos-core.{{ site_suffix }}"
142
143# NSD/Unbound settings
144nsd_zones:
145 - name: "{{ site_suffix }}"
146 ipv4_first_octets: 192.168.122
147 name_reverse_unbound: "168.192.in-addr.arpa"
148 soa: ns1
149 ns:
150 - { name: ns1 }
151 nodelist: head_vm_list
152 aliases:
153 - { name: "ns1" , dest: "head" }
154 - { name: "ns" , dest: "head" }
155 - { name: "apt-cache" , dest: "head" }
156
157name_on_public_interface: head
158
159# VTN network configuration
160management_network_cidr: 172.27.0.0/24
161management_network_ip: 172.27.0.1/24
162data_plane_ip: 10.168.0.253/24
163
164# CORD ONOS app version
165cord_app_version: 1.2-SNAPSHOT
166
167# If true, unbound listens on the head node's `ansible_default_ipv4` interface
168unbound_listen_on_default: True
169
170# turn this on, or override it when running the playbook with --extra-vars="on_cloudlab=True"
171on_cloudlab: False
172
173# turn this off, or override when running playbook with --extra-vars="on_maas=False"
174on_maas: True
175
176run_dist_upgrade: False
177
178maas_node_key: /etc/maas/ansible/id_rsa
179
180openstack_version: kilo
181
182juju_config_name: cord
183
184juju_config_path: /usr/local/src/juju_config.yml
185
186# Pull ONOS from local Docker registry rather than Docker Hub
187onos_docker_image: "docker-registry:5000/onosproject/onos:candidate"
188
189# Pull XOS from local Docker registry
190xos_docker_image: "docker-registry:5000/xosproject/xos:candidate"
191
192keystone_admin_password: "{{ lookup('password', 'credentials/cord_keystone_admin chars=ascii_letters,digits') }}"
193
194deployment_flavors:
195 - m1.small
196 - m1.medium
197 - m1.large
198 - m1.xlarge
199
200charm_versions:
201 ceilometer: "cs:trusty/ceilometer-17"
202 ceilometer-agent: "cs:trusty/ceilometer-agent-13"
203 glance: "cs:trusty/glance-28"
204 keystone: "cs:trusty/keystone-33"
205 mongodb: "cs:trusty/mongodb-33"
206 percona-cluster: "cs:trusty/percona-cluster-31"
207 nagios: "cs:trusty/nagios-10"
208 neutron-api: "cs:~cordteam/trusty/neutron-api-5"
209 nova-cloud-controller: "cs:trusty/nova-cloud-controller-64"
210 nova-compute: "cs:~cordteam/trusty/nova-compute-2"
211 nrpe: "cs:trusty/nrpe-4"
212 ntp: "cs:trusty/ntp-14"
213 openstack-dashboard: "cs:trusty/openstack-dashboard-19"
214 rabbitmq-server: "cs:trusty/rabbitmq-server-42"
215
216head_vm_list: []
217
218head_lxd_list:
219 - name: "juju-1"
220 service: "juju"
221 aliases:
222 - "juju"
223 ipv4_last_octet: 10
224
225 - name: "ceilometer-1"
226 service: "ceilometer"
227 aliases:
228 - "ceilometer"
229 ipv4_last_octet: 20
230 forwarded_ports:
231 - { ext: 8777, int: 8777 }
232
233 - name: "glance-1"
234 service: "glance"
235 aliases:
236 - "glance"
237 ipv4_last_octet: 30
238 forwarded_ports:
239 - { ext: 9292, int: 9292 }
240
241 - name: "keystone-1"
242 service: "keystone"
243 aliases:
244 - "keystone"
245 ipv4_last_octet: 40
246 forwarded_ports:
247 - { ext: 35357, int: 35357 }
248 - { ext: 4990, int: 4990 }
249 - { ext: 5000, int: 5000 }
250
251 - name: "percona-cluster-1"
252 service: "percona-cluster"
253 aliases:
254 - "percona-cluster"
255 ipv4_last_octet: 50
256
257 - name: "nagios-1"
258 service: "nagios"
259 aliases:
260 - "nagios"
261 ipv4_last_octet: 60
262 forwarded_ports:
263 - { ext: 3128, int: 80 }
264
265 - name: "neutron-api-1"
266 service: "neutron-api"
267 aliases:
268 - "neutron-api"
269 ipv4_last_octet: 70
270 forwarded_ports:
271 - { ext: 9696, int: 9696 }
272
273 - name: "nova-cloud-controller-1"
274 service: "nova-cloud-controller"
275 aliases:
276 - "nova-cloud-controller"
277 ipv4_last_octet: 80
278 forwarded_ports:
279 - { ext: 8774, int: 8774 }
280
281 - name: "openstack-dashboard-1"
282 service: "openstack-dashboard"
283 aliases:
284 - "openstack-dashboard"
285 ipv4_last_octet: 90
286 forwarded_ports:
287 - { ext: 8080, int: 80 }
288
289 - name: "rabbitmq-server-1"
290 service: "rabbitmq-server"
291 aliases:
292 - "rabbitmq-server"
293 ipv4_last_octet: 100
294
295 - name: "mongodb-1"
296 service: "mongodb"
297 aliases:
298 - "mongodb"
299 ipv4_last_octet: 110
300
301lxd_service_list:
302 - ceilometer
303 - glance
304 - keystone
305 - mongodb
306 - nagios
307 - neutron-api
308 - nova-cloud-controller
309 - openstack-dashboard
310 - percona-cluster
311 - rabbitmq-server
312
313standalone_service_list:
314 - ntp
315 - nrpe
316 - ceilometer-agent
317
318
319service_relations:
320 - name: keystone
321 relations: [ "percona-cluster", "nrpe", ]
322
323 - name: nova-cloud-controller
324 relations: [ "percona-cluster", "rabbitmq-server", "glance", "keystone", "nrpe", ]
325
326 - name: glance
327 relations: [ "percona-cluster", "keystone", "nrpe", ]
328
329 - name: neutron-api
330 relations: [ "keystone", "percona-cluster", "rabbitmq-server", "nova-cloud-controller", "nrpe", ]
331
332 - name: openstack-dashboard
333 relations: [ "keystone", "nrpe", ]
334
335 - name: nagios
336 relations: [ "nrpe", ]
337
338 - name: "percona-cluster:juju-info"
339 relations: [ "nrpe:general-info", ]
340
341 - name: rabbitmq-server
342 relations: [ "nrpe", ]
343
344 - name: ceilometer
345 relations: [ "mongodb", "rabbitmq-server", "nagios", "nrpe", ]
346
347 - name: "ceilometer:identity-service"
348 relations: [ "keystone:identity-service", ]
349
350 - name: "ceilometer:ceilometer-service"
351 relations: [ "ceilometer-agent:ceilometer-service", ]
352
353
354compute_relations:
355 - name: nova-compute
356 relations: [ "ceilometer-agent", "glance", "nova-cloud-controller", "nagios", "nrpe", ]
357
358 - name: "nova-compute:shared-db"
359 relations: [ "percona-cluster:shared-db", ]
360
361 - name: "nova-compute:amqp"
362 relations: [ "rabbitmq-server:amqp", ]
363
364 - name: ntp
365 relations: [ "nova-compute", ]
366
367
368xos_images:
369 - name: "trusty-server-multi-nic"
370 url: "http://www.vicci.org/opencloud/trusty-server-cloudimg-amd64-disk1.img.20170201"
371 checksum: "sha256:ebf007ba3ec1043b7cd011fc6668e2a1d1d4c69c41071e8513ab355df7a057cb"
372
Pingping Line3b18f42017-07-11 15:03:54 -0700373 # How to add local image and dynamically load it into existing XOS
374 # add your private image such as mcord-local-image-name.img to /opt/iamges/ on 'corddev' VM inside cord in a box
375 # uncomment the code blow,and run those two commands:
376 # on corddev VM: vagrant@corddev:/cord/build$ ./gradlew -PdeployConfig=config/mcord_in_a_box.yml PIcreateProfile
377 # on prod VM: compute-node-refresh
378
379 #- name: "mcord-local-image-name"
380 # url: "file://localhost/opt/images/mcord-local-image-name.img"
381 # checksum: "sha256:ebf007ba3ec1043b7cd011fc6668e2a1d1d4c69c41071e8513ab355df7a057cb"
382
mcordbef65082017-05-24 16:05:07 -0700383 - name: "vsg-1.1"
384 url: "http://www.vicci.org/cord/vsg-1.1.img"
385 checksum: "sha256:16b0beb6778aed0f5feecb05f8d5750e6c262f98e6011e99ddadf7d46a177b6f"
386
387 - name: "ceilometer-trusty-server-multi-nic"
388 url: "http://www.vicci.org/cord/ceilometer-trusty-server-multi-nic.compressed.qcow2"
389 checksum: "sha256:b77ef8d692b640568dea13df99fe1dfcb1f4bb4ac05408db9ff77399b34f754f"
390
391 - name: "ceilometer-service-trusty-server-multi-nic"
392 url: "http://www.vicci.org/cord/ceilometer-service-trusty-server-multi-nic.compressed.qcow2.20170131"
393 checksum: "sha256:f0341e283f0f2cb8f70cd1a6347e0081c9c8492ef34eb6397c657ef824800d4f"