
Are Kubernetes users right to ignore VPA?
Ensuring optimal resource utilization is still one of the biggest challenges of Kubernetes (K8s). One feature that aims to help businesses manage K8s resources efficiently is the Vertical Pod Autoscaler (VPA). Intended to automate the process of scaling pods by adjusting CPU and RAM resources, VPA is utilized by a mere 1% of K8s users.
Why are so many people ignoring such a beneficial technology? That’s a good question. There are a number of obstacles that hinder the efficiency of VPA. Some of the most common ones involve a lack of transparency in scaling decisions, inaccurate resource adjustments, and the complex deployment process.
In this article, we’ll explore whether Kubernetess users’ avoidance of VPA is justified, and if so, is there a way to enjoy the incredible benefits of vertical scaling without the risks they dread?
The main objections of using native VPA
Despite its potential benefits, people don’t stand in line to implement native VPA. This reluctance can be traced to three major objections that often prevent teams from adopting VPA.
1. Lack of transparency and trust in native VPA recommendations
One of the primary reasons teams hesitate to rely on VPA is the lack of transparency in how it makes resource recommendations. VPA’s autoscaling decisions—based on historical resource usage—are not always easily understood by users, leaving them questioning why certain recommendations are made. Without insight into the underlying logic, it’s difficult to trust that the recommended values are accurate or optimal for the workload.
While some teams attempt to resolve this by using tools like Goldilocks or by exporting VPA logs to gain a better understanding, these solutions often fail to fully bridge the trust gap. As a result, many users feel uncertain about implementing VPA’s suggestions, preferring to manually configure resources instead.
2. Inaccurate behavior in dynamic workloads
Kubernetes workloads are rarely static. They often experience unpredictable traffic spikes or dips that require rapid adjustment of resources to maintain performance and cost-efficiency. Unfortunately, as VPA is based on historical usage data, it can struggle to respond to traffic spikes in real time, resulting in performance degradation.
To work around this, some teams attempt to manually set buffer values or rely on Horizontal Pod Autoscalers (HPA) to manage scaling. However, this introduces additional complexity and doesn’t fully address the need for accurate real-time adjustments based on live traffic, leaving gaps in resource optimization.
3. Operational complexity of deploying VPA
Implementing VPA in a production environment isn’t as easy as pie. Kubernetes users must configure resource limits and requests for pods, ensure compatibility with existing workloads, and develop safe rollout plans to avoid downtime due to pod restarts. This adds a layer of operational complexity that many teams are reluctant to navigate, particularly in large, fast-moving environments.
To mitigate these challenges, some teams begin by using VPA in staging environments, gradually expanding it to production as they gain confidence in its behavior. However, this approach is slow, cumbersome, and doesn’t fully alleviate the complexities of configuration, monitoring, and safe scaling.
How Zesty’s Pod Rightsizing solves VPA’s challenges
While the challenges of using VPA are significant, the good news is that solutions are available to overcome these hurdles. Pod Rightsizing, one of the solutions of the Kompass platform, was specifically designed to address the shortcomings of native VPA. The solution provides the flexibility and automation necessary to overcome the most common objections users face with native VPA.
1. Building trust and enhancing transparency with Zesty Pod Rightsizing
Zesty goes beyond the traditional VPA model by offering deep transparency into the scaling process. With Pod Rightsizing, Zesty provides intuitive dashboards that not only display current resource usage and cost but also offer clear, actionable recommendations for optimization and savings opportunities. These dashboards include container-level views of CPU and RAM usage and requests, updating in real time, allowing teams to see exactly why changes are being made. This visibility builds confidence in scaling decisions and delivers real-time insights into every scaling adjustment.
2. Accurate resource adjustments for dynamic workloads
Where VPA often falls short in adapting to sudden traffic spikes, Zesty Pod Rightsizing offers container-level optimization, including real-time monitoring and dynamic adjustments based on actual resource usage. Our solution constantly tracks live traffic and automatically resizes pods to meet demand with unparalleled precision.
This ensures that applications always have the resources they need to perform optimally, whether during peak demand or low-traffic periods, without the risk of overprovisioning or underprovisioning, and without risking CPU throttling or OOM.
By continuously monitoring and adapting to changes in workload demands, Zesty Kompass ensures that K8s resources are always right-sized, improving stability and cost efficiency.
3. Simplifying deployment and reducing operational overhead
One of the most significant barriers to adopting VPA in production environments is the operational complexity it introduces.
With Pod Rightsizing, resource requests are automatically adjusted in response to real-time usage, eliminating the need for manual intervention. This significantly reduces the operational burden and ensures that scaling happens smoothly and efficiently without risking downtime or resource wastage. Moreover, the platform’s monitoring capabilities continuously refine resource settings, ensuring your system always operates at peak efficiency.
A smarter approach to Kubernetes resource management
While native VPA offers an automated way to scale Kubernetes resources, its limitations—lack of transparency, inaccurate adjustments during dynamic workloads, and operational complexity—have caused many teams to hesitate to fully adopt it. However, with a solution like Zesty Pod Rightsizing, these barriers can be effectively overcome.
By providing enhanced transparency, accurate real-time adjustments, and automated deployment, Zesty Kompass transforms how Kubernetes resource management is approached. Pod Rightsizing ensures that resources are always optimized for performance and cost, without the manual intervention or complexity traditionally associated with autoscaling tools.
If you want to learn more about Pod Rightsizing and see it work in action, book a quick demo.