Parameters and rolesΒΆ
The Deploy Ceph cluster plugin has the following parameters:
ceph_facts_template- The path to custom Ceph facts template. Decapod deploys the custom facts module on the nodes that collect the Ceph-related facts. Usually, you do not need to configure this parameter.
ceph_stable- Set to
trueif it is required to install Ceph from the stable repository. ceph_stable_repo,ceph_stable_release,ceph_stable_distro_sourceThe options define the repository where to obtain Ceph. In case of Ubuntu Xenial, you will get the following repository string:
deb {{ ceph_stable_repo }} {{ ceph_stable_distro_source }} main
clusterDefines the cluster name.
Important
Some tools require the
cephcluster name only. The default name allows executing the ceph utility without an explicit cluster name and with the--clusteroption.cluster_network- Defines the cluster network.
copy_admin_key- Copies the admin key to all nodes. This is required if you want to run the
ceph utility from any cluster node. Keep this option as
true. Otherwise, it may break some playbooks that maintain the lifecycle after deployment. fsid- The unique identifier for your object store. Since you can run multiple clusters on the same hardware, you must specify the unique ID of the object store when bootstrapping a monitor.
journal_collocationDefines if the OSD will place its journal on the same disk with the data. It is
falseby default.If you want to have separate disks for journals (SSDs) and data (rotationals), set this to
false. Also, setraw_multi_journaltotrueand list journal disks asraw_journal_devices.raw_multi_journalThis option is the opposite to
journal_collocation.Note
The
raw_multi_journalandjournal_collocationoptions must have different values. For example, ifjournal_collocationis set totrue, setraw_multi_journaltofalse.dmcrypt_journal_collocation- This option has the same meaning as
journal_collocationbut both journal and data disks are encrypted bydmcrypt. dmcrypt_dedicated_journal- This option has the same meaning as
journal_collocationset tofalse. Ifdmcrypt_dedicated_journalis set totrue, the journal and data will be placed on different disks and encrypted withdmcrypt. journal_size- OSD journal size in megabytes.
max_open_files- Sets the number of open files to have on a node.
nfs_file_gw- Set to
trueto enable file access through NFS. Requires an MDS role. nfs_obj_gw- Set to
trueto enable object access through NFS. Requires an RGW role. os_tuning_params- Different kernels parameters. This is the list of dicts where
nameis the name of the parameter andvalueis the value. public_network- Defines the public network.
monitor_interface- The option defines the NIC on the host that is connected to the public network.
devices- Defines the disks where to place the OSD data. If collocation is enabled, then
journal devices,
raw_journal_devices, are not used. raw_journal_devices- Defines the disks where to place the journals for OSDs. If collocation is enabled, this option is not used.
The ceph-ansible project supports two deployment modes of a Ceph cluster:
with journal collocation and on separate drives, and also with dmcrypt and
without it. Therefore, there are four possible combinations.
The following table lists the possible combinations:
| Setting | Combination 1 | Combination 2 | Combination 3 | Combination 4 |
|---|---|---|---|---|
| collocation | true |
true |
false |
false |
| dmcrypt | true |
false |
true |
false |
| journal_collocation | false |
true |
false |
false |
| raw_multi_journal | true |
false |
false |
true |
| dmcrypt_journal_collocation | false |
false |
false |
false |
| dmcrypt_dedicated_journal | false |
false |
true |
false |
| Data devices option name | devices |
devices |
devices |
devices |
| Journal devices option name | – | – | raw_journal_devices |
raw_journal_devices |
Consider the different meaning of devices and raw_journal_devices in
different modes: if no collocation is defined, then devices means disks
with data. Journals are placed on raw_journal_devices disks. Otherwise,
define devices only. In this case, the journal will be placed on the same
device as the data.