From 804c635ec835579e9cc6e10534a8d3f341ac9689 Mon Sep 17 00:00:00 2001 From: Luke Addison Date: Tue, 12 Mar 2024 12:42:25 +0000 Subject: [PATCH] Clarify VPA and HPA limitations Signed-off-by: Luke Addison --- vertical-pod-autoscaler/README.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/vertical-pod-autoscaler/README.md b/vertical-pod-autoscaler/README.md index b365f5c335ab..8f7468c123a7 100644 --- a/vertical-pod-autoscaler/README.md +++ b/vertical-pod-autoscaler/README.md @@ -384,8 +384,12 @@ vpa-post-processor.kubernetes.io/{containerName}_integerCPU=true recreated. This can be partly addressed by using VPA together with [Cluster Autoscaler](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#basics). * VPA does not update resources of pods which are not run under a controller. -* Vertical Pod Autoscaler **should not be used with the [Horizontal Pod Autoscaler](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-resource-metrics) (HPA) on CPU or memory** at this moment. - However, you can use VPA with [HPA on custom and external metrics](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#scaling-on-custom-metrics). +* Vertical Pod Autoscaler **should not be used with the [Horizontal Pod + Autoscaler](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-resource-metrics) + (HPA) on the same resource metric (CPU or memory)** at this moment. However, you can use [VPA with + HPA on separate resource metrics](https://github.com/kubernetes/autoscaler/issues/6247) (e.g. VPA + on memory and HPA on CPU) as well as with [HPA on custom and external + metrics](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#scaling-on-custom-metrics). * The VPA admission controller is an admission webhook. If you add other admission webhooks to your cluster, it is important to analyze how they interact and whether they may conflict with each other. The order of admission controllers is defined by a flag on API server.