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

Remove Default Velero Resource Requests to Allow Best Practice Overrides #586

Closed
DreamingRaven opened this issue Jun 7, 2024 · 1 comment

Comments

@DreamingRaven
Copy link
Contributor

DreamingRaven commented Jun 7, 2024

Describe the problem/challenge you have
[A description of the current limitation/problem/challenge that you are experiencing.]

Using the default velero helm chart resource requests results in OOMKilled for the velero container on my cluster.
image

I can override these resource requests, which is not an issue. The issue is that the defaults define CPU limits and have divergent memory requests and limits. I largely agree with the stance discussed https://home.robusta.dev/blog/stop-using-cpu-limits
image

The current resource requests as are currently defined are:
https://github.com/vmware-tanzu/helm-charts/blob/bf3003e912af5c3828dfac4259154a71c58baab7/charts/velero/values.yaml#L76C1-L82C18

resources:
  requests:
    cpu: 500m
    memory: 128Mi
  limits:
    cpu: 1000m
    memory: 512Mi

I would like to set these to something akin to (although for my cluster slightly more memory):

resources:
  requests:
    cpu: 1000m
  limits:
    memory: 512Mi # this limit becomes a default request without repeating configuration and less error prone

I know of no way to set the resource requests and limits to the above, since I can't nullify the defaults of the helm chart itself. I am less worried about repeating memory limits in requests than I am about not being able to define no CPU limit.

Ideally, the helm chart would not come pre-loaded with its own resource requests, to also give it the best chance of running on minimal resource environments like Minikube.

Bitnami has a more complex setup, but they enable overrides with some basic presents if that is still necessary without losing user overrides (taking one of their random charts):
https://github.com/bitnami/charts/blob/3117b573147401387321a2a0e1f587978cef0ed2/bitnami/ghost/values.yaml#L306C1-L317C14

Although, I do think the simplest solution is to not include defaults at all.

Thanks for reading!

Describe the solution you'd like
[A clear and concise description of what you want to happen.]

Default resource requests are completely overridable by having no defaults

Anything else you would like to add:
[Miscellaneous information that will assist in solving the issue.]

Environment:

Environment not relevant to this feature since it pertains to overridability.

  • helm version (use helm version):
  • helm chart version and app version (use helm list -n <YOUR NAMESPACE>):
  • Kubernetes version (use kubectl version):
  • Kubernetes installer & version:
  • Cloud provider or hardware configuration:
  • OS (e.g. from /etc/os-release):
@DreamingRaven
Copy link
Contributor Author

Seems like this is pre-existing, closing in favour of existing issue. #469

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

No branches or pull requests

1 participant