5

我想知道,如果 HPA 考虑一个 pod 中多个容器的 CPU 利用率平均值,以便按比例放大/缩小编号。豆荚。例如,如果我为具有 2 个容器的部署(pod)指定如下所示的 HPA。为了使 HPA 扩大规模,是否需要两个容器的 CPU 利用率都达到 80%?换句话说,如果容器 A的 CPU 利用率为 80%,但容器 BCPU 利用率仅为 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
4

3 回答 3

3

控制器将利用率值计算为每个 pod 中容器的百分比,然后取平均值。所以在你的场景中意味着 70% https://kubernetes.io/docs/tasks/run-application/horizo ​​ntal-pod-autoscale/

于 2017-09-10T12:04:06.547 回答
1

请求的 pod 资源是其所有容器请求的资源的总和。因此,在这种情况下,您可能有 70% 的 CPU 利用率。

于 2017-09-09T23:59:38.767 回答
0

有 10% 的容差targetCPUUtilizationPercentage。在您的情况下,平均 cpu 利用率应大于 88% 以触发扩大,小于 72% 以缩小。由于平均 CPU 利用率为 70%,因此您的副本将缩减为 1。

于 2018-03-28T10:43:19.023 回答