diff --git a/src/README.md b/src/README.md index c01cee6..6f85c5e 100644 --- a/src/README.md +++ b/src/README.md @@ -12,20 +12,14 @@ Usage Boot things up by using: - juju deploy -n 3 --config ceph.yaml ceph-mon - juju deploy -n 3 --config ceph.yaml ceph-osd + juju deploy -n 3 ceph-mon + juju deploy -n 3 ceph-osd + In my example deployments on EC2 the following ceph.yaml will work: -``` -ceph-mon: - source: cloud:trusty-mitaka -ceph-osd: - osd-devices: /dev/xvdb - ephemeral-unmount: "/mnt" - source: cloud:trusty-mitaka -``` + You can then deploy this charm by simply doing: - juju deploy --config ceph.yaml ceph-fs + juju deploy ceph-fs juju add-relation ceph-fs ceph-mon Once the ceph-mon and osd charms have bootstrapped the cluster, the ceph-mon diff --git a/src/config.yaml b/src/config.yaml index 20dd015..124b2fe 100644 --- a/src/config.yaml +++ b/src/config.yaml @@ -1,13 +1,4 @@ options: - ceph-public-network: - type: string - default: - description: | - The IP address and netmask of the public (front-side) network (e.g., - 192.168.0.0/24) - . - If multiple networks are to be used, a space-delimited list of a.b.c.d/x - can be provided. loglevel: default: 1 type: int @@ -49,4 +40,4 @@ options: NOTE: these charms do not currently support IPv6 privacy extension. In order for this charm to function correctly, the privacy extension must be disabled and a non-temporary address must be configured/available on - your network interface. \ No newline at end of file + your network interface. diff --git a/src/icon.svg b/src/icon.svg index e092eef..de53ab2 100644 --- a/src/icon.svg +++ b/src/icon.svg @@ -1,279 +1,414 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + diff --git a/src/layer.yaml b/src/layer.yaml index c691470..d22dc1e 100644 --- a/src/layer.yaml +++ b/src/layer.yaml @@ -1,4 +1,4 @@ -includes: ['layer:apt', 'layer:ceph-base', 'interface:ceph-mds'] # if you use any interfaces, add them here +includes: ['layer:apt', 'layer:ceph-base', 'interface:ceph-mds'] options: apt: packages: diff --git a/src/tests/basic_deployment.py b/src/tests/basic_deployment.py index 28683bb..689a750 100644 --- a/src/tests/basic_deployment.py +++ b/src/tests/basic_deployment.py @@ -81,14 +81,10 @@ class CephFsBasicDeployment(OpenStackAmuletDeployment): """Configure all of the services. :param **kwargs: """ - # Include a non-existent device as osd-devices is a whitelist, - # and this will catch cases where proposals attempt to change that. + # NOTE(jamespage): fix fsid to allow later validation ceph_mon_config = { - 'monitor-count': '3', - 'auth-supported': 'none', 'fsid': '6547bd3e-1397-11e2-82e5-53567c8d32dc', } - # Include a non-existent device as osd-devices is a whitelist, # and this will catch cases where proposals attempt to change that. ceph_osd_config = { @@ -184,9 +180,9 @@ class CephFsBasicDeployment(OpenStackAmuletDeployment): 'err to syslog': 'false', 'clog to syslog': 'false', 'mon cluster log to syslog': 'false', - 'auth cluster required': 'none', - 'auth service required': 'none', - 'auth client required': 'none' + 'auth cluster required': 'cephx', + 'auth service required': 'cephx', + 'auth client required': 'cephx' }, 'mon': { 'keyring': '/var/lib/ceph/mon/$cluster-$id/keyring' diff --git a/src/wheelhouse.txt b/src/wheelhouse.txt index 8501e11..bbb9970 100644 --- a/src/wheelhouse.txt +++ b/src/wheelhouse.txt @@ -1 +1,3 @@ +netifaces +dnspython3 ceph_api