mirror of
https://github.com/ceph/ceph
synced 2025-01-18 09:02:08 +00:00
4dc12092be
Update doc/rados/configuration/pool-pg-config-ref.rst to account for the behavior of autoscaler. Previously, this file was last meaningfully altered in 2013, prior to the invention of autoscaler. A recent confusion was brought to my attention on the Ceph Slack whereby a user attempted to alter the default values of a Quincy cluster, as suggested in this documentation. That alteration caused Ceph to throw the error "Error ERANGE: 'pgp_num' must be greater than 0 and lower or equal than 'pg_num', which in this case is one" and a related "rgw_init_ioctx ERROR" reading in part "Numerical result out of range". The user removed the "osd_pool_default_pgp_num" configuration line from ceph.conf and the cluster worked as expected. I presume that this is because the removal of this configuration line allowed autoscaler to work as intended. Fixes: https://tracker.ceph.com/issues/64259 Co-authored-by: David Orman <ormandj@corenode.com> Signed-off-by: Zac Dover <zac.dover@proton.me>
76 lines
2.5 KiB
ReStructuredText
76 lines
2.5 KiB
ReStructuredText
.. _rados_config_pool_pg_crush_ref:
|
|
|
|
======================================
|
|
Pool, PG and CRUSH Config Reference
|
|
======================================
|
|
|
|
.. index:: pools; configuration
|
|
|
|
The number of placement groups that the CRUSH algorithm assigns to each pool is
|
|
determined by the values of variables in the centralized configuration database
|
|
in the monitor cluster.
|
|
|
|
Both containerized deployments of Ceph (deployments made using ``cephadm`` or
|
|
Rook) and non-containerized deployments of Ceph rely on the values in the
|
|
central configuration database in the monitor cluster to assign placement
|
|
groups to pools.
|
|
|
|
Example Commands
|
|
----------------
|
|
|
|
To see the value of the variable that governs the number of placement groups in a given pool, run a command of the following form:
|
|
|
|
.. prompt:: bash
|
|
|
|
ceph config get osd osd_pool_default_pg_num
|
|
|
|
To set the value of the variable that governs the number of placement groups in a given pool, run a command of the following form:
|
|
|
|
.. prompt:: bash
|
|
|
|
ceph config set osd osd_pool_default_pg_num
|
|
|
|
Manual Tuning
|
|
-------------
|
|
In some cases, it might be advisable to override some of the defaults. For
|
|
example, you might determine that it is wise to set a pool's replica size and
|
|
to override the default number of placement groups in the pool. You can set
|
|
these values when running `pool`_ commands.
|
|
|
|
See Also
|
|
--------
|
|
|
|
See :ref:`pg-autoscaler`.
|
|
|
|
|
|
.. literalinclude:: pool-pg.conf
|
|
:language: ini
|
|
|
|
.. confval:: mon_max_pool_pg_num
|
|
.. confval:: mon_pg_stuck_threshold
|
|
.. confval:: mon_pg_warn_min_per_osd
|
|
.. confval:: mon_pg_warn_min_objects
|
|
.. confval:: mon_pg_warn_min_pool_objects
|
|
.. confval:: mon_pg_check_down_all_threshold
|
|
.. confval:: mon_pg_warn_max_object_skew
|
|
.. confval:: mon_delta_reset_interval
|
|
.. confval:: osd_crush_chooseleaf_type
|
|
.. confval:: osd_crush_initial_weight
|
|
.. confval:: osd_pool_default_crush_rule
|
|
.. confval:: osd_pool_erasure_code_stripe_unit
|
|
.. confval:: osd_pool_default_size
|
|
.. confval:: osd_pool_default_min_size
|
|
.. confval:: osd_pool_default_pg_num
|
|
.. confval:: osd_pool_default_pgp_num
|
|
.. confval:: osd_pool_default_pg_autoscale_mode
|
|
.. confval:: osd_pool_default_flags
|
|
.. confval:: osd_max_pgls
|
|
.. confval:: osd_min_pg_log_entries
|
|
.. confval:: osd_max_pg_log_entries
|
|
.. confval:: osd_default_data_pool_replay_window
|
|
.. confval:: osd_max_pg_per_osd_hard_ratio
|
|
|
|
.. _pool: ../../operations/pools
|
|
.. _Monitoring OSDs and PGs: ../../operations/monitoring-osd-pg#peering
|
|
.. _Weighting Bucket Items: ../../operations/crush-map#weightingbucketitems
|