907fe9285290aa48b11c3e3d0c76cf1ebc443a9f
[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: "local:trusty/ubuntu-nodes-controller"
7       num_units: 3
8       constraints: tags=control
9     nodes-compute:
10       charm: "local:trusty/ubuntu-nodes-compute"
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=0"
21         - "lxc:nodes-api=1"
22         - "lxc:nodes-api=2"
23     cassandra:
24       branch: lp:~stub/charms/trusty/cassandra/noauthentication
25       num_units: 3
26       to:
27         - "lxc:nodes-api=0"
28         - "lxc:nodes-api=1"
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=0"
52         - "lxc:nodes-api=1"
53         - "lxc:nodes-api=2"
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=0"
91         - "lxc:nodes-api=1"
92         - "lxc:nodes-api=2"
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: 3
131       options:
132         use-embedded-webserver: true
133       to:
134         - "lxc:nodes-api=0"
135         - "lxc:nodes-api=1"
136         - "lxc:nodes-api=2"
137
138     cinder:
139       charm: cs:trusty/cinder
140       num_units: 3
141       options:
142         block-device: None
143         glance-api-version: 2
144 #        ha-mcastport: 5401
145       to:
146         - "lxc:nodes-api=0"
147         - "lxc:nodes-api=1"
148         - "lxc:nodes-api=2"
149     cinder-ceph:
150       charm: cs:trusty/cinder-ceph
151     "rabbitmq-server": 
152       branch: lp:charms/trusty/rabbitmq-server
153       num_units: 3
154       to:
155         - "lxc:nodes-api=0"
156         - "lxc:nodes-api=1"
157         - "lxc:nodes-api=2"
158     "keystone": 
159       branch: lp:charms/trusty/keystone
160       num_units: 3
161       options: 
162         "admin-password": openstack
163         "admin-token": admin
164         vip: 10.4.1.13
165       to:
166         - "lxc:nodes-api=0"
167         - "lxc:nodes-api=1"
168         - "lxc:nodes-api=2"
169     "openstack-dashboard": 
170       branch: lp:charms/trusty/openstack-dashboard
171       num_units: 3
172       options: 
173         secret: admin
174         vip: 10.4.1.11
175         webroot: /
176       to:
177         - "lxc:nodes-api=0"
178         - "lxc:nodes-api=1"
179         - "lxc:nodes-api=2"
180     "nova-compute": 
181       branch: lp:~openstack-charmers/charms/trusty/nova-compute/next
182       num_units: 2
183       options: 
184         "enable-live-migration": False
185         "manage-neutron-plugin-legacy-mode": False
186       to:
187         - "nodes-compute=0"
188         - "nodes-compute=1"
189 #        - "nodes-api=0"
190 #        - "nodes-api=1"
191 #        - "nodes-api=2"
192     "nova-cloud-controller": 
193       branch: lp:charms/trusty/nova-cloud-controller
194       num_units: 3
195       options: 
196         "console-access-protocol": novnc
197         "network-manager": Neutron
198         "quantum-security-groups": "yes"
199         "service-guard": true
200         vip: 10.4.1.16
201       to:
202         - "lxc:nodes-api=0"
203         - "lxc:nodes-api=1"
204         - "lxc:nodes-api=2"
205     "neutron-api": 
206       branch: lp:~openstack-charmers/charms/trusty/neutron-api/next
207       num_units: 3
208       options:
209         neutron-security-groups: True
210         manage-neutron-plugin-legacy-mode: False
211         vip: 10.4.1.17
212       to: 
213         - "lxc:nodes-api=0"
214         - "lxc:nodes-api=1"
215         - "lxc:nodes-api=2"
216     "glance": 
217       branch: lp:charms/trusty/glance
218       num_units: 3
219       options: 
220         vip: 10.4.1.12
221       to:
222         - "lxc:nodes-api=0"
223         - "lxc:nodes-api=1"
224         - "lxc:nodes-api=2"
225   relations:
226     - [ "glance:ha", "hacluster-glance:ha" ]
227     - [ "keystone:ha", "hacluster-keystone:ha" ]
228     - [ "neutron-api:ha", "hacluster-neutron:ha" ]
229     - [ "nova-cloud-controller:ha", "hacluster-nova:ha" ]
230     - [ "openstack-dashboard:ha", "hacluster-horizon:ha" ]
231     - [ "ceilometer:ha", "hacluster-ceilometer:ha" ] 
232     - [ keystone, percona-cluster ]
233     - [ nova-cloud-controller, percona-cluster ]
234     - [ nova-cloud-controller, rabbitmq-server ]
235     - [ nova-cloud-controller, glance ]
236     - [ nova-cloud-controller, keystone ]
237     - [ nova-compute, nova-cloud-controller ]
238     - [ "nova-compute:shared-db", "percona-cluster:shared-db" ]
239     - [ "nova-compute:amqp", "rabbitmq-server:amqp" ]
240     - [ nova-compute, glance ]
241     - [ glance, percona-cluster ]
242     - [ glance, keystone ]
243     - [ openstack-dashboard, keystone ]
244     - [ neutron-api, percona-cluster ]
245     - [ neutron-api, rabbitmq-server ]
246     - [ neutron-api, nova-cloud-controller ]
247     - [ neutron-api, keystone ]
248     - [ neutron-api, neutron-api-contrail ]
249     - [ "ceilometer:amqp", "rabbitmq-server:amqp" ]
250     - [ "ceilometer-agent:ceilometer-service", "ceilometer:ceilometer-service" ]
251     - [ "ceilometer:identity-service", "keystone:identity-service" ]
252     - [ "ceilometer:identity-notifications", "keystone:identity-notifications" ]
253     - [ "ceilometer-agent:nova-ceilometer", "nova-compute:nova-ceilometer" ]
254     - [ "ceilometer:shared-db", "mongodb:database" ]
255     - [ "heat:shared-db", "percona-cluster:shared-db" ]
256     - [ "heat:identity-service", "keystone:identity-service" ]
257     - [ "heat:amqp", "rabbitmq-server:amqp" ]
258     - [ "cinder:image-service", "glance:image-service" ]
259     - [ "cinder:amqp", "rabbitmq-server:amqp" ]
260     - [ "cinder:identity-service", "keystone:identity-service" ]
261     - [ "cinder:cinder-volume-service", "nova-cloud-controller:cinder-volume-service" ]
262     - [ "cinder-ceph:storage-backend", "cinder:storage-backend" ]
263     - [ "ceph:client", "nova-compute:ceph" ]
264     - [ "cinder:shared-db", "percona-cluster:shared-db" ]
265     - [ "ceph:client", "cinder-ceph:ceph" ]
266     - [ "ceph:client", "glance:ceph" ]
267     - [ "ceph-osd:mon", "ceph:osd" ]
268     - [ "ceph-radosgw:mon", "ceph:radosgw" ]
269     - [ "ceph-radosgw:identity-service", "keystone:identity-service" ]
270
271 contrail:
272   inherits: openstack-phase2
273   services:
274     contrail-configuration:
275       branch: lp:~sdn-charmers/charms/trusty/contrail-configuration/trunk
276       num_units: 2
277       options:
278         vip: 10.4.1.18
279       to:
280         - "lxc:nodes-api=0"
281         - "lxc:nodes-api=1"
282     contrail-control:
283       branch: lp:~sdn-charmers/charms/trusty/contrail-control/trunk
284       num_units: 2
285       to:
286         - "lxc:nodes-api=0"
287         - "lxc:nodes-api=1"
288     contrail-analytics:
289       branch: lp:~sdn-charmers/charms/trusty/contrail-analytics/trunk
290       num_units: 2
291       to:
292         - "lxc:nodes-api=0"
293         - "lxc:nodes-api=1"
294     contrail-webui:
295       branch: lp:~sdn-charmers/charms/trusty/contrail-webui/trunk
296       num_units: 2
297       to:
298         - "lxc:nodes-api=0"
299         - "lxc:nodes-api=1"
300     neutron-api-contrail:
301       branch: lp:~sdn-charmers/charms/trusty/neutron-api-contrail/trunk
302     neutron-contrail:
303       branch: lp:~sdn-charmers/charms/trusty/neutron-contrail/trunk
304     haproxy:
305       charm: cs:trusty/haproxy
306       num_units: 2
307       options:
308         peering_mode: active-active
309       to:
310         - "lxc:nodes-api=0"
311         - "lxc:nodes-api=1"
312     keepalived:
313       branch: lp:~sdn-charmers/charms/trusty/keepalived/trunk
314       options:
315         virtual-ip: 10.4.1.19
316   overrides:
317     admin-role: admin
318   relations:
319     - [ "contrail-configuration:cassandra", "cassandra:database" ]
320     - [ contrail-configuration, zookeeper ]
321     - [ contrail-configuration, rabbitmq-server ]
322     - [ contrail-configuration, keystone ]
323     - [ neutron-api-contrail, contrail-configuration ]
324     - [ neutron-api-contrail, keystone ]
325     - [ "contrail-control:contrail-api", "contrail-configuration:contrail-api" ]
326     - [ "contrail-control:contrail-discovery", "contrail-configuration:contrail-discovery" ]
327     - [ "contrail-control:contrail-ifmap", "contrail-configuration:contrail-ifmap" ]
328     - [ contrail-control, keystone ]
329     - [ "contrail-analytics:cassandra", "cassandra:database" ]
330     - [ contrail-analytics, contrail-configuration ]
331     - [ contrail-webui, keystone ]
332     - [ "contrail-webui:contrail_api", "contrail-configuration:contrail-api" ]
333     - [ "contrail-webui:contrail_discovery", "contrail-configuration:contrail-discovery" ]
334     - [ "contrail-webui:cassandra", "cassandra:database" ]
335     - [ nova-compute, neutron-contrail ]
336     - [ "neutron-contrail:contrail-discovery", "contrail-configuration:contrail-discovery" ]
337     - [ "neutron-contrail:contrail-api", "contrail-configuration:contrail-api" ]
338     - [ neutron-contrail, keystone ]
339     - [ contrail-configuration, haproxy ]
340     - [ contrail-analytics, haproxy ]
341     - [ contrail-webui, haproxy ]
342     - [ haproxy, keepalived ]
343 trusty-liberty-nodes:
344   inherits: openstack-phase1
345   series: trusty
346   overrides:
347     series: trusty
348     
349 trusty-liberty: 
350   inherits: contrail
351   series: trusty
352   overrides:
353     series: trusty
354     #os-data-network: 10.4.8.0/21
355     #prefer-ipv6: true
356     region: Canonical
357     openstack-origin: cloud:trusty-liberty
358     source: "cloud:trusty-liberty"
359     ceph-osd-replication-count: 2
360
361 trusty-kilo-nodes:
362   inherits: openstack-phase1
363   series: trusty
364   overrides:
365     series: trusty
366
367 trusty-kilo:
368   inherits: contrail
369   series: trusty
370   overrides:
371     series: trusty
372     #os-data-network: 10.4.8.0/21
373     #prefer-ipv6: true
374     region: Canonical
375     openstack-origin: cloud:trusty-kilo
376     source: "cloud:trusty-kilo"
377     ceph-osd-replication-count: 2
378
379 trusty-juno-nodes:
380   inherits: openstack-phase1
381   overrides:
382     series: trusty
383
384 trusty-juno:
385   inherits: contrail
386   series: trusty
387   overrides:
388     series: trusty
389     #os-data-network: 10.4.8.0/21
390     #prefer-ipv6: true
391     region: Canonical
392     openstack-origin: cloud:trusty-juno
393     source: "cloud:trusty-juno"
394     ceph-osd-replication-count: 2
395
396