-
Notifications
You must be signed in to change notification settings - Fork 4k
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
Restricting VPA recommender scans to specific namespaces #7697
Comments
Thanks for opening this issue. Having the The purpose of the garbage collection is to obviously look for garbage, so it looks in all namespaces, in case someone used to have the VPA configured in a different namespace. I assume we could add a flag to only look at the specified namespace. I can make a PR and see what others think. /assign |
Hold on, I don't have capacity for this yet. I'll unsaying and let someone else take it /unassign |
We already have two flags, |
Agreed, I like that option too. But it changes behaviour of those flags. We just need to figure out a solution to handle this sort of thing (it could be just writing some documentation though) |
Hmm, I didn’t think of that. Good point. Not sure what the best solution is here. Do you think just documenting this behavior would be enough? |
/assign |
Another option could be to modify the interval (perhaps temporarily) for searching orphaned checkpoint objects across all namespaces by updating the @ncmuthu what do you think? |
Yeah, I think rather than introducing yet-another-flag for this scenario, it should be sufficient to document that making the range of namespaces that a |
Agreed. I will work on that :) |
another recommendation is to increase |
Thank you for the response and checking on this. This would be help. Even though I do not operate on other namespaces, I can increase to much higher value which will not affect the performance of the kube-api. |
Thank you for the response. At this time I mitigated with these settings, the only question is, since we want to operate on only one or few namespaces, looking for option to avoid queryng all the namespaces in regular interval. |
Which component are you using?:
/area vertical-pod-autoscaler
What version of the component are you using?:
1.0.0
Component version:
What k8s version are you using (
kubectl version
)?:kubectl version
OutputWhat environment is this in?:
AWS EKS and local Kind cluster
What did you expect to happen?:
I am using the flag --vpa-base-namespace=vpa to limit the VPA functionality only to vpa namespace. It is detecting the VPA resources only from the specified vpa namespace, but the vpa recommender scans the verticalpodautoscalercheckpoints of all namespaces every 10minutes instead of scanning only the specified namespace. We have around 3000 namespaces, so scanning all the namespaces every 10minutes adds load to the kube-api server.
What happened instead?:
Vpa recommender scans the verticalpodautoscalercheckpoints of all namespaces every 10minutes instead of scanning only the specified namespace. Would like to avoid scanning all the namespaces
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Logs:
We can avoid the client side throttling by increasing the kube-api-qps, but would like to avoid scanning all namespaces where we are not going to create VPA resources.
The text was updated successfully, but these errors were encountered: