Kubernetes 水平 Pod 自动缩放似乎违反直觉

问题描述 投票:0回答:1

阅读 Kubernetes 文档,我发现了这个文档:水平 Pod 自动缩放算法详细信息

它声称服务的 Pod 数量是使用以下方法计算的:

desiredReplicas = ceil[currentReplicas * ( currentMetricValue / desiredMetricValue )]

下面给出了当前值为

200m
和所需的
100m
的示例,我们会将副本数量增加 2 倍。

这似乎非常违反直觉,考虑到如果我们已经是期望值的 2 倍,我们不应该缩小规模吗?

我尝试搜索k8s代码库,但由于我不了解内部实现,因此无法找到正确的代码位置。 我希望文档可能已经过时/代码注释分享一些启示:)。

kubernetes
1个回答
0
投票

假设我们正在平均 CPU 上进行扩展。然后,我们观察到 pod 中的平均 CPU 数量为 200m,但我们希望平均 CPU 数量为 100m。我们的 Pod 超载了。为了解决这个问题,我们需要扩展(添加更多 Pod 来分担负载)。具体来说,为了达到每个 Pod 的目标 CPU 负载,我们需要将 Pod 数量增加一倍。这就是公式的意思。

© www.soinside.com 2019 - 2024. All rights reserved.