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