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