<p>I need to run a burstable workload on Kubernetes which is really difficult to estimate resources and limits for. I'm currently only using Horizontal Pod Autoscaler so I have the number of replicas increased according to the increasing demand for my hourly scheduled jobs. I also currently have set the memory requests and limits to be open, and the autoscaling is only CPU based. The problem is that leaving the memory limit open for pods leads to high pod eviction rates. I wonder if I can use Vertical Pod Autoscaler to recommend the pods' resource allocation and keep the Horizontal Pod Autoscaler object created both running simultaneously. The only reference I found on the documentation says that there is an object called Multidimensional Pod autoscaling, but it is only available for version 1.19+.</p>

<p>Well, Multidimensional Pod Autoscaling seems to be only a <a href="https://googlecloudproject.com/kubernetes-engine/docs/how-to/multidimensional-pod-autoscaling" rel="nofollow noreferrer">GKE (preview) feature</a> at this moment.
When you like to use VPA and HPA together, you can only do this with HPA and custom metrics as it states in the <a href="https://github.com/kubernetes/autoscaler/tree/master/vertical-pod-autoscaler#known-limitations" rel="nofollow noreferrer">docs</a>:</p>
<blockquote>
<p>Known limitations <br>
... <br></p>
<ul>
<li>Vertical Pod Autoscaler should not be used with
the Horizontal Pod Autoscaler (HPA) on CPU or memory at this moment.
However, you can use VPA with HPA on custom and external metrics. <br>
...</li>
</ul>
</blockquote>
