Skip to content
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

Helm : add hpa resource for the querier #7870

Closed

Conversation

QuantumEnigmaa
Copy link
Contributor

What this PR does

This PR adds a hpa object for the querier component in the mimir-distributed helm chart. Since Keda might not be used by several users, having a default hpa would enable to have horizontal autoscaling for the querier without needing additional apps installed.

Similar PR for the distributor : #7839

Checklist

  • Tests updated.
  • Documentation added.
  • CHANGELOG.md updated - the order of entries should be [CHANGE], [FEATURE], [ENHANCEMENT], [BUGFIX].
  • about-versioning.md updated with experimental features.

@QuantumEnigmaa QuantumEnigmaa requested a review from a team as a code owner April 10, 2024 11:35
Signed-off-by: QuantumEnigmaa <[email protected]>
@QuantumEnigmaa
Copy link
Contributor Author

@dimitarvdimitrov Sorry to ping you again 🙏

@dimitarvdimitrov
Copy link
Contributor

dimitarvdimitrov commented Apr 12, 2024

i'm not super sure about adding multiple ways for autoscaling. Wouldn't that make the chart less easy to work with because now you have to also understand and choose which autoscaling you need?

Also this template seems very shallow - it delegates every decision to the user (scaleDown behaviour, whether to scale on memory or CPU, average utilization, etc.). What's the difference between just the operator creating an HPA yaml and installing that along with mimir? There is the extraObjects key in the values you can use for that.

would like to hear from @krajorama as well.

@QuantumEnigmaa
Copy link
Contributor Author

Wouldn't that make the chart less easy to work with because now you have to also understand and choose which autoscaling you need?

I think it's quite the opposite because with this proposed change users would find themselves in 2 different situation when it comes to autoscaling :

  • Either they already have Keda installed on their cluster and will be happy to find the current existing field in the values which gives them the possibility to add a ScaledObject resource directly from the values
  • Or they either don't have Keda installed and don't plan on using it in a near future but still want a quick and easy autoscaling solution such as the one present for the gateway component. I think they'll like to have this possibility embedded in the values instead of having to add the resource as an extra-object.

What's the difference between just the operator creating an HPA yaml and installing that along with mimir? There is the extraObjects key in the values you can use for that.

I'm not sure which operator you're referring to but as I mentioned above, in my opinion being able to create an hpa resource from the values is a time saver (it avoids the user to have to go through the extra-objects).

Signed-off-by: QuantumEnigmaa <[email protected]>
@dimitarvdimitrov
Copy link
Contributor

I don't think installing Keda is an unreasonable requirement. The setup cost is low and iot has low overhead to maintain.

Adding more ways to the same thing looks like a maintenance burden on the helm chart. We're understaffed on helm maintainers and I'd like to concentrate efforts on the existing keda support instead of adding more features.

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

Successfully merging this pull request may close these issues.

2 participants