# salt.modules.ceph

Module to provide ceph control with salt.

depends:

  - ceph_cfg Python module

Added in version 2016.11.0.

salt.modules.ceph.ceph_version()

  Get the version of ceph installed

  CLI Example:

      salt '*' ceph.ceph_version

salt.modules.ceph.cluster_quorum(**kwargs)

  Get the cluster's quorum status

  CLI Example:

      salt '*' ceph.cluster_quorum \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.cluster_status(**kwargs)

  Get the cluster status, including health if in quorum

  CLI Example:

      salt '*' ceph.cluster_status \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.keyring_auth_add(**kwargs)

  Add keyring to authorized list

  CLI Example:

      salt '*' ceph.keyring_auth_add \
              'keyring_type'='admin' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  keyring_type (required)

    One of `admin`, `mon`, `osd`, `rgw`, `mds`

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.keyring_auth_del(**kwargs)

  Remove keyring from authorised list

  CLI Example:

      salt '*' ceph.keyring_osd_auth_del \
              'keyring_type'='admin' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  keyring_type (required)

    One of `admin`, `mon`, `osd`, `rgw`, `mds`

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.keyring_auth_list(**kwargs)

  List all cephx authorization keys

  CLI Example:

      salt '*' ceph.keyring_auth_list \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_name

    The cluster name. Defaults to `ceph`.

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

salt.modules.ceph.keyring_create(**kwargs)

  Create keyring for cluster

  CLI Example:

      salt '*' ceph.keyring_create \
              'keyring_type'='admin' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  keyring_type (required)

    One of `admin`, `mon`, `osd`, `rgw`, `mds`

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.keyring_present(**kwargs)

  Returns `True` if the keyring is present on disk, otherwise `False`

  CLI Example:

      salt '*' ceph.keyring_present \
              'keyring_type'='admin' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  keyring_type (required)

    One of `admin`, `mon`, `osd`, `rgw`, `mds`

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.keyring_purge(**kwargs)

  Delete keyring for cluster

  CLI Example:

      salt '*' ceph.keyring_purge \
              'keyring_type'='admin' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  keyring_type (required)

    One of `admin`, `mon`, `osd`, `rgw`, `mds`

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

  If no ceph config file is found, this command will fail.

salt.modules.ceph.keyring_save(**kwargs)

  Create save keyring locally

  CLI Example:

      salt '*' ceph.keyring_save \
              'keyring_type'='admin' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  keyring_type (required)

    One of `admin`, `mon`, `osd`, `rgw`, `mds`

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.mds_create(**kwargs)

  Create a mds

  CLI Example:

      salt '*' ceph.mds_create \
              'name' = 'mds.name' \
              'port' = 1000, \
              'addr' = 'fqdn.example.org' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  name (required)

    The MDS name (must start with `mds.`)

  port (required)

    Port to which the MDS will listen

  addr (required)

    Address or IP address for the MDS to listen

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.mds_destroy(**kwargs)

  Remove a mds

  CLI Example:

      salt '*' ceph.mds_destroy \
              'name' = 'mds.name' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  name (required)

    The MDS name (must start with `mds.`)

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.mon_active(**kwargs)

  Returns `True` if the mon daemon is running, otherwise `False`

  CLI Example:

      salt '*' ceph.mon_active \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.mon_create(**kwargs)

  Create a mon node

  CLI Example:

      salt '*' ceph.mon_create \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.mon_is(**kwargs)

  Returns `True` if the target is a mon node, otherwise `False`

  CLI Example:

      salt '*' ceph.mon_is \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_name

    The cluster name. Defaults to `ceph`.

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

salt.modules.ceph.mon_quorum(**kwargs)

  Returns `True` if the mon daemon is in the quorum, otherwise `False`

  CLI Example:

      salt '*' ceph.mon_quorum \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.mon_status(**kwargs)

  Get status from mon daemon

  CLI Example:

      salt '*' ceph.mon_status \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.osd_activate(**kwargs)

  Activate an OSD

  CLI Example:

      salt '*' ceph.osd_activate 'osd_dev'='/dev/vdc'

