Skip to content

Option to exclude persistent volume storage size from reconciler #1791

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

Open
terryyanko opened this issue Jan 15, 2025 · 4 comments
Open

Option to exclude persistent volume storage size from reconciler #1791

terryyanko opened this issue Jan 15, 2025 · 4 comments

Comments

@terryyanko
Copy link

Proposal

Currently there is no way to leverage an external volume autoscaler for Percona operator-managed MongoDB nodes. The Percona operator should provide an option to exclude persistent volumes from reconciliation in the case that you are using an external volume autoscaler to scale your PVs automatically. Alternatively, built-in PV autoscaling could work as well but would likely take more effort.

The Percona operator currently throws the below error when it recognizes that a PV has been scaled beyond it's initial spec...

ERROR	Reconciler error ... requested storage (50Gi) is less than actual storage (1142Gi)", "errorVerbose": "reconcile StatefulSet for rs0: resize volumes if needed: requested storage (50Gi) is less than actual storage (1142Gi

This could be remedied if there was an option to exclude the volume from the reconciliation loop and allow the external autoscaler to assume control of the PV sizing moving forward.

Use-Case

MongoDB persistent volumes could scale automatically without the need for any regular monitoring / manual intervention / config updates.

Is this a feature you are interested in implementing yourself?

Maybe

Anything else?

No response

@hors
Copy link
Collaborator

hors commented Apr 14, 2025

hi @terryyanko, you can disable it via enableVolumeExpansion: false option. Will it work for you?

@terryyanko
Copy link
Author

Hey @hors I haven't tested it yet, but assuming it will bypass the reconciliation and alleviate the above error then sounds good to me!

@terryyanko
Copy link
Author

terryyanko commented Apr 23, 2025

@hors per the docs, isn't this already disabled by default? https://docs.percona.com/percona-operator-for-mongodb/scaling.html#automated-scaling-with-volume-expansion-capability

You can enable automated scaling with the [enableVolumeExpansion](https://docs.percona.com/percona-operator-for-mongodb/operator.html#enablevolumeexpansion) Custom Resource option (turned off by default)

Also looking at the volumes.go, I don't see how this would solve the issue...

@terryyanko
Copy link
Author

@hors #1897

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants