Get to know what is KubeOptimizer and how it works
KubeOptimizer provides you with optimization recommendations, like right-sizing cluster pods, allocating resources, and other cluster objects that need constant focus, so they can keep their Kubernetes clusters performant and cost-efficient.
KubeOptmizer provides a set of algorithms that perform these resource and cost analyses on your workloads. It also analyzes your node usage metrics to generate recommendations to optimize your cluster.
How KubeOptimizer works
KubeOptimizer analyses your cluster data every day and generates two types of recommendations every day: Container Resource Optimizations and Node optimizations.
Container Resource Optimizations aim to optimize each workload on Kubernetes clusters, which helps with vertical scalability. Our algorithms analyze the historical usage data for both CPU and Memory and then provide you with the optimum values for requests and limits for your workloads, in order to have the best performance while maintaining cost efficiency.
These recommendations help you avoid running into one of the following problems:
- Having CPU or Memory throttling
- Having CPU or Memory waste
- Having a container with a missing request/limit values
KubeOptimizer also provides a way for Container Resource optimizations to be applied to your cluster through what we call Automations.
For Node Optimizations, KubeOptimizer looks at the overall usage of the cluster nodes and suggests the optimal node structure for the cluster based on different cloud providers. It then provides a cost-saving analysis of how much can be saved with the recommended node structure.
In the following articles, we will elaborate on how to navigate Container Resource Optimizations and how to execute them using the automations, and how to navigate Node Optimizations.