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