I'm currently looking into a tool called Goldilocks that helps developers effectively define the Requests and Limits for their applications. I wanted to know if anyone here has experience with Goldilocks? Do you think it's a good tool? Also, how does the "auto" mode work for you?
3 Answers
Absolutely! We managed to cut our non-prod costs significantly and got our CPU usage down to about 40% compared to over 100% requested CPU! It’s been one of our best month-to-month tools after some adjustments. Totally worth it!
That’s awesome! Do you mostly use the "Recommender" mode, and did you ask it for manual recommendations or just go with the auto option? How long did it take for you to see results?
I'm pretty new to Kubernetes, so bear with me. When you check the Goldilocks dashboard and it gives a recommendation for requests and limits, isn't that just based on the data from that moment? How do you ensure you're sizing for peak usage?
Good question! You have to keep in mind that it doesn’t account for peak usage, which is why it’s essential to not just follow its recommendations blindly. Always check them against your app’s resource usage pattern.
Yep, I've used Goldilocks! It's pretty useful for workloads with a consistent load, but it struggles a bit with workloads that have spikes. In auto mode, it sets the requests and limits to the same value, which is referred to as Guaranteed QoS class. You can tweak Goldilocks to set just the requests, but that requires some fiddling with the VPA configuration, which isn't the most enjoyable task.
That's a fair point. Having memory requests and limits set the same is usual, but I think it's better to leave CPU requests without limits.

What kind of adjustments did you make to get such great results?