New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
quincy: pybind/mgr/pg_autoscaler: noautoscale flag retains individual pool configs #53677
quincy: pybind/mgr/pg_autoscaler: noautoscale flag retains individual pool configs #53677
Conversation
make check failed because:
|
…nfigs Problem: The pg_autoscaler `noautoscale flag` doesn't retain individual pool states of `autoscale mode`. For example turn the flag `ON` and then `OFF` again all the pools will have `autoscale mode on` which is inconvenience for the user because sometimes the user just want to temporary disable the autoscaler on all pools and will enable it back after a period of time while retaining individual pool states of `autoscale mode` Solution: We store noautoscale flag in the OSDMAP such that it is persistent. We then get rid of noautoscale MODULE OPTION in the pg_autoscaler module since we do not need it anymore. Everytime we set, unset or get the flag we rely on looking up the OSDMAP, we did this because we want to avoid inconsistancy between the `noautoscale flag`. This is because `noautoscale flag` can easily be set by doing `ceph osd set noautoscale`. Fixes: https://tracker.ceph.com/issues/61922 Signed-off-by: Kamoltat <ksirivad@redhat.com> (cherry picked from commit 0bfdf63) Conflicts: src/pybind/mgr/pg_autoscaler/module.py - trivial fix
3955e9c
to
2371e19
Compare
Pushed new change, should be good now! |
Teuthology Test Result: @kamoltat There's a related failure shown below: Please take a look. |
My mistake, I didn't cherry-pick all the commits ... |
modified: `qa/workunits/mon/test_noautoscale_flag.sh` `qa/workunits/cephtool/test.sh` adding test coverage to files mentioned above Fixes: https://tracker.ceph.com/issues/61922 Signed-off-by: Kamoltat <ksirivad@redhat.com> (cherry picked from commit 0972dbf)
Pushed the rest of the commit ... |
Teuthology Test Result: Re-Run of autoscale-flag test After including missed commits: Failures, unrelated:
Details:
|
Problem:
The pg_autoscaler
noautoscale flag
doesn't retain individual pool states ofautoscale mode
. For example turn the flagON
and thenOFF
again all the pools will haveautoscale mode on
which is inconvenience for the user because sometimes the user just want to temporary disable the autoscaler on all pools and will enable it back after a period of time while retaining individual pool states ofautoscale mode
Solution:
We store noautoscale flag in the OSDMAP such that it is persistent. We then get rid of noautoscale MODULE OPTION in the pg_autoscaler module since we do not need it anymore. Everytime we set, unset or get the flag we rely on looking up the OSDMAP, we did this because we want to avoid inconsistancy between the
noautoscale flag
. This is becausenoautoscale flag
can easily be set by doingceph osd set noautoscale
.Fixes: https://tracker.ceph.com/issues/61922
Backporting relevant commits from main PRs:
#52442
Backport tracker: https://tracker.ceph.com/issues/62978
Signed-off-by: Kamoltat ksirivad@redhat.com
Contribution Guidelines
To sign and title your commits, please refer to Submitting Patches to Ceph.
If you are submitting a fix for a stable branch (e.g. "pacific"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.
Checklist
Show available Jenkins commands
jenkins retest this please
jenkins test classic perf
jenkins test crimson perf
jenkins test signed
jenkins test make check
jenkins test make check arm64
jenkins test submodules
jenkins test dashboard
jenkins test dashboard cephadm
jenkins test api
jenkins test docs
jenkins render docs
jenkins test ceph-volume all
jenkins test ceph-volume tox
jenkins test windows