bbfdeb84f0
This changeset provides pause and resume actions to the ceph charm. The pause action issues a 'ceph osd out <local_id>' for each of the ceph osd ids that are on the unit. The action does not stop the ceph osd processes. Note that if the pause-health action is NOT used on the ceph-mon charm then the cluster will start trying to rebalance the PGs accross the remaining OSDs. If the cluster might reach its 'full ratio' then this will be a breaking action. The charm does NOT check for this eventuality. The resume action issues a 'ceph osd in <local_id>' for each of the local ceph osd process on the unit. The charm 'remembers' that a pause action was issued, and if successful, it shows a 'maintenance' workload status as a reminder. Change-Id: I9f53c9c6c4bb737670ffcd542acec0b320cc7f6a
39 lines
1.7 KiB
YAML
39 lines
1.7 KiB
YAML
pause:
|
|
description: |
|
|
CAUTION - Set the local osd units in the charm to 'out' but does not stop
|
|
the osds. Unless the osd cluster is set to noout (see below), this removes
|
|
them from the ceph cluster and forces ceph to migrate the PGs to other OSDs
|
|
in the cluster. See the following.
|
|
|
|
http://docs.ceph.com/docs/master/rados/operations/add-or-rm-osds/#removing-the-osd
|
|
"Do not let your cluster reach its full ratio when removing an OSD.
|
|
Removing OSDs could cause the cluster to reach or exceed its full ratio."
|
|
Also note that for small clusters you may encounter the corner case where
|
|
some PGs remain stuck in the active+remapped state. Refer to the above link
|
|
on how to resolve this.
|
|
|
|
pause-health (on a ceph-mon) unit can be used before pausing a ceph-osd
|
|
unit to stop the cluster rebalancing the data off this ceph-osd unit.
|
|
pause-health sets 'noout' on the cluster such that it will not try to
|
|
rebalance the data accross the remaining units.
|
|
|
|
It is up to the user of the charm to determine whether pause-health should
|
|
be used as it depends on whether the osd is being paused for maintenance or
|
|
to remove it from the cluster completely.
|
|
resume:
|
|
description: |
|
|
Set the local osd units in the charm to 'in'. Note that the pause option
|
|
does NOT stop the osd processes.
|
|
replace-osd:
|
|
description: Replace a failed osd with a fresh disk
|
|
params:
|
|
osd-number:
|
|
type: integer
|
|
description: The osd number to operate on. Example 99. Hint you can get this information from `ceph osd tree`.
|
|
replacement-device:
|
|
type: string
|
|
description: The replacement device to use. Example /dev/sdb.
|
|
required: [osd-number, replacement-device]
|
|
additionalProperties: false
|
|
|