Project

General

Profile

Actions

Feature #36191

closed

mgr/dashboard: Add support for managing RBD QoS

Added by Lenz Grimmer over 5 years ago. Updated about 3 years ago.

Status:
Resolved
Priority:
Normal
Category:
Component - RBD
Target version:
% Done:

0%

Source:
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

With PR#23743 merged, Ceph Nautilus will support defining an IOPS limit for RBD images on a per-image and pool level.

The RBD management in Ceph Mgr Dashboard should support this feature, by making it possible to define the limit when creating new RBD images or editing existing RBDs, as well as when creating or editing a Ceph pool dedicated to RBD.

On the command line, these limits can be configured as follows:

$ rbd config pool set $pool rbd_qos_iops_limit 100
$ rbd config image set $pool/$image rbd_qos_iops_limit 200


Subtasks 1 (1 open0 closed)

Subtask #38120: Implemented more frontend testsNew

Actions

Related issues 7 (2 open5 closed)

Related to Dashboard - Bug #37569: mgr/dashboard: Fix search in `Source` column of RBD configuration listResolvedPatrick Seidensal

Actions
Related to mgr - Feature #37570: Provide descriptions and types for the RBD configuration optionsNew12/07/2018

Actions
Related to Dashboard - Bug #46815: mgr/dashboard: FAIL: test_pool_create (tasks.mgr.dashboard.test_pool.PoolTest)ResolvedErnesto Puerta

Actions
Precedes Dashboard - Feature #37571: mgr/dashboard: Highlight RBD configuration options in add/edit formRejected

Actions
Precedes Dashboard - Bug #37572: mgr/dashboard: Add backend tests for RBD configurationResolvedPatrick Seidensal

Actions
Precedes Dashboard - Bug #38004: mgr/dashboard: Render error in pool edit dialogResolved

Actions
Precedes Dashboard - Tasks #38072: mgr/dashboard: Reflect RBD QoS setting values in formsNew

Actions
Actions #1

Updated by Mykola Golub over 5 years ago

I am not sure if the scope is intentionally limited only to QOS, but just to make sure you are aware about all available functionality, below some more details.

Via `rbd config pool|image` you can set not only QOS but much more. `rbd config pool ls $pool` and `rbd config image ls $pool/$image` will return the full list of possible overrides. E.g. for QOS we have these options:

% rbd config pool ls rbd |grep qos
rbd_qos_bps_limit                      0        config 
rbd_qos_iops_limit                     0        config 
rbd_qos_read_bps_limit                 0        config 
rbd_qos_read_iops_limit                0        config 
rbd_qos_write_bps_limit                0        config 
rbd_qos_write_iops_limit               0        config 

So probably we want some more generic, not only QOS?

And the dashboard can use python rbd bindings:

params = rbd.config_list(ioctx)
rbd.pool_metadata_set(ioctx, "conf_rbd_qos_bps_limit", "100")
rbd.pool_metadata_remove(ioctx, "conf_rbd_qos_bps_limit")

params = image.config_list()
image.metadata_set("conf_rbd_qos_bps_limit", "100")
image.metadata_remove("conf_rbd_qos_bps_limit")

Note, the overrides are stored in the pool/image metadata, and for set/remove we use "metadata" API, which requires the config keys to be prefixed with "conf_".

Actions #2

Updated by Lenz Grimmer over 5 years ago

  • Assignee set to Patrick Seidensal
Actions #3

Updated by Patrick Seidensal over 5 years ago

  • Status changed from New to In Progress
Actions #4

Updated by Lenz Grimmer over 5 years ago

  • Pull request ID set to 25233
Actions #5

Updated by Patrick Seidensal over 5 years ago

  • Status changed from In Progress to Fix Under Review
  • % Done changed from 0 to 90
Actions #6

Updated by Patrick Seidensal over 5 years ago

  • Related to Bug #37569: mgr/dashboard: Fix search in `Source` column of RBD configuration list added
Actions #7

Updated by Patrick Seidensal over 5 years ago

  • Related to Feature #37570: Provide descriptions and types for the RBD configuration options added
Actions #8

Updated by Patrick Seidensal over 5 years ago

  • Precedes Feature #37571: mgr/dashboard: Highlight RBD configuration options in add/edit form added
Actions #9

Updated by Patrick Seidensal over 5 years ago

  • Precedes Bug #37572: mgr/dashboard: Add backend tests for RBD configuration added
Actions #10

Updated by Patrick Seidensal over 5 years ago

  • Subject changed from mgr/dashboard: Add support for managing RBD QOS to mgr/dashboard: Add support for managing RBD QoS
Actions #11

Updated by Patrick Seidensal over 5 years ago

  • Related to Bug #38004: mgr/dashboard: Render error in pool edit dialog added
Actions #12

Updated by Patrick Seidensal over 5 years ago

  • Related to deleted (Bug #38004: mgr/dashboard: Render error in pool edit dialog)
Actions #13

Updated by Patrick Seidensal over 5 years ago

  • Precedes Bug #38004: mgr/dashboard: Render error in pool edit dialog added
Actions #14

Updated by Patrick Seidensal about 5 years ago

  • Precedes Tasks #38072: mgr/dashboard: Reflect RBD QoS setting values in forms added
Actions #15

Updated by Lenz Grimmer about 5 years ago

  • Status changed from Fix Under Review to Resolved
Actions #16

Updated by Lenz Grimmer over 3 years ago

  • Related to Bug #46815: mgr/dashboard: FAIL: test_pool_create (tasks.mgr.dashboard.test_pool.PoolTest) added
Actions #17

Updated by Ernesto Puerta about 3 years ago

  • Project changed from mgr to Dashboard
  • Category changed from 139 to Component - RBD
Actions

Also available in: Atom PDF