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