series: trusty
services:
  "ceph-radosgw-hacluster":
    charm: "cs:trusty/hacluster-26"
    options:
      corosync_transport: unicast
  "rabbitmq-server":
    charm: "cs:trusty/rabbitmq-server-42"
    num_units: 2
    options:
      "access-network": 10.201.16.0/22
      source: "cloud:trusty-liberty"
    to:
      - "lxc:0"
      - "lxc:1"
  "ceph-radosgw":
    charm: "cs:trusty/ceph-radosgw-18"
    num_units: 2
    options:
      "os-public-hostname": store.os.sparkv.net
      source: "cloud:trusty-liberty"
      "use-embedded-webserver": true
      vip: 10.201.16.17
    to:
      - "lxc:0"
      - "lxc:1"
  heat:
    charm: "cs:trusty/heat-12"
    num_units: 1
    options:
      "openstack-origin": "cloud:trusty-liberty"
    to:
      - "lxc:1"
  memcached:
    charm: "cs:trusty/memcached-11"
    num_units: 1
    options:
      "allow-ufw-ip6-softfail": true
    to:
      - "lxc:1"
  mongodb:
    charm: "cs:trusty/mongodb-28"
    num_units: 1
    to:
      - "lxc:0"
  mysql:
    charm: "cs:trusty/mysql-30"
    num_units: 1
    options:
      "max-connections": 1024
    to:
      - "lxc:0"
  "neutron-gateway":
    charm: "cs:trusty/neutron-gateway-7"
    num_units: 2
    options:
      "ext-port": eth1
      "openstack-origin": "cloud:trusty-liberty"
    to:
      - "0"
      - "1"
  "openstack-dashboard":
    charm: "cs:trusty/openstack-dashboard-19"
    num_units: 2
    options:
      "neutron-network-firewall": true
      "neutron-network-lb": true
      "neutron-network-vpn": true
      "openstack-origin": "cloud:trusty-liberty"
      "ubuntu-theme": "no"
      vip: 10.201.16.16
      vip_cidr: 22
      webroot: /
    to:
      - "lxc:0"
      - "lxc:1"
  "keystone-hacluster":
    charm: "cs:trusty/hacluster-26"
    options:
      corosync_transport: unicast
  "nova-cloud-controller-hacluster":
    charm: "cs:trusty/hacluster-26"
    options:
      corosync_transport: unicast
  "cinder-cph-hacluster":
    charm: "cs:trusty/hacluster-26"
    options:
      corosync_transport: unicast
  "cinder-ceph":
    charm: "cs:trusty/cinder-ceph-14"
  "openstack-dashboard-hacluster":
    charm: "cs:trusty/hacluster-26"
    options:
      corosync_transport: unicast
  "neutron-api-hacluster":
    charm: "cs:trusty/hacluster-26"
    options:
      corosync_transport: unicast
  ceph:
    charm: "cs:trusty/ceph-42"
    num_units: 3
    options:
      fsid: "015cc90c-8f06-11e5-be28-0050569a302e"
      "monitor-secret": AQB3QU5WiW3GEhAAVLK19SNzR46kKdfuM6/d5Q==
      "osd-reformat": "yes"
      source: "cloud:trusty-liberty"
    to:
      - "lxc:0"
      - "lxc:0"
      - "lxc:1"
  "ceph-osd-n1":
    charm: "cs:trusty/ceph-osd-14"
    num_units: 1
    options:
      "osd-devices": /dev/sdb /dev/sdc /dev/sdd
      "osd-reformat": "yes"
      source: "cloud:trusty-liberty"
    to:
      - "2"
  "nova-compute":
    charm: "cs:trusty/nova-compute-34"
    num_units: 2
    options:
      "enable-live-migration": true
      "enable-resize": true
      "libvirt-image-backend": rbd
      "migration-auth-type": ssh
      "openstack-origin": "cloud:trusty-liberty"
    to:
      - "2"
      - "3"
  "ceph-osd-n2":
    charm: "cs:trusty/ceph-osd-14"
    num_units: 1
    options:
      "osd-devices": /dev/sdb /dev/sdc /dev/sdd
      "osd-reformat": "yes"
      source: "cloud:trusty-liberty"
    to:
      - "3"
  glance:
    charm: "cs:trusty/glance-28"
    num_units: 2
    options:
      "openstack-origin": "cloud:trusty-liberty"
      vip: 10.201.16.13
      vip_cidr: 22
    to:
      - "lxc:0"
      - "lxc:1"
  keystone:
    charm: "cs:trusty/keystone-31"
    num_units: 2
    options:
      "openstack-origin": "cloud:trusty-liberty"
      vip: 10.201.16.12
      vip_cidr: 22
    to:
      - "lxc:0"
      - "lxc:1"
  "cinder-cph":
    charm: "cs:trusty/cinder-31"
    num_units: 2
    options:
      "block-device": None
      "openstack-origin": "cloud:trusty-liberty"
      vip: 10.201.16.14
      vip_cidr: 22
    to:
      - "lxc:0"
      - "lxc:1"
  "glance-hacluster":
    charm: "cs:trusty/hacluster-26"
    options:
      corosync_transport: unicast
  ntp:
    charm: "cs:trusty/ntp-14"
    options:
      source: 0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org
  "nova-cloud-controller":
    charm: "cs:trusty/nova-cloud-controller-64"
    num_units: 2
    options:
      "console-access-protocol": vnc
      "network-manager": Neutron
      "neutron-external-network": "ext-net"
      "openstack-origin": "cloud:trusty-liberty"
      "single-nova-consoleauth": false
      vip: 10.201.16.10
      vip_cidr: 22
    to:
      - "lxc:0"
      - "lxc:1"
  ceilometer:
    charm: "cs:trusty/ceilometer-15"
    num_units: 1
    options:
      "openstack-origin": "cloud:trusty-liberty"
    to:
      - "lxc:1"
  "neutron-api":
    charm: "cs:trusty/neutron-api-21"
    num_units: 2
    options:
      "enable-l3ha": true
      "network-device-mtu": 9000
      "neutron-external-network": "ext-net"
      "neutron-security-groups": true
      "openstack-origin": "cloud:trusty-liberty"
      "overlay-network-type": vxlan
      vip: 10.201.16.11
      vip_cidr: 22
    to:
      - "lxc:0"
      - "lxc:1"
  "ceilometer-agent":
    charm: "cs:trusty/ceilometer-agent-11"
    options:
      "openstack-origin": "cloud:trusty-liberty"
  "neutron-openvswitch":
    charm: "cs:trusty/neutron-openvswitch-13"
    options:
      "ext-port": eth1