salt.modules.ceph.osd_discover()

  List all OSD by cluster

  CLI Example:

      salt '*' ceph.osd_discover

salt.modules.ceph.osd_prepare(**kwargs)

  Prepare an OSD

  CLI Example:

      salt '*' ceph.osd_prepare 'osd_dev'='/dev/vdc' \
              'journal_dev'='device' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid' \
              'osd_fs_type'='xfs' \
              'osd_uuid'='2a143b73-6d85-4389-a9e9-b8a78d9e1e07' \
              'journal_uuid'='4562a5db-ff6f-4268-811d-12fd4a09ae98'

  cluster_uuid

    The device to store the osd data on.

  journal_dev

    The journal device. defaults to osd_dev.

  cluster_name

    The cluster name. Defaults to `ceph`.

  cluster_uuid

    The cluster date will be added too. Defaults to the value found in local config.

  osd_fs_type

    set the file system to store OSD data with. Defaults to "xfs".

  osd_uuid

    set the OSD data UUID. If set will return if OSD with data UUID already exists.

  journal_uuid

    set the OSD journal UUID. If set will return if OSD with journal UUID already exists.

salt.modules.ceph.partition_is(dev)

  Check whether a given device path is a partition or a full disk.

  CLI Example:

      salt '*' ceph.partition_is /dev/sdc1

salt.modules.ceph.partition_list()

  List partitions by disk

  CLI Example:

      salt '*' ceph.partition_list

salt.modules.ceph.partition_list_journal()

  List all OSD journal partitions by partition

  CLI Example:

      salt '*' ceph.partition_list_journal

salt.modules.ceph.partition_list_osd()

  List all OSD data partitions by partition

  CLI Example:

      salt '*' ceph.partition_list_osd

salt.modules.ceph.pool_add(pool_name, **kwargs)

  Create a pool

  CLI Example:

      salt '*' ceph.pool_add pool_name \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_name

    The cluster name. Defaults to `ceph`.

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  pg_num

    Default to 8

  pgp_num

    Default to pg_num

  pool_type

    can take values "replicated" or "erasure"

  erasure_code_profile

    The "erasure_code_profile"

  crush_ruleset

    The crush map rule set

salt.modules.ceph.pool_del(pool_name, **kwargs)

  Delete a pool

  CLI Example:

      salt '*' ceph.pool_del pool_name \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_name

    The cluster name. Defaults to `ceph`.

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

salt.modules.ceph.pool_list(**kwargs)

  List all pools

  CLI Example:

      salt '*' ceph.pool_list \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_name

    The cluster name. Defaults to `ceph`.

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

salt.modules.ceph.purge(**kwargs)

  purge ceph configuration on the node

  CLI Example:

      salt '*' ceph.purge \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  cluster_name

    The cluster name. Defaults to `ceph`.

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

salt.modules.ceph.rgw_create(**kwargs)

  Create a rgw

  CLI Example:

      salt '*' ceph.rgw_create \
              'name' = 'rgw.name' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  name (required)

    The RGW client name. Must start with `rgw.`

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.rgw_destroy(**kwargs)

  Remove a rgw

  CLI Example:

      salt '*' ceph.rgw_destroy \
              'name' = 'rgw.name' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  name (required)

    The RGW client name (must start with `rgw.`)

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.rgw_pools_create(**kwargs)

  Create pools for rgw

  CLI Example:

      salt '*' ceph.rgw_pools_create

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.rgw_pools_missing(**kwargs)

  Show pools missing for rgw

  CLI Example:

      salt '*' ceph.rgw_pools_missing

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.

  cluster_name

    The cluster name. Defaults to `ceph`.

salt.modules.ceph.zap(target=None, **kwargs)

  Destroy the partition table and content of a given disk.

      salt '*' ceph.osd_prepare 'dev'='/dev/vdc' \
              'cluster_name'='ceph' \
              'cluster_uuid'='cluster_uuid'

  dev

    The block device to format.

  cluster_name

    The cluster name. Defaults to `ceph`.

  cluster_uuid

    The cluster UUID. Defaults to value found in ceph config file.