Its possible that a remote client unit will present its broker
request prior to the Ceph MON cluster being bootstrapped; ensure
that any client-relation-changed hooks are re-executed after
bootstrap to process any pending broker requests.
Change-Id: Id412a6b3503e00bd870ccb8f3acc5f3957c23f5d
Closes-Bug: 1734620
Use the remove command (instead of rm) which is supported in
Ceph firefly or later (which covers all current deployment targets).
This resolves an issue with the ceph -> ceph-mon/ceph-osd migration
process for Luminous based deployments.
Change-Id: I127930e7c4b80465796b8270a9966b08f7c03037
Closes-Bug: 1729370
Add new relation to support bootstrapping a new deployment
of the ceph-mon charm from an existing ceph charm deployment,
supporting migration away from the deprecated ceph charm.
Each member of the existing ceph application will present
the required fsid and monitor-secret values, as well as its
public address so that the related ceph-mon units can
correctly seed from the exisitng MON cluster.
Provide stop hook implementation, which will leaves OSD
services running but will remove the ceph.conf provided
directly from this charm, falling back to ceph.conf provided
by other charms installed on the same machine. MON and MGR
services will be shutdown and disabled.
Closes-Bug: 1665159
Change-Id: I9bd1d7630a8eff53c65cb0f07d17e095fc7f32a9
Depends-On: Iac34d1bee4b51b55dfb3d14d315aae8526a0893c
Bring ceph charm inline with ceph-mon and ceph-osd charms,
supporting all upgrades paths for trusty and xenial deployments.
Change-Id: I8284e1f9b583b34cb68babec69407edc14c04930
Closes-Bug: 1662863
juju_availability_zone is not a valid configuration setting, let's use
'rack' instead.
Change-Id: I9ffe609337805a188990c9516fe3e79025694f56
Closes-Bug: #1684330
Add highly experimental support for bluestore storage format for
OSD devices; this is disabled by default and should only be enabled
in deployments where loss of data does not present a problem!
Change-Id: I67323e26a4698de4e08c8c755db232399f7fed02
Depends-On: I36f7aa9d7b96ec5c9eaa7a3a970593f9ca14cb34
Use determine_packages() to avoid installing NTP when in a container.
Sync charms.ceph to get ceph.determine_packages().
Change-Id: Ia00af86964d8f77e615367cbcde35a4d7d10774c
Partial-Bug: #1690513
Resync charmhelpers for pike versioning.
Add tests for pike targets, but disable until all charms support
pike.
Change-Id: I513acf13ceec8b9b4446d8c3292b18e7b9760e4a
- sync charmhelpers with fix-alpha helpers
- fix up code where the alpha comparisons are done
- fix tests which assumed mocks would just work on os_release()
Change-Id: Ie1a70a68e61f0460a9b60436643d9f5173e30105
Related-Bug: #1659575
This change skips over any devices which does not start with a leading
folder separator ('/'). Allowing such entries causes an OSD to be
created out of the charm directory. This can be caused by something as
innocuous as 2 spaces between devices. The result is that the root
device is also running an OSD, which is undesirable.
Change-Id: I5b52096da0b6f100ae9835c339905585425b27ae
Closes-Bug: 1652175
- Add Zesty as a supported series to metadata.yaml.
- Turn on Xenial-Ocata Amulet test definitions.
- Sync charm helpers to get Juju 2.x amulet compatibility.
- Keeping Zesty-Ocata Amulet test definitions turned off until the
metadata.yaml changes propagate to the charm store.
- Resync tox.ini to resolve amulet test failures.
Change-Id: Id0c204f273caa9f0f585dcf505975ba685349ad0
Only check for upgrade requests if the local unit is installed
and bootstrapped, avoiding attempts to upgrade on initial
execution of config-changed for trusty UCA pockets.
Note that the upgrade process relies on a running ceph cluster.
Change-Id: Ia3efe2f8cfdac4317809681e7d169725c6bd9ef2
Closes-Bug: 1662943
This function is no longer necessary as we do
not need to ensure that the remote units can
create their own pools
Change-Id: I7e46b97ad2bb18a6e11a393a34f40e9bf51445c7
Partial-Bug: 1424771
This is to support ceph-osd requesting movement
of OSD devices into various buckets.
This also implements the osd side with
an action to move a disk
Change-Id: I609ceb8662b20ca06b71d66696d101bda799e25c
This action is fairly simple in that it returns
a list of unmounted disks
This also includes a git-sync to pull in charms.ceph
changes.
Change-Id: Idb6eabd565b0a9951bb0b212b81a57497ada56f1
Closes-Bug: 1645481
Addition of configurable availability_zone allows the
administrator to deploy Ceph with two dimensions of
crush locations, one from config and one from Juju's
availability zone
Change-Id: Icd0ee2eeaea8bad2b78f2ed46176084e01601261
The nrpe ceph status script relies on lockfile-create, but
lockfile-progs (package containing lockfile-create) was missing from
the install. Install it when related to nagios, and on upgrade-charm
when related to nagios.
Change-Id: I0addf9993d486a4d305dd554237efe554d4608d4
Closes-Bug: #1629104
- Remove Precise-Icehouse Amulet test definitions if they exist.
- Add Xenial-Newton Amulet test definitions.
- Add Yakkety-Newton Amulet test definitions.
- Use the percona-cluster charm in tests instead of the mysql charm.
Change-Id: I74764b639dad616060c7fa7c2ccbad1e283e1f9d
upgrade-charm could previously fail because of compiled bytecode
remaining behind. This change makes the upgrade-charm hook remove
any such compiled bytecode files
Change-Id: I1cb6521cab1ac0d529907d44f1e9bdb313a798ac
Closes-Bug: 1628322
The rolling upgrade code sets keys in the ceph mon
cluster to discover whether it can upgrade itself. This
patch addresses an issue where the upgrade code was not
taking into account multiple upgrades to newer ceph versions
in a row.
Change-Id: Icae681e1817ce50039ef22a0677398fe84057bf7
Juju 2.0 provides support for display of the version of
an application deployed by a charm in juju status.
Insert the application_version_set function into the
existing assess_status function - this gets called after
all hook executions, and periodically after that, so any
changes in package versions due to normal system updates
will also be reflected in the status output.
This review also includes a resync of charm-helpers to
pickup hookenv support for this feature.
Change-Id: I22763c26a28d397688f02845f0acb8021320a5ae
This includes a resync of charms_ceph to raise the directory one level
The charms_ceph change that we're syncing in changes the
name of the ceph.py file into the __init__.py file to remove the
second level of namespacing
Change-Id: I8773a26266a2a13f92083e89db957a6454df9bb3
This change ensures that when ceph is upgraded from an
older version that uses root to a newer version that
uses ceph as the process owner that all directories
are chowned.
As the ceph charm can also host OSD processes, ensure that
any ceph-osd daemons are stopped and started during the
upgrade process.
Change-Id: Ief3fd6352b440b7740965746cd0d1d846c647f84
Closes-Bug: 1600338
When the Ceph RADOS Gateway is used with small OSD configurations
(3 OSDs), the light pools consume 0.1% of storage by default; this
results in PG counts below or equal to 0; enforce a minimum PG count
of 2 as specified in the official Ceph PG calculator.
Change-Id: I44748807540ddde1ac76493bd85bb0f1c708e16c
Closes-Bug: 1607961
This change moves our ceph.py and ceph_broker.py into
a seperate repository that we can share between various
ceph related Juju projects, along with a Makefile
change to use a new git_sync file to partially sync
a git repository into a specified path
Change-Id: I8942d2f3411acec197fd6b854c1d9e50457502a5