relations:
  - - "nova-cloud-controller:amqp"
    - "rabbitmq-server:amqp"
  - - "keystone:ha"
    - "keystone-hacluster:ha"
  - - "nova-cloud-controller:memcache"
    - "memcached:cache"
  - - "ceilometer-agent:container"
    - "keystone:juju-info"
  - - "cinder-cph:amqp"
    - "rabbitmq-server:amqp"
  - - "nova-cloud-controller:identity-service"
    - "keystone:identity-service"
  - - "cinder-cph:image-service"
    - "glance:image-service"
  - - "glance:ceph"
    - "ceph:client"
  - - "ceilometer:identity-service"
    - "keystone:identity-service"
  - - "cinder-cph:identity-service"
    - "keystone:identity-service"
  - - "ceph-radosgw:mon"
    - "ceph:radosgw"
  - - "cinder-cph:cinder-volume-service"
    - "nova-cloud-controller:cinder-volume-service"
  - - "nova-cloud-controller:ha"
    - "nova-cloud-controller-hacluster:ha"
  - - "cinder-cph:ha"
    - "cinder-cph-hacluster:ha"
  - - "mysql:shared-db"
    - "keystone:shared-db"
  - - "heat:amqp"
    - "rabbitmq-server:amqp"
  - - "nova-compute:cloud-compute"
    - "nova-cloud-controller:cloud-compute"
  - - "neutron-openvswitch:amqp"
    - "rabbitmq-server:amqp"
  - - "neutron-api:neutron-api"
    - "nova-cloud-controller:neutron-api"
  - - "ntp:juju-info"
    - "nova-compute:juju-info"
  - - "glance:image-service"
    - "nova-compute:image-service"
  - - "ceilometer:ceilometer-service"
    - "ceilometer-agent:ceilometer-service"
  - - "openstack-dashboard:ha"
    - "openstack-dashboard-hacluster:ha"
  - - "cinder-ceph:ceph"
    - "ceph:client"
  - - "neutron-api:amqp"
    - "rabbitmq-server:amqp"
  - - "nova-cloud-controller:shared-db"
    - "mysql:shared-db"
  - - "heat:identity-service"
    - "keystone:identity-service"
  - - "neutron-gateway:neutron-plugin-api"
    - "neutron-api:neutron-plugin-api"
  - - "neutron-gateway:amqp"
    - "rabbitmq-server:amqp"
  - - "neutron-gateway:quantum-network-service"
    - "nova-cloud-controller:quantum-network-service"
  - - "cinder-cph:shared-db"
    - "mysql:shared-db"
  - - "ntp:juju-info"
    - "neutron-gateway:juju-info"
  - - "ceilometer:amqp"
    - "rabbitmq-server:amqp"
  - - "neutron-gateway:amqp-nova"
    - "rabbitmq-server:amqp"
  - - "neutron-api:shared-db"
    - "mysql:shared-db"
  - - "nova-compute:amqp"
    - "rabbitmq-server:amqp"
  - - "neutron-openvswitch:neutron-plugin"
    - "nova-compute:neutron-plugin"
  - - "heat:shared-db"
    - "mysql:shared-db"
  - - "ceilometer-agent:nova-ceilometer"
    - "nova-compute:nova-ceilometer"
  - - "openstack-dashboard:identity-service"
    - "keystone:identity-service"
  - - "glance:shared-db"
    - "mysql:shared-db"
  - - "ceilometer:identity-notifications"
    - "keystone:identity-notifications"
  - - "neutron-api:identity-service"
    - "keystone:identity-service"
  - - "cinder-cph:storage-backend"
    - "cinder-ceph:storage-backend"
  - - "neutron-gateway:shared-db"
    - "mysql:shared-db"
  - - "glance:identity-service"
    - "keystone:identity-service"
  - - "neutron-api:ha"
    - "neutron-api-hacluster:ha"
  - - "nova-compute:shared-db"
    - "mysql:shared-db"
  - - "ceph-radosgw-hacluster:ha"
    - "ceph-radosgw:ha"
  - - "nova-compute:ceph"
    - "ceph:client"
  - - "neutron-openvswitch:neutron-plugin-api"
    - "neutron-api:neutron-plugin-api"
  - - "ceph-radosgw:identity-service"
    - "keystone:identity-service"
  - - "glance:ha"
    - "glance-hacluster:ha"
  - - "glance:image-service"
    - "nova-cloud-controller:image-service"
  - - "ceph:osd"
    - "ceph-osd-n2:mon"
  - - "ceph:osd"
    - "ceph-osd-n1:mon"
  - - "ceilometer:shared-db"
    - "mongodb:database"
machines:
  "0":
    series: trusty
    constraints: "arch=amd64 cpu-cores=4 mem=24576"
  "1":
    series: trusty
    constraints: "arch=amd64 cpu-cores=4 mem=24576"
  "2":
    series: trusty
    constraints: "arch=amd64 cpu-cores=40 mem=131072"
  "3":
    series: trusty
    constraints: "arch=amd64 cpu-cores=40 mem=131072"
