-openstack-services:
+# vim: set ts=2 et:
+openstack-phase1:
series: trusty
services:
- ubuntu:
- branch: "lp:charms/trusty/ubuntu"
- num_utils: 1
- constraints: tags=physical
- neutron-gateway:
- branch: lp:~sdn-charmers/charms/trusty/neutron-gateway/ovs-odl
+ nodes-api:
+ charm: "cs:trusty/ubuntu"
+ num_units: 3
+ constraints: tags=control
+ nodes-compute:
+ charm: "cs:trusty/ubuntu"
+ num_units: 2
+ constraints: tags=compute
+ "ntp":
+ charm: "cs:trusty/ntp"
+ relations:
+ - - "ntp:juju-info"
+ - "nodes-api:juju-info"
+ - - "ntp:juju-info"
+ - "nodes-compute:juju-info"
+openstack-phase2:
+ inherits: openstack-phase1
+ services:
+ "percona-cluster":
+ branch: "lp:~openstack-charmers/charms/trusty/percona-cluster/next"
+ num_units: 3
options:
- plugin: ovs-odl
- instance-mtu: 1400
- to: ubuntu=0
- nova-compute:
+ "dataset-size": 2G
+ "lp1366997-workaround": true
+ "max-connections": 10000
+ "root-password": 293rhc395m
+ "sst-password": 127rc14t51
+ vip: 10.4.1.15
+ to:
+ - "lxc:nodes-api=1"
+ - "lxc:nodes-api=0"
+ - "lxc:nodes-api=2"
+ "hacluster-keystone":
+ branch: "lp:~openstack-charmers/charms/trusty/hacluster/next"
+ options:
+ corosync_key: |
+ 'QisjNpoKHLkvyc3PEdDHP5VZjgD0kOk9t0ABPWmCELlu5AgWgnW6bJd34BVXO7VhW+3ZwNQM3W+bZ3pl28ftY4ki4N/S0KLFNia5egFgiA3AH2QXLnokS7OYXuu6GMJJ1S5mDe6P5zU+tfJe/Mebq24u7CgR0gAvohSPRdDTwdY='
+ "hacluster-horizon":
+ branch: "lp:~openstack-charmers/charms/trusty/hacluster/next"
+ options:
+ corosync_key: |
+ 'aCVPHw6XYne+Hxv0WPiM3+yEfeIxs0Ly0EMKB494Rdzjf5rE52GcXqqxuvIa/nXJ4GCR+UdKk9FEwcASfYkeu3HDWUld9uTE6pOc+ibWYnybNH7VBfEHW8h9YmQKs3HD2T3wlTcS2irU4CUW7/IKNok4etYdM3iFn1K2ReSGXEI='
+ "hacluster-nova":
+ branch: "lp:~openstack-charmers/charms/trusty/hacluster/next"
+ options:
+ corosync_key: |
+ 'gel86qmEze8dYKYbfqIgRpqapJpKtdYL2hxC1y5nWYBPq7EMf6V8mF01IjeUkSRs14CUDrsPpT4PWeom7EOY2fleuLx/aIuqQUfEDkhf/gvaz7BaU4hrmTCoDBK7/HvEwY+/wu4qkEeckzSRPsm9MYzqnLRshh8yjZJ70xU/mmk='
+ "hacluster-neutron":
+ branch: "lp:~openstack-charmers/charms/trusty/hacluster/next"
+ options:
+ corosync_key: |
+ 'KNhb4++3jlllbnscS5D3qdzOJDsQPEeZ7zOLZJHbkKrRjX9gRCijVVOiv2JCvq03HqQ7LIufQzWGl9Za8qh0f6QmQ3XhFh/Cb/3WaYFj+tEf0zArWv+8miswmM1z4eyTSrTWBq0dTgx1z96wjBxP5HV0+1LWW+3Ei4oZWyRGeR0='
+ "hacluster-glance":
+ branch: "lp:~openstack-charmers/charms/trusty/hacluster/next"
+ options:
+ corosync_key: |
+ 'el1dd8107J5mwQDPS7tEJPZrr0XFfL95+Tku/QG90W5Q5f5SP4W8TRfKvddGmZWZl2lVd1neG5WqaHa1mq/aScJpoflzVAJCvshN7Gd2AjHhLNNugeI8S90j/7wrKUhqiCAlkKaeri2xs5bB5PZ7Z9AHuNZL7SW1al8lxrKhUFI='
+ "hacluster-ceilometer":
+ branch: "lp:~openstack-charmers/charms/trusty/hacluster/next"
+ options:
+ corosync_key: |
+ 'cHkgKGJpdHMgPSA5NjApLgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDEwMDgpLgpXcml0aW5nIGNvcm9zeW5jIGtleSB0byAvZXRjL2Nvcm9zeW5jL2F1dGhrZXkuCg=='
+ "ceilometer":
+ branch: "lp:~openstack-charmers/charms/trusty/ceilometer/next"
+ num_units: 3
+ options:
+ vip: 10.4.1.14
+ to:
+ - "lxc:nodes-api=2"
+ - "lxc:nodes-api=0"
+ - "lxc:nodes-api=1"
+ "ceilometer-agent":
+ branch: "lp:~openstack-charmers/charms/trusty/ceilometer-agent/next"
+ "mongodb":
+ charm: "cs:trusty/mongodb"
+ num_units: 1
+ to:
+ - "lxc:nodes-api=0"
+ heat:
+ branch: "lp:~openstack-charmers/charms/trusty/heat/next"
+ to:
+ - "lxc:nodes-api=0"
+ ceph:
+ branch: lp:~openstack-charmers/charms/trusty/ceph/next
+ num_units: 2
+ options:
+ fsid: 5a791d94-980b-11e4-b6f6-3c970e8b1cf7
+ monitor-secret: AQAi5a9UeJXUExAA+By9u+GPhl8/XiUQ4nwI3A==
+ osd-devices: /srv
+ monitor-count: 1
+ osd-reformat: 'false'
+# ceph-cluster-network: 192.168.0.0/24
+# ceph-public-network: 192.168.0.0/24
+ to:
+ - "nodes-compute=0"
+ - "nodes-compute=1"
+ ceph-osd:
+ branch: lp:~openstack-charmers/charms/trusty/ceph-osd/next
+ num_units: 1
+ options:
+ osd-devices: /srv
+ osd-reformat: 'yes'
+ to:
+ - "nodes-api=1"
+ ceph-radosgw:
+ branch: lp:~openstack-charmers/charms/trusty/ceph-radosgw/next
+ num_units: 1
+ options:
+ use-embedded-webserver: true
+ operator-roles: "Member,admin"
+ to:
+ - "lxc:nodes-api=0"
+ cinder:
+ branch: lp:~openstack-charmers/charms/trusty/cinder/next
+ num_units: 3
+ options:
+ block-device: None
+ glance-api-version: 2
+# ha-mcastport: 5401
+ to:
+ - "lxc:nodes-api=1"
+ - "lxc:nodes-api=0"
+ - "lxc:nodes-api=2"
+ cinder-ceph:
+ branch: lp:~openstack-charmers/charms/trusty/cinder-ceph/next
+ "rabbitmq-server":
+ branch: lp:~openstack-charmers/charms/trusty/rabbitmq-server/next
+ num_units: 3
+ to:
+ - "lxc:nodes-api=2"
+ - "lxc:nodes-api=0"
+ - "lxc:nodes-api=1"
+ "keystone":
+ branch: lp:~openstack-charmers/charms/trusty/keystone/next
+ num_units: 3
+ options:
+# ha-mcastport: 5402
+ "admin-password": openstack
+ "admin-token": admin
+ vip: 10.4.1.13
+ to:
+ - "lxc:nodes-api=0"
+ - "lxc:nodes-api=1"
+ - "lxc:nodes-api=2"
+ "openstack-dashboard":
+ branch: lp:~openstack-charmers/charms/trusty/openstack-dashboard/next
+ num_units: 3
+ options:
+ secret: admin
+ vip: 10.4.1.11
+ webroot: /
+ to:
+ - "lxc:nodes-api=1"
+ - "lxc:nodes-api=0"
+ - "lxc:nodes-api=2"
+ "nova-compute":
branch: lp:~openstack-charmers/charms/trusty/nova-compute/next
num_units: 2
- constraints: tags=physical
options:
- enable-live-migration: False
- manage-neutron-plugin-legacy-mode: False
- neutron-api:
+ "enable-live-migration": False
+ "manage-neutron-plugin-legacy-mode": False
+ to:
+ - "nodes-compute=0"
+ - "nodes-compute=1"
+# - "nodes-api=0"
+# - "nodes-api=1"
+# - "nodes-api=2"
+ "nova-cloud-controller":
+ branch: lp:~openstack-charmers/charms/trusty/nova-cloud-controller/next
+ num_units: 3
+ options:
+ "console-access-protocol": novnc
+ "network-manager": Neutron
+ "quantum-security-groups": "yes"
+ "service-guard": true
+ "neutron-external-network": ext_net
+ vip: 10.4.1.16
+ to:
+ - "lxc:nodes-api=2"
+ - "lxc:nodes-api=0"
+ - "lxc:nodes-api=1"
+ "neutron-api":
branch: lp:~openstack-charmers/charms/trusty/neutron-api/next
+ num_units: 3
options:
- neutron-security-groups: False
+ neutron-security-groups: True
manage-neutron-plugin-legacy-mode: False
- to: lxc:ubuntu=0
- neutron-api-odl:
- branch: lp:~openstack-charmers/charms/trusty/neutron-api-odl/vpp
+ vip: 10.4.1.17
+ to:
+ - "lxc:nodes-api=0"
+ - "lxc:nodes-api=1"
+ - "lxc:nodes-api=2"
+ neutron-gateway:
+ branch: lp:~openstack-charmers/charms/trusty/neutron-gateway/next
options:
- overlay-network-type: 'vxlan gre'
- security-groups: true
+# "ext-port": "eth1"
+ plugin: ovs-odl
+ instance-mtu: 1400
+ to:
+ - "nodes-api=0"
odl-controller:
- branch: lp:~sdn-charmers/charms/trusty/odl-controller/trunk
+ branch: lp:~openstack-charmers/charms/trusty/odl-controller/next
options:
- install-url: "https://nexus.opendaylight.org/content/groups/public/org/opendaylight/integration/distribution-karaf/0.2.4-Helium-SR4/distribution-karaf-0.2.4-Helium-SR4.tar.gz"
- to: lxc:ubuntu=0
+ #install-url: "https://nexus.opendaylight.org/content/groups/public/org/opendaylight/integration/distribution-karaf/0.2.4-Helium-SR4/distribution-karaf-0.2.4-Helium-SR4.tar.gz"
+ install-url: "https://nexus.opendaylight.org/content/groups/public/org/opendaylight/integration/distribution-karaf/0.3.3-Lithium-SR3/distribution-karaf-0.3.3-Lithium-SR3.tar.gz"
+ profile: "openvswitch-odl-lithium"
+ http-proxy: "http://squid.internal:3128"
+ https-proxy: "http://squid.internal:3128"
+ to:
+ - "lxc:nodes-api=1"
+ "glance":
+ branch: lp:~openstack-charmers/charms/trusty/glance/next
+ num_units: 3
+ options:
+ vip: 10.4.1.12
+# ha-mcastport: 5402
+ to:
+ - "lxc:nodes-api=1"
+ - "lxc:nodes-api=0"
+ - "lxc:nodes-api=2"
+ opnfv-promise:
+ branch: lp:~narindergupta/charms/trusty/promise/trunk
+ num_units: 1
+ to:
+ - "lxc:nodes-api=2"
+ neutron-api-odl:
+ branch: lp:~openstack-charmers/charms/trusty/neutron-api-odl/next
+ options:
+ overlay-network-type: 'vxlan gre'
+ security-groups: True
openvswitch-odl:
- branch: lp:~alai/charms/trusty/openvswitch-odl/trunk
- mysql:
- charm: cs:trusty/mysql
- options:
- dataset-size: 50%
- max-connections: 20000
- to: lxc:ubuntu=0
- rabbitmq-server:
- charm: cs:trusty/rabbitmq-server
- to: lxc:ubuntu=0
- keystone:
- charm: cs:trusty/keystone
- options:
- admin-password: openstack
- admin-token: admin
- to: lxc:ubuntu=0
- openstack-dashboard:
- charm: cs:trusty/openstack-dashboard
- to: lxc:ubuntu=0
- nova-cloud-controller:
- charm: cs:trusty/nova-cloud-controller
- options:
- network-manager: Neutron
- quantum-security-groups: "yes"
- to: lxc:ubuntu=0
- glance:
- charm: cs:trusty/glance
- to: lxc:ubuntu=0
+ branch: lp:~openstack-charmers/charms/trusty/openvswitch-odl/trunk
relations:
- - ['neutron-api:neutron-plugin-api-subordinate', 'neutron-api-odl:neutron-plugin-api-subordinate']
- - ['nova-compute:neutron-plugin', 'openvswitch-odl:neutron-plugin']
- - ['neutron-gateway', 'openvswitch-odl']
- - ['openvswitch-odl:ovsdb-manager', 'odl-controller:ovsdb-manager']
- - ['neutron-api-odl:odl-controller', 'odl-controller:controller-api']
- - ['keystone:shared-db', 'mysql:shared-db']
- - ['nova-cloud-controller:shared-db', 'mysql:shared-db']
- - ['nova-cloud-controller:amqp', 'rabbitmq-server:amqp']
- - ['nova-cloud-controller:image-service', 'glance:image-service']
- - ['nova-cloud-controller:identity-service', 'keystone:identity-service']
- - ['nova-compute:cloud-compute', 'nova-cloud-controller:cloud-compute']
- - ['nova-compute:amqp', 'rabbitmq-server:amqp']
- - ['nova-compute:image-service', 'glance:image-service']
- - ['glance:shared-db', 'mysql:shared-db']
- - ['glance:identity-service', 'keystone:identity-service']
- - ['glance:amqp', 'rabbitmq-server:amqp']
- - ['neutron-api:shared-db', 'mysql:shared-db']
- - ['neutron-api:amqp', 'rabbitmq-server:amqp']
- - ['neutron-api:neutron-api', 'nova-cloud-controller:neutron-api']
- - ['neutron-api:identity-service', 'keystone:identity-service']
- - ['neutron-gateway:amqp', 'rabbitmq-server:amqp']
- - ['neutron-gateway:neutron-plugin-api', 'neutron-api:neutron-plugin-api']
- - ['neutron-gateway:quantum-network-service', 'nova-cloud-controller:quantum-network-service']
- - ['openstack-dashboard:identity-service','keystone:identity-service']
+ - - "glance:ha"
+ - "hacluster-glance:ha"
+ - - "keystone:ha"
+ - "hacluster-keystone:ha"
+ - - "neutron-api:ha"
+ - "hacluster-neutron:ha"
+ - - "nova-cloud-controller:ha"
+ - "hacluster-nova:ha"
+ - - "openstack-dashboard:ha"
+ - "hacluster-horizon:ha"
+ - - "ceilometer:ha"
+ - "hacluster-ceilometer:ha"
+ - - "neutron-api:neutron-plugin-api-subordinate"
+ - "neutron-api-odl:neutron-plugin-api-subordinate"
+ - - "nova-compute:neutron-plugin"
+ - "openvswitch-odl:neutron-plugin"
+ - - "neutron-gateway"
+ - "openvswitch-odl"
+ - - "openvswitch-odl:ovsdb-manager"
+ - "odl-controller:ovsdb-manager"
+ - - "neutron-api-odl:odl-controller"
+ - "odl-controller:controller-api"
+ - - "keystone:shared-db"
+ - "percona-cluster:shared-db"
+ - - "nova-cloud-controller:shared-db"
+ - "percona-cluster:shared-db"
+ - - "nova-cloud-controller:amqp"
+ - "rabbitmq-server:amqp"
+ - - "nova-cloud-controller:image-service"
+ - "glance:image-service"
+ - - "nova-cloud-controller:identity-service"
+ - "keystone:identity-service"
+ - - "nova-cloud-controller:cloud-compute"
+ - "nova-compute:cloud-compute"
+ - - "nova-compute:amqp"
+ - "rabbitmq-server:amqp"
+ - - "nova-compute:image-service"
+ - "glance:image-service"
+ - - "glance:shared-db"
+ - "percona-cluster:shared-db"
+ - - "glance:identity-service"
+ - "keystone:identity-service"
+ - - "glance:amqp"
+ - "rabbitmq-server:amqp"
+ - - "openstack-dashboard:identity-service"
+ - "keystone:identity-service"
+ - - "neutron-api:shared-db"
+ - "percona-cluster:shared-db"
+ - - "neutron-api:amqp"
+ - "rabbitmq-server:amqp"
+ - - "nova-cloud-controller:neutron-api"
+ - "neutron-api:neutron-api"
+ - - "neutron-api:identity-service"
+ - "keystone:identity-service"
+ - - "neutron-gateway:amqp"
+ - "rabbitmq-server:amqp"
+ - - "neutron-gateway:neutron-plugin-api"
+ - "neutron-api:neutron-plugin-api"
+ - - "nova-cloud-controller:quantum-network-service"
+ - "neutron-gateway:quantum-network-service"
+ - - "ceilometer:amqp"
+ - "rabbitmq-server:amqp"
+ - - "ceilometer-agent:ceilometer-service"
+ - "ceilometer:ceilometer-service"
+ - - "ceilometer:identity-service"
+ - "keystone:identity-service"
+ - - "ceilometer:identity-notifications"
+ - "keystone:identity-notifications"
+ - - "ceilometer-agent:nova-ceilometer"
+ - "nova-compute:nova-ceilometer"
+ - - "ceilometer:shared-db"
+ - "mongodb:database"
+ - - "heat:shared-db"
+ - "percona-cluster:shared-db"
+ - - "heat:identity-service"
+ - "keystone:identity-service"
+ - - "heat:amqp"
+ - "rabbitmq-server:amqp"
+ - - "cinder:image-service"
+ - "glance:image-service"
+ - - "cinder:amqp"
+ - "rabbitmq-server:amqp"
+ - - "cinder:identity-service"
+ - "keystone:identity-service"
+ - - "cinder:cinder-volume-service"
+ - "nova-cloud-controller:cinder-volume-service"
+ - - "cinder-ceph:storage-backend"
+ - "cinder:storage-backend"
+ - - "ceph:client"
+ - "nova-compute:ceph"
+ - - "cinder:shared-db"
+ - "percona-cluster:shared-db"
+ - - "ceph:client"
+ - "cinder-ceph:ceph"
+ - - "ceph:client"
+ - "glance:ceph"
+ - - "ceph-osd:mon"
+ - "ceph:osd"
+ - - "ceph-radosgw:mon"
+ - "ceph:radosgw"
+ - - "ceph-radosgw:identity-service"
+ - "keystone:identity-service"
+
+trusty-liberty-nodes:
+ inherits: openstack-phase1
+ overrides:
+ series: trusty
+
+trusty-liberty:
+ inherits: openstack-phase2
+ overrides:
+# cluster_count: 3
+ #os-data-network: 10.4.8.0/21
+ #prefer-ipv6: true
+ region: Canonical
+ source: "cloud:trusty-liberty"
+ "openstack-origin": "cloud:trusty-liberty"
+ series: trusty
+ ceph-osd-replication-count: 2
+ admin-role: admin
+ keystone-admin-role: admin
+
+trusty-kilo-nodes:
+ inherits: openstack-phase1
+ overrides:
+ series: trusty
+
trusty-kilo:
- inherits: openstack-services
+ inherits: openstack-phase2
overrides:
- openstack-origin: cloud:trusty-kilo
-trusty-juno:
- inherits: openstack-services
+# cluster_count: 3
+ #os-data-network: 10.4.8.0/21
+ #prefer-ipv6: true
+ region: Canonical
+ source: "cloud:trusty-kilo"
+ "openstack-origin": "cloud:trusty-kilo"
+ series: trusty
+ ceph-osd-replication-count: 2
+ admin-role: admin
+ keystone-admin-role: admin
+
+trusty-juno-nodes:
+ inherits: openstack-phase1
overrides:
- openstack-origin: cloud:trusty-juno
-trusty-icehouse:
- inherits: openstack-services
+ series: trusty
+trusty-juno:
+ inherits: openstack-phase2
+ overrides:
+# cluster_count: 3
+ #os-data-network: 10.4.8.0/21
+ #prefer-ipv6: true
+ region: Canonical
+ source: "cloud:trusty-juno"
+ "openstack-origin": "cloud:trusty-juno"
+ series: trusty
+ ceph-osd-replication-count: 2
+ admin-role: admin
+ keystone-admin-role: admin