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