2019-09-03 16:07:30 -06:00
|
|
|
---
|
|
|
|
|
title: Configuration
|
|
|
|
|
weight: 3700
|
|
|
|
|
indent: true
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
# Configuration
|
|
|
|
|
|
|
|
|
|
For most any Ceph cluster, the user will want to--and may need to--change some Ceph
|
|
|
|
|
configurations. These changes often may be warranted in order to alter performance to meet SLAs or
|
|
|
|
|
to update default data resiliency settings.
|
|
|
|
|
|
2019-10-24 10:22:08 +02:00
|
|
|
> **WARNING**: Modify Ceph settings carefully, and review the
|
|
|
|
|
> [Ceph configuration documentation](https://docs.ceph.com/docs/master/rados/configuration/) before
|
|
|
|
|
> making any changes.
|
|
|
|
|
> Changing the settings could result in unhealthy daemons or even data loss if
|
|
|
|
|
> used incorrectly.
|
2019-09-03 16:07:30 -06:00
|
|
|
|
|
|
|
|
## Required configurations
|
2019-10-24 10:22:08 +02:00
|
|
|
|
2019-09-03 16:07:30 -06:00
|
|
|
Rook and Ceph both strive to make configuration as easy as possible, but there are some
|
|
|
|
|
configuration options which users are well advised to consider for any production cluster.
|
|
|
|
|
|
|
|
|
|
### Default PG and PGP counts
|
2019-10-24 10:22:08 +02:00
|
|
|
|
|
|
|
|
The number of PGs and PGPs can be configured on a per-pool basis, but it is highly advised to set
|
|
|
|
|
default values that are appropriate for your Ceph cluster. Appropriate values depend on the number
|
|
|
|
|
of OSDs the user expects to have backing each pool. The Ceph [OSD and Pool config
|
|
|
|
|
docs](https://docs.ceph.com/docs/master/rados/operations/placement-groups/#a-preselection-of-pg-num)
|
2019-09-11 17:35:19 +03:00
|
|
|
provide detailed information about how to tune these parameters: `osd_pool_default_pg_num` and `osd_pool_default_pgp_num`.
|
|
|
|
|
|
2021-07-28 14:00:35 -06:00
|
|
|
Nautilus [introduced the PG auto-scaler mgr module](https://ceph.com/rados/new-in-nautilus-pg-merging-and-autotuning/)
|
2020-04-12 15:46:38 +00:00
|
|
|
capable of automatically managing PG and PGP values for pools. Please see
|
|
|
|
|
[Ceph New in Nautilus: PG merging and autotuning](https://ceph.io/rados/new-in-nautilus-pg-merging-and-autotuning/)
|
|
|
|
|
for more information about this module.
|
|
|
|
|
|
2021-08-26 16:43:42 +05:30
|
|
|
In Octopus (v15.2.x) and newer, module `pg_autoscaler` is enabled by default without the above-mentioned setting.
|
|
|
|
|
|
|
|
|
|
To disable this module, in the [CephCluster CR](ceph-cluster-crd.md#mgr-settings):
|
2019-09-03 16:07:30 -06:00
|
|
|
|
2019-09-05 17:23:11 -06:00
|
|
|
```yaml
|
2019-10-24 10:22:08 +02:00
|
|
|
spec:
|
2019-09-05 17:23:11 -06:00
|
|
|
mgr:
|
|
|
|
|
modules:
|
|
|
|
|
- name: pg_autoscaler
|
2021-08-26 16:43:42 +05:30
|
|
|
enabled: false
|
2019-09-03 16:07:30 -06:00
|
|
|
```
|
|
|
|
|
|
2019-09-05 17:23:11 -06:00
|
|
|
With that setting, the autoscaler will be enabled for all new pools. If you do not desire to have
|
2020-04-12 15:27:34 +00:00
|
|
|
the autoscaler enabled for all new pools, you will need to use the Rook toolbox to enable the module
|
2019-09-05 17:23:11 -06:00
|
|
|
and [enable the autoscaling](https://docs.ceph.com/docs/master/rados/operations/placement-groups/)
|
|
|
|
|
on individual pools.
|
2019-09-03 16:07:30 -06:00
|
|
|
|
2020-04-12 15:27:34 +00:00
|
|
|
The autoscaler is not enabled for the existing pools after enabling the module. So if you want to
|
2020-04-12 15:46:38 +00:00
|
|
|
enable the autoscaling for these existing pools, they must be configured from the toolbox.
|
2020-04-12 15:27:34 +00:00
|
|
|
|
2019-09-03 16:07:30 -06:00
|
|
|
## Specifying configuration options
|
|
|
|
|
|
|
|
|
|
### Toolbox + Ceph CLI
|
2019-10-24 10:22:08 +02:00
|
|
|
|
2019-09-03 16:07:30 -06:00
|
|
|
The most recommended way of configuring Ceph is to set Ceph's configuration directly. The first
|
|
|
|
|
method for doing so is to use Ceph's CLI from the Rook-Ceph toolbox pod. Using the toolbox pod is
|
|
|
|
|
detailed [here](ceph-toolbox.md). From the toolbox, the user can change Ceph configurations, enable
|
|
|
|
|
manager modules, create users and pools, and much more.
|
|
|
|
|
|
|
|
|
|
### Ceph Dashboard
|
2019-10-24 10:22:08 +02:00
|
|
|
|
2019-09-03 16:07:30 -06:00
|
|
|
The Ceph Dashboard, examined in more detail [here](ceph-dashboard.md), is another way of setting
|
|
|
|
|
some of Ceph's configuration directly. Configuration by the Ceph dashboard is recommended with the
|
|
|
|
|
same priority as configuration via the Ceph CLI (above).
|
|
|
|
|
|
|
|
|
|
### Advanced configuration via ceph.conf override ConfigMap
|
2019-10-24 10:22:08 +02:00
|
|
|
|
2019-09-03 16:07:30 -06:00
|
|
|
Setting configs via Ceph's CLI requires that at least one mon be available for the configs to be
|
|
|
|
|
set, and setting configs via dashboard requires at least one mgr to be available. Ceph may also have
|
|
|
|
|
a small number of very advanced settings that aren't able to be modified easily via CLI or
|
|
|
|
|
dashboard. The **least** recommended method for configuring Ceph is intended as a last-resort
|
|
|
|
|
fallback in situations like these. This is covered in detail
|
|
|
|
|
[here](ceph-advanced-configuration.md#custom-cephconf-settings).
|