summaryrefslogtreecommitdiffstats
path: root/ci/onos/juju-deployer/ovs-onos-ha.yaml
diff options
context:
space:
mode:
authorNarinder Gupta <narinder.gupta@canonical.com>2016-06-07 11:08:15 -0500
committerNarinder Gupta <narinder.gupta@canonical.com>2016-06-07 14:50:38 -0500
commita974eb71bd5a89062ff5a1899703ef22ba41852e (patch)
tree10b3a7584c37921c7dd3288f5020e0fd6cff6a26 /ci/onos/juju-deployer/ovs-onos-ha.yaml
parentcf4fbcbbfa5b7132be324717499d9d13f9452b3d (diff)
modified the onos deployment as per new process where charms were
downloaded first then deployment started. Change-Id: I97711241121577200d1223764c84e91cc1be05cb Signed-off-by: Narinder Gupta <narinder.gupta@canonical.com>
Diffstat (limited to 'ci/onos/juju-deployer/ovs-onos-ha.yaml')
-rw-r--r--ci/onos/juju-deployer/ovs-onos-ha.yaml499
1 files changed, 227 insertions, 272 deletions
diff --git a/ci/onos/juju-deployer/ovs-onos-ha.yaml b/ci/onos/juju-deployer/ovs-onos-ha.yaml
index a4cfa366..a6ad0efa 100644
--- a/ci/onos/juju-deployer/ovs-onos-ha.yaml
+++ b/ci/onos/juju-deployer/ovs-onos-ha.yaml
@@ -1,91 +1,211 @@
# vim: set ts=2 et:
+trusty-mitaka-nodes:
+ inherits: openstack-phase1
+ overrides:
+ series: trusty
+
+trusty-mitaka:
+ inherits: openstack-phase2
+ overrides:
+ #os-data-network: 10.4.8.0/21
+ #ceph-cluster-network: 10.4.0.0/21
+ #prefer-ipv6: true
+ #enable-dvr: true
+ #l2-population: true
+ region: Canonical
+ #source: "cloud:trusty-mitaka"
+ openstack-origin: "cloud:trusty-mitaka"
+ series: trusty
+ #ceph-osd-replication-count: 2
+ admin-role: admin
+ keystone-admin-role: admin
+
openstack-phase1:
series: trusty
services:
- nodes-api:
- charm: "cs:trusty/ubuntu"
- num_units: 3
- constraints: tags=control
- nodes-compute:
- charm: "cs:trusty/ubuntu"
- num_units: 2
- constraints: tags=compute
+ nodes:
+ charm: "local:trusty/ubuntu"
+ num_units: 5
ntp:
- charm: "cs:trusty/ntp"
+ charm: "local:trusty/ntp"
relations:
- - "ntp:juju-info"
- - "nodes-api:juju-info"
- - - "ntp:juju-info"
- - "nodes-compute:juju-info"
+ - "nodes:juju-info"
+
openstack-phase2:
inherits: openstack-phase1
+ relations:
+ - - "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-onos:neutron-plugin-api-subordinate"
+ - - "nova-compute:neutron-plugin"
+ - "openvswitch-onos:neutron-plugin"
+ - - "neutron-gateway"
+ - "openvswitch-onos"
+ - - "openvswitch-onos:ovsdb-manager"
+ - "onos-controller:ovsdb-manager"
+ - - "neutron-api-onos:onos-controller"
+ - "onos-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"
+ #- - nova-compute:lxd
+ #- lxd:lxd
+
services:
- percona-cluster:
- branch: "lp:~openstack-charmers/charms/trusty/percona-cluster/next"
- num_units: 3
- options:
- 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"
+ charm: "local:trusty/hacluster"
options:
corosync_key: |
'QisjNpoKHLkvyc3PEdDHP5VZjgD0kOk9t0ABPWmCELlu5AgWgnW6bJd34BVXO7VhW+3ZwNQM3W+bZ3pl28ftY4ki4N/S0KLFNia5egFgiA3AH2QXLnokS7OYXuu6GMJJ1S5mDe6P5zU+tfJe/Mebq24u7CgR0gAvohSPRdDTwdY='
hacluster-horizon:
- branch: "lp:~openstack-charmers/charms/trusty/hacluster/next"
+ charm: "local:trusty/hacluster"
options:
corosync_key: |
'aCVPHw6XYne+Hxv0WPiM3+yEfeIxs0Ly0EMKB494Rdzjf5rE52GcXqqxuvIa/nXJ4GCR+UdKk9FEwcASfYkeu3HDWUld9uTE6pOc+ibWYnybNH7VBfEHW8h9YmQKs3HD2T3wlTcS2irU4CUW7/IKNok4etYdM3iFn1K2ReSGXEI='
hacluster-nova:
- branch: "lp:~openstack-charmers/charms/trusty/hacluster/next"
+ charm: "local:trusty/hacluster"
options:
corosync_key: |
'gel86qmEze8dYKYbfqIgRpqapJpKtdYL2hxC1y5nWYBPq7EMf6V8mF01IjeUkSRs14CUDrsPpT4PWeom7EOY2fleuLx/aIuqQUfEDkhf/gvaz7BaU4hrmTCoDBK7/HvEwY+/wu4qkEeckzSRPsm9MYzqnLRshh8yjZJ70xU/mmk='
- hacluster-neutron:
- branch: "lp:~openstack-charmers/charms/trusty/hacluster/next"
+ hacluster-neutron:
+ charm: "local:trusty/hacluster"
options:
corosync_key: |
'KNhb4++3jlllbnscS5D3qdzOJDsQPEeZ7zOLZJHbkKrRjX9gRCijVVOiv2JCvq03HqQ7LIufQzWGl9Za8qh0f6QmQ3XhFh/Cb/3WaYFj+tEf0zArWv+8miswmM1z4eyTSrTWBq0dTgx1z96wjBxP5HV0+1LWW+3Ei4oZWyRGeR0='
hacluster-glance:
- branch: "lp:~openstack-charmers/charms/trusty/hacluster/next"
+ charm: "local:trusty/hacluster"
options:
corosync_key: |
'el1dd8107J5mwQDPS7tEJPZrr0XFfL95+Tku/QG90W5Q5f5SP4W8TRfKvddGmZWZl2lVd1neG5WqaHa1mq/aScJpoflzVAJCvshN7Gd2AjHhLNNugeI8S90j/7wrKUhqiCAlkKaeri2xs5bB5PZ7Z9AHuNZL7SW1al8lxrKhUFI='
hacluster-ceilometer:
- branch: "lp:~openstack-charmers/charms/trusty/hacluster/next"
+ charm: "local:trusty/hacluster"
options:
corosync_key: |
'cHkgKGJpdHMgPSA5NjApLgpQcmVzcyBrZXlzIG9uIHlvdXIga2V5Ym9hcmQgdG8gZ2VuZXJhdGUgZW50cm9weSAoYml0cyA9IDEwMDgpLgpXcml0aW5nIGNvcm9zeW5jIGtleSB0byAvZXRjL2Nvcm9zeW5jL2F1dGhrZXkuCg=='
+ percona-cluster:
+ charm: "local:trusty/percona-cluster"
+ num_units: 3
+ options:
+ dataset-size: 2G
+ lp1366997-workaround: true
+ max-connections: 10000
+ root-password: 293rhc395m
+ sst-password: 127rc14t51
+ vip: 10.4.1.15
+ to:
+ - "lxc:nodes=1"
+ - "lxc:nodes=2"
+ - "lxc:nodes=3"
ceilometer:
- branch: "lp:~openstack-charmers/charms/trusty/ceilometer/next"
+ charm: "local:trusty/ceilometer"
num_units: 3
options:
vip: 10.4.1.14
to:
- - "lxc:nodes-api=2"
- - "lxc:nodes-api=0"
- - "lxc:nodes-api=1"
+ - "lxc:nodes=2"
+ - "lxc:nodes=3"
+ - "lxc:nodes=4"
ceilometer-agent:
- branch: "lp:~openstack-charmers/charms/trusty/ceilometer-agent/next"
+ charm: "local:trusty/ceilometer-agent"
mongodb:
- charm: "cs:trusty/mongodb"
- num_units: 1
+ charm: "local:trusty/mongodb"
to:
- - "lxc:nodes-api=0"
+ - "lxc:nodes=0"
heat:
- branch: "lp:~openstack-charmers/charms/trusty/heat/next"
+ charm: "local:trusty/heat"
to:
- - "lxc:nodes-api=0"
+ - "lxc:nodes=0"
ceph:
- branch: "lp:~openstack-charmers/charms/trusty/ceph/next"
+ charm: "local:trusty/ceph"
num_units: 3
options:
fsid: 5a791d94-980b-11e4-b6f6-3c970e8b1cf7
@@ -96,88 +216,87 @@ openstack-phase2:
# ceph-cluster-network: 192.168.0.0/24
# ceph-public-network: 192.168.0.0/24
to:
- - "lxc:nodes-api=2"
- - "lxc:nodes-api=0"
- - "lxc:nodes-api=1"
+ - "lxc:nodes=3"
+ - "lxc:nodes=4"
+ - "lxc:nodes=0"
ceph-osd:
- branch: "lp:~openstack-charmers/charms/trusty/ceph-osd/next"
- num_units: 2
+ charm: "local:trusty/ceph-osd"
+ num_units: 3
options:
osd-devices: /srv
osd-reformat: 'yes'
to:
- - "nodes-compute=0"
- - "nodes-compute=1"
+ - "nodes=2"
+ - "nodes=3"
+ - "nodes=4"
ceph-radosgw:
- branch: "lp:~openstack-charmers/charms/trusty/ceph-radosgw/next"
- num_units: 3
+ charm: "local:trusty/ceph-radosgw"
options:
use-embedded-webserver: true
operator-roles: "Member,admin"
to:
- - "lxc:nodes-api=1"
- - "lxc:nodes-api=0"
- - "lxc:nodes-api=2"
+ - "lxc:nodes=0"
cinder:
- branch: "lp:~openstack-charmers/charms/trusty/cinder/next"
+ charm: "local:trusty/cinder"
num_units: 3
options:
block-device: None
glance-api-version: 2
# ha-mcastport: 5401
to:
- - "lxc:nodes-api=2"
- - "lxc:nodes-api=0"
- - "lxc:nodes-api=1"
+ - "lxc:nodes=4"
+ - "lxc:nodes=0"
+ - "lxc:nodes=1"
cinder-ceph:
- branch: "lp:~openstack-charmers/charms/trusty/cinder-ceph/next"
- rabbitmq-server:
- branch: "lp:~openstack-charmers/charms/trusty/rabbitmq-server/next"
+ charm: "local:trusty/cinder-ceph"
+ rabbitmq-server:
+ charm: "local:trusty/rabbitmq-server"
num_units: 3
to:
- - "lxc:nodes-api=0"
- - "lxc:nodes-api=1"
- - "lxc:nodes-api=2"
- keystone:
- branch: "lp:~openstack-charmers/charms/trusty/keystone/next"
+ - "lxc:nodes=0"
+ - "lxc:nodes=1"
+ - "lxc:nodes=2"
+ keystone:
+ charm: "local:trusty/keystone"
num_units: 3
- options:
+ options:
# ha-mcastport: 5402
admin-password: openstack
admin-token: admin
vip: 10.4.1.13
to:
- - "lxc:nodes-api=1"
- - "lxc:nodes-api=0"
- - "lxc:nodes-api=2"
- openstack-dashboard:
- branch: "lp:~openstack-charmers/charms/trusty/openstack-dashboard/next"
+ - "lxc:nodes=1"
+ - "lxc:nodes=2"
+ - "lxc:nodes=3"
+ openstack-dashboard:
+ charm: "local:trusty/openstack-dashboard"
num_units: 3
- options:
+ options:
secret: admin
vip: 10.4.1.11
webroot: /
to:
- - "lxc:nodes-api=2"
- - "lxc:nodes-api=0"
- - "lxc:nodes-api=1"
- nova-compute:
- branch: lp:~openstack-charmers/charms/trusty/nova-compute/next
- num_units: 2
- options:
+ - "lxc:nodes=2"
+ - "lxc:nodes=3"
+ - "lxc:nodes=4"
+ nova-compute:
+ charm: local:trusty/nova-compute
+ num_units: 4
+ options:
enable-live-migration: true
enable-resize: true
manage-neutron-plugin-legacy-mode: false
migration-auth-type: ssh
+ #hugepages: "50%"
+ #virt-type: lxd``
to:
- - "nodes-compute=0"
- - "nodes-compute=1"
-# - "nodes-api=0"
-# - "nodes-api=1"
-# - "nodes-api=2"
+ - "nodes=1"
+ - "nodes=2"
+ - "nodes=3"
+ - "nodes=4"
nova-cloud-controller:
- branch: "lp:~openstack-charmers/charms/trusty/nova-cloud-controller/next"
+ charm: "local:trusty/nova-cloud-controller"
num_units: 3
options:
console-access-protocol: novnc
@@ -185,218 +304,54 @@ openstack-phase2:
service-guard: true
vip: 10.4.1.16
to:
- - "lxc:nodes-api=1"
- - "lxc:nodes-api=0"
- - "lxc:nodes-api=2"
+ - "lxc:nodes=3"
+ - "lxc:nodes=4"
+ - "lxc:nodes=0"
neutron-api:
- branch: lp:~openstack-charmers/charms/trusty/neutron-api/next
+ charm: local:trusty/neutron-api
num_units: 3
options:
neutron-security-groups: True
+ flat-network-providers: "*"
manage-neutron-plugin-legacy-mode: False
vip: 10.4.1.17
to:
- - "lxc:nodes-api=2"
- - "lxc:nodes-api=0"
- - "lxc:nodes-api=1"
+ - "lxc:nodes=4"
+ - "lxc:nodes=0"
+ - "lxc:nodes=1"
neutron-gateway:
- branch: "lp:~wuwenbin2/onosfw/neutron-gateway"
+ charm: "local:trusty/neutron-gateway"
options:
#ext-port: "eth1"
plugin: onos
instance-mtu: 1400
to:
- - "nodes-api=0"
+ - "nodes=0"
onos-controller:
- branch: "lp:~wuwenbin2/onosfw/onos-controller"
+ charm: "local:trusty/onos-controller"
options:
#ext-port: "eth1"
#gateway-mac: "default"
to:
- - "lxc:nodes-api=1"
+ - "lxc:nodes=0"
glance:
- branch: lp:~openstack-charmers/charms/trusty/glance/next
+ charm: local:trusty/glance
num_units: 3
options:
vip: 10.4.1.12
# ha-mcastport: 5402
to:
- - "lxc:nodes-api=2"
- - "lxc:nodes-api=0"
- - "lxc:nodes-api=1"
+ - "lxc:nodes=0"
+ - "lxc:nodes=1"
+ - "lxc:nodes=2"
opnfv-promise:
- branch: lp:~narindergupta/charms/trusty/promise/trunk
- num_units: 1
+ charm: local:trusty/promise
to:
- - "lxc:nodes-api=2"
+ - "lxc:nodes=0"
neutron-api-onos:
- branch: "lp:~wuwenbin2/onosfw/neutron-api-onos"
+ charm: "local:trusty/neutron-api-onos"
options:
overlay-network-type: 'vxlan'
security-groups: True
openvswitch-onos:
- branch: "lp:~wuwenbin2/onosfw/openvswitch-onos"
- relations:
- - - "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-onos:neutron-plugin-api-subordinate"
- - - "nova-compute:neutron-plugin"
- - "openvswitch-onos:neutron-plugin"
- - - "neutron-gateway"
- - "openvswitch-onos"
- - - "openvswitch-onos:ovsdb-manager"
- - "onos-controller:ovsdb-manager"
- - - "neutron-api-onos:onos-controller"
- - "onos-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
- #ceph-cluster-network: 10.4.0.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-phase2
- overrides:
- cluster_count: 3
- #os-data-network: 10.4.8.0/21
- #ceph-cluster-network: 10.4.0.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:
- series: trusty
-
-trusty-juno:
- inherits: openstack-phase2
- overrides:
- cluster_count: 3
- #os-data-network: 10.4.8.0/21
- #ceph-cluster-network: 10.4.0.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
-
+ charm: "local:trusty/openvswitch-onos"