modfied to include the os qualified domain name for public API.
[joid.git] / ci / odl / juju-deployer / ovs-odl-ha.yaml
1 # vim: set ts=2 et:
2 trusty-mitaka-nodes:
3   inherits: openstack-phase1
4
5 trusty-mitaka:
6   inherits: openstack-phase2
7   overrides:
8     #os-data-network: 10.4.8.0/21
9     #ceph-cluster-network: 10.4.0.0/21
10     #prefer-ipv6: true
11     #enable-dvr: true
12     #l2-population: true
13     region: Canonical
14     #source: "cloud:trusty-mitaka"
15     openstack-origin: "cloud:trusty-mitaka"
16     #ceph-osd-replication-count: 2
17     admin-role: admin
18     keystone-admin-role: admin
19
20 openstack-phase1:
21   services:
22     nodes:
23       charm: "cs:trusty/ubuntu"
24       num_units: 5
25     ntp:
26       charm: "local:trusty/ntp"
27   relations:
28     - - "ntp:juju-info"
29       - "nodes:juju-info"
30
31 openstack-phase2:
32   inherits: openstack-phase1
33   relations:
34     - - "mysql:ha"
35       - "hacluster-mysql:ha"
36     - - "glance:ha"
37       - "hacluster-glance:ha"
38     - - "keystone:ha"
39       - "hacluster-keystone:ha"
40     - - "neutron-api:ha"
41       - "hacluster-neutron:ha"
42     - - "nova-cloud-controller:ha"
43       - "hacluster-nova:ha"
44     - - "openstack-dashboard:ha"
45       - "hacluster-horizon:ha"
46     - - "ceilometer:ha"
47       - "hacluster-ceilometer:ha"
48     - - "cinder:ha"
49       - "hacluster-cinder:ha"
50     - - "heat:ha"
51       - "hacluster-heat:ha"
52 #    - - "ceph-radosgw:ha"
53 #      - "hacluster-ceph-radosgw:ha"
54     - - "neutron-api:neutron-plugin-api-subordinate"
55       - "neutron-api-odl:neutron-plugin-api-subordinate"
56     - - "nova-compute:neutron-plugin"
57       - "openvswitch-odl:neutron-plugin"
58     - - "neutron-gateway"
59       - "openvswitch-odl"
60     - - "openvswitch-odl:ovsdb-manager"
61       - "odl-controller:ovsdb-manager"
62     - - "neutron-api-odl:odl-controller"
63       - "odl-controller:controller-api"
64     - - "keystone:shared-db"
65       - "mysql:shared-db"
66     - - "nova-cloud-controller:shared-db"
67       - "mysql:shared-db"
68     - - "nova-cloud-controller:amqp"
69       - "rabbitmq-server:amqp"
70     - - "nova-cloud-controller:image-service"
71       - "glance:image-service"
72     - - "nova-cloud-controller:identity-service"
73       - "keystone:identity-service"
74     - - "nova-cloud-controller:cloud-compute"
75       - "nova-compute:cloud-compute"
76     - - "nova-compute:amqp"
77       - "rabbitmq-server:amqp"
78     - - "nova-compute:image-service"
79       - "glance:image-service"
80     - - "glance:shared-db"
81       - "mysql:shared-db"
82     - - "glance:identity-service"
83       - "keystone:identity-service"
84     - - "glance:amqp"
85       - "rabbitmq-server:amqp"
86     - - "openstack-dashboard:identity-service"
87       - "keystone:identity-service"
88     - - "neutron-api:shared-db"
89       - "mysql:shared-db"
90     - - "neutron-api:amqp"
91       - "rabbitmq-server:amqp"
92     - - "nova-cloud-controller:neutron-api"
93       - "neutron-api:neutron-api"
94     - - "neutron-api:identity-service"
95       - "keystone:identity-service"
96     - - "neutron-gateway:amqp"
97       - "rabbitmq-server:amqp"
98     - - "neutron-gateway:neutron-plugin-api"
99       - "neutron-api:neutron-plugin-api"
100     - - "nova-cloud-controller:quantum-network-service"
101       - "neutron-gateway:quantum-network-service"
102     - - "ceilometer:amqp"
103       - "rabbitmq-server:amqp"
104     - - "ceilometer-agent:ceilometer-service"
105       - "ceilometer:ceilometer-service"
106     - - "ceilometer:identity-service"
107       - "keystone:identity-service"
108     - - "ceilometer:identity-notifications"
109       - "keystone:identity-notifications"
110     - - "ceilometer-agent:nova-ceilometer"
111       - "nova-compute:nova-ceilometer"
112     - - "ceilometer:shared-db"
113       - "mongodb:database"
114     - - "heat:shared-db"
115       - "mysql:shared-db"
116     - - "heat:identity-service"
117       - "keystone:identity-service"
118     - - "heat:amqp"
119       - "rabbitmq-server:amqp"
120     - - "cinder:image-service"
121       - "glance:image-service"
122     - - "cinder:amqp"
123       - "rabbitmq-server:amqp"
124     - - "cinder:identity-service"
125       - "keystone:identity-service"
126     - - "cinder:cinder-volume-service"
127       - "nova-cloud-controller:cinder-volume-service"
128     - - "cinder-ceph:storage-backend"
129       - "cinder:storage-backend"
130     - - "ceph:client"
131       - "nova-compute:ceph"
132     - - "cinder:shared-db"
133       - "mysql:shared-db"
134     - - "ceph:client"
135       - "cinder-ceph:ceph"
136     - - "ceph:client"
137       - "glance:ceph"
138     - - "ceph-osd:mon"
139       - "ceph:osd"
140     - - "ceph-radosgw:mon"
141       - "ceph:radosgw"
142     - - "ceph-radosgw:identity-service"
143       - "keystone:identity-service"
144     #- - nova-compute:lxd
145       #- lxd:lxd
146     - - congress:shared-db
147       - mysql:shared-db
148     - - congress:identity-service
149       - keystone:identity-service
150     - - congress:amqp
151       - rabbitmq-server:amqp
152   services:
153     hacluster-keystone:
154       charm: "local:trusty/hacluster"
155       options:
156         corosync_transport: unicast
157         corosync_key: |
158           'QisjNpoKHLkvyc3PEdDHP5VZjgD0kOk9t0ABPWmCELlu5AgWgnW6bJd34BVXO7VhW+3ZwNQM3W+bZ3pl28ftY4ki4N/S0KLFNia5egFgiA3AH2QXLnokS7OYXuu6GMJJ1S5mDe6P5zU+tfJe/Mebq24u7CgR0gAvohSPRdDTwdY='
159     hacluster-cinder:
160       charm: "local:trusty/hacluster"
161       options:
162         corosync_transport: unicast
163         corosync_key: |
164           'cc6n5Zv6M2mQ2mUhTx/aKoImQ7q77pKDdkSwBUG5VqoSb23SxnGUsAxH5E8lOeCZ84EURzS71FEb8F9P5YY+2deh0+tdXukoKTugdVmJfarahPpWpEEZRRCigUngdFw/479FOcFCkN1SJtQNqWi1ACYSn1/GRoQ2vP+2byrkV6E='
165     hacluster-heat:
166       charm: "local:trusty/hacluster"
167       options:
168         corosync_transport: unicast
169         corosync_key: |
170           'tNeFXmOqzytRq7loxLMDaaMqZZXjC7BNfMbcKxSNeIPyBj4lkJwHZyuV7mo0ogzcfVJqLBHBULai+ed9uyWCZJxLXoi+WwTj5AqcXfxfSo9vLCthukJJ4zuKvzeGibZRszwINf32RW9jtXSCPosv8a+9MSg49KD1c9fS20aEuIM='
171     hacluster-horizon:
172       charm: "local:trusty/hacluster"
173       options:
174         corosync_transport: unicast
175         corosync_key: |
176           'aCVPHw6XYne+Hxv0WPiM3+yEfeIxs0Ly0EMKB494Rdzjf5rE52GcXqqxuvIa/nXJ4GCR+UdKk9FEwcASfYkeu3HDWUld9uTE6pOc+ibWYnybNH7VBfEHW8h9YmQKs3HD2T3wlTcS2irU4CUW7/IKNok4etYdM3iFn1K2ReSGXEI='
177     hacluster-nova:
178       charm: "local:trusty/hacluster"
179       options:
180         corosync_transport: unicast
181         corosync_key: |
182           'gel86qmEze8dYKYbfqIgRpqapJpKtdYL2hxC1y5nWYBPq7EMf6V8mF01IjeUkSRs14CUDrsPpT4PWeom7EOY2fleuLx/aIuqQUfEDkhf/gvaz7BaU4hrmTCoDBK7/HvEwY+/wu4qkEeckzSRPsm9MYzqnLRshh8yjZJ70xU/mmk='
183     hacluster-neutron:
184       charm: "local:trusty/hacluster"
185       options:
186         corosync_transport: unicast
187         corosync_key: |
188           'KNhb4++3jlllbnscS5D3qdzOJDsQPEeZ7zOLZJHbkKrRjX9gRCijVVOiv2JCvq03HqQ7LIufQzWGl9Za8qh0f6QmQ3XhFh/Cb/3WaYFj+tEf0zArWv+8miswmM1z4eyTSrTWBq0dTgx1z96wjBxP5HV0+1LWW+3Ei4oZWyRGeR0='
189     hacluster-glance:
190       charm: "local:trusty/hacluster"
191       options:
192         corosync_transport: unicast
193         corosync_key: |
194           'el1dd8107J5mwQDPS7tEJPZrr0XFfL95+Tku/QG90W5Q5f5SP4W8TRfKvddGmZWZl2lVd1neG5WqaHa1mq/aScJpoflzVAJCvshN7Gd2AjHhLNNugeI8S90j/7wrKUhqiCAlkKaeri2xs5bB5PZ7Z9AHuNZL7SW1al8lxrKhUFI='
195     hacluster-ceilometer:
196       charm: "local:trusty/hacluster"
197       options:
198         corosync_transport: unicast
199         corosync_key: |
200           'cHkgKGJpdHMgPSA5NjApLgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDEwMDgpLgpXcml0aW5nIGNvcm9zeW5jIGtleSB0byAvZXRjL2Nvcm9zeW5jL2F1dGhrZXkuCg=='
201     hacluster-mysql:
202       charm: "local:trusty/hacluster"
203       options:
204         corosync_transport: unicast
205         corosync_key: |
206           'Q29yb3N5bmMgQ2x1c3RlciBFbmdpbmUgQXV0aGVudGljYXRpb24ga2V5IGdlbmVyYXRvci4KR2F0aGVyaW5nIDEwMjQgYml0cyBmb3Iga2V5IGZyb20gL2Rldi9yYW5kb20uClByZXNzIGtleXMgb24geW91ciBrZXlib2FyZCB0byBnZW5lcmF0ZSBlbnRyb3B5LgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDkyMCkuClByZXNzIGtleXMgb24geW91ciBrZXlib2FyZCB0byBnZW5lcmF0ZSBlbnRyb3B5IChiaXRzID0gMTAwMCkuCldyaXRpbmcgY29yb3N5bmMga2V5IHRvIC9ldGMvY29yb3N5bmMvYXV0aGtleS4K'
207 #    hacluster-ceph-radosgw:
208 #      charm: "local:trusty/hacluster"
209 #      options:
210 #        corosync_key: |
211 #          'tk8U/FkH1+dNsvj6IU0C8AST7i/9ylIoCD8kWpPjB+UE2AYR7tkgkjnc4m5dzIYPYTceY7Hnb9xLJ0nlcQLYYFBRAJOg3drNTcVrfh63y9g9La1J1r51YSbOqXq1Q6RUhxP4OQBtDGE6/4NtZwuRPvPGLcI2ENiVm78l8JFkXRw='
212     mysql:
213       charm: "local:trusty/percona-cluster"
214       num_units: 3
215       options:
216         dataset-size: 2G
217         lp1366997-workaround: true
218         max-connections: 10000
219         root-password: 293rhc395m
220         sst-password: 127rc14t51
221         vip: 10.4.1.15
222       to:
223         - "lxc:nodes=0"
224         - "lxc:nodes=1"
225         - "lxc:nodes=2"
226     ceilometer:
227       charm: "local:trusty/ceilometer"
228       num_units: 3
229       options:
230         vip: 10.4.1.14
231         #os-public-hostname: api.public-fqdn
232       to:
233         - "lxc:nodes=1"
234         - "lxc:nodes=2"
235         - "lxc:nodes=3"
236     ceilometer-agent:
237       charm: "local:trusty/ceilometer-agent"
238     mongodb:
239       charm: "local:trusty/mongodb"
240       to:
241         - "lxc:nodes=0"
242     heat:
243       charm: "local:trusty/heat"
244       num_units: 3
245       options:
246         vip: 10.4.1.18
247         #os-public-hostname: api.public-fqdn
248       to:
249         - "lxc:nodes=2"
250         - "lxc:nodes=3"
251         - "lxc:nodes=4"
252     ceph:
253       charm: local:trusty/ceph
254       num_units: 3
255       options:
256         fsid: 5a791d94-980b-11e4-b6f6-3c970e8b1cf7
257         monitor-secret: AQAi5a9UeJXUExAA+By9u+GPhl8/XiUQ4nwI3A==
258         monitor-count: 3
259 #        osd-reformat: 'false'
260 #        ceph-cluster-network: 192.168.0.0/24
261 #        ceph-public-network: 192.168.0.0/24
262       to:
263         - "lxc:nodes=3"
264         - "lxc:nodes=4"
265         - "lxc:nodes=0"
266     ceph-osd:
267       charm: local:trusty/ceph-osd
268       num_units: 3
269       options:
270         osd-devices: /srv
271         osd-reformat: 'yes'
272       to:
273         - "nodes=2"
274         - "nodes=3"
275         - "nodes=4"
276 #        - "nodes=0"
277     ceph-radosgw:
278       charm: local:trusty/ceph-radosgw
279 #      vip: 10.4.1.10
280       #os-public-hostname: api.public-fqdn
281       options:
282         use-embedded-webserver: true
283         operator-roles: "Member,admin"
284       to:
285         - "lxc:nodes=0"
286 #        - "lxc:nodes=1"
287 #        - "lxc:nodes=2"
288     cinder:
289       charm: local:trusty/cinder
290       num_units: 3
291       options:
292         block-device: None
293         glance-api-version: 2
294         vip: 10.4.1.19
295         #os-public-hostname: api.public-fqdn
296       to:
297         - "lxc:nodes=4"
298         - "lxc:nodes=0"
299         - "lxc:nodes=1"
300     cinder-ceph:
301       charm: local:trusty/cinder-ceph
302     rabbitmq-server:
303       charm: local:trusty/rabbitmq-server
304       num_units: 3
305       options:
306         vip: 10.4.1.10
307       to:
308         - "lxc:nodes=0"
309         - "lxc:nodes=1"
310         - "lxc:nodes=2"
311     keystone:
312       charm: local:trusty/keystone
313       num_units: 3
314       options:
315         admin-password: openstack
316         admin-token: admin
317         vip: 10.4.1.13
318         #os-public-hostname: api.public-fqdn
319       to:
320         - "lxc:nodes=1"
321         - "lxc:nodes=2"
322         - "lxc:nodes=3"
323     openstack-dashboard:
324       charm: local:trusty/openstack-dashboard
325       num_units: 3
326       options:
327         secret: admin
328         vip: 10.4.1.11
329         webroot: /
330       to:
331         - "lxc:nodes=2"
332         - "lxc:nodes=3"
333         - "lxc:nodes=4"
334     nova-compute:
335       charm: local:trusty/nova-compute
336       num_units: 4
337       options:
338         enable-live-migration: true
339         enable-resize: true
340         manage-neutron-plugin-legacy-mode: false
341         migration-auth-type: ssh
342         #virt-type: lxd
343         #hugepages: "50%"
344       to:
345         - "nodes=1"
346         - "nodes=2"
347         - "nodes=3"
348         - "nodes=4"
349     nova-cloud-controller:
350       charm: local:trusty/nova-cloud-controller
351       num_units: 3
352       options:
353         console-access-protocol: novnc
354         network-manager: Neutron
355         service-guard: true
356         vip: 10.4.1.16
357         #os-public-hostname: api.public-fqdn
358       to:
359         - "lxc:nodes=3"
360         - "lxc:nodes=4"
361         - "lxc:nodes=0"
362     neutron-api:
363       charm: local:trusty/neutron-api
364       num_units: 3
365       options:
366         neutron-security-groups: True
367         manage-neutron-plugin-legacy-mode: False
368         vip: 10.4.1.17
369         #os-public-hostname: api.public-fqdn
370       to:
371         - "lxc:nodes=4"
372         - "lxc:nodes=0"
373         - "lxc:nodes=1"
374     neutron-gateway:
375       charm: local:trusty/neutron-gateway
376       options:
377         #ext-port: "eth1"
378         plugin: ovs-odl
379         instance-mtu: 1400
380       to:
381         - "nodes=0"
382     odl-controller:
383       charm: local:trusty/odl-controller
384       options:
385         install-url: "https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.4.2-Beryllium-SR2/distribution-karaf-0.4.2-Beryllium-SR2.tar.gz"
386         profile: "openvswitch-odl-beryllium"
387         http-proxy: "http://squid.internal:3128"
388         https-proxy: "http://squid.internal:3128"
389       to:
390         - "lxc:nodes=0"
391     glance:
392       charm: local:trusty/glance
393       num_units: 3
394       options:
395         vip: 10.4.1.12
396         #os-public-hostname: api.public-fqdn
397       to:
398         - "lxc:nodes=0"
399         - "lxc:nodes=1"
400         - "lxc:nodes=2"
401     opnfv-promise:
402       charm: local:trusty/promise
403       to:
404         - "lxc:nodes=0"
405     neutron-api-odl:
406       charm: local:trusty/neutron-api-odl
407       options:
408         overlay-network-type: 'vxlan'
409         security-groups: True
410     openvswitch-odl:
411       charm: local:trusty/openvswitch-odl
412     congress:
413       charm: local:trusty/congress
414       options:
415         #source-branch: stable/mitaka
416       to:
417         - "lxc:nodes=0"