-
Notifications
You must be signed in to change notification settings - Fork 5.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
Support resource request tuning for cost optimistation #6989
Comments
If a pod is using less resources that it requests (in resource requests) then it is costing more than it needs to. Metrics Server stores the resource usage of pods. https://github.com/kubernetes-sigs/metrics-server#use-cases You can then calculate "(requested resources - resource usage) / requested resources" which would tell you how much more a resource is costing to run than it needs to. You can then adjust your resource requests to pack you pods more efficiently and save $£¥. |
Yeah, it looks like in the app controller, we are totalling up the capacity and resource requests for the entire node. I think we need to keep track of the individual pod stats, right @rbreeze ? |
This will be for point 1 in the enhancement description. Using the sync-waves example: Here are the requests for the frontend pod: Here is the memory request for the backend pod (No specific CPU request, probably should not show it): Here is the total memory request, which adds up: Here is the total CPU request: |
Maybe take a look at Kubecost. They surface these details, but as a user, I want to know where I can save the most money. I don't want to tweak a resource from 110m to 100m, but I would if it was from 1000m to 500m. |
Latest screenshots with PR, with memory units fixed:
When metrics is not enabled: |
Signed-off-by: Keith Chong <kykchong@redhat.com>
Summary
Enhance the node view with information highlighting pods that are using much more or less that they request.
Motivation
I want to cost optimise and quickly. Nothing I've yet used makes that possible. But Argo CD is well place to make this easy.
Proposal
The text was updated successfully, but these errors were encountered: