HPA(Horizo​​ntal pod autoscaling)是否考虑多个容器(在一个 Pod 中)的 CPU 利用率平均值来扩展 Pod?

Suh*_*nna 8 kubernetes kubernetes-health-check kubectl

我想知道,HPA 是否考虑了 pod 中多个容器的 CPU 利用率平均值,以便扩大/缩小数量。豆荚。例如,如果我为具有 2 个容器的部署(pod)指定如下所示的 HPA。为了实现 HPA 的纵向扩展,是否需要两个容器中的 CPU 利用率都达到 80%?换句话说,如果容器 A的 CPU 利用率为 80%,但容器 B的 CPU 利用率仅为 60%。这是否意味着 Pod 不会因 HPA 而扩大规模。据我观察,情况确实如此。但我对此不确定,因为 kubernetes 文档中没有明确的说明。不幸的是,我不是最好的开发人员,无法从源代码中解决这个问题。任何帮助&如果可能的话参考,将不胜感激。太感谢了。

apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
  name: blackbox-rc-hpa
  namespace: monitoring
spec:
  scaleTargetRef:
    apiVersion: v1
    kind: extensions/v1beta1
    name: blackbox
  minReplicas: 1
  maxReplicas: 4
  targetCPUUtilizationPercentage: 80
Run Code Online (Sandbox Code Playgroud)

Inn*_*gbo 4

控制器计算每个 Pod 中容器的利用率值,然后取平均值。因此,在您的场景中,平均值将为 70% https://kubernetes.io/docs/tasks/run-application/horizo​​ntal- pod-autoscale/