对GKE中过度供应公式的两种不同解释



对于自动伸缩时GKE中用于过度配置资源的公式,我发现了两种解释。

根据以下两个来源:

  • 自动缩放和过度配置

  • 使用GKE自动缩放:集群和节点

公式:

(1 - buffer) / (1 + traffic)

地点:

buffer: percentage of CPU buffer that you reserve, so your workloads do not get to 100% CPU utilization
traffic: percentage of traffic increase(expected) in the following two or three minutes

将为HPA提供新资源利用率目标的值,以适当地处理预期的流量增长,同时最小化额外的资源分配。

因此,例如,如果您有以下值:

buffer: 15%, so you would get a CPU utilization of up to 85%
traffic: 30% increase in the next two or three minutes
target utilization = (1 - 0.15) / (1 + 0.30) = 0.85 / 1.3 = 0.65384615
target utilization = 65%

根据这两个来源的解释,65%是HPA的优化目标利用率。。然后,获得35%的超额供应资源在现有节点中调度新的pod,而集群自动缩放器(和节点自动配置器)将在需求高峰期间分配新节点。

问题是实验室在"优化更大的负载"一节中的理解和组合GKE自动缩放策略;(版本:Manual最后更新:2021年3月19日)确定65%的值将是您需要分配的超额资源的百分比。

因此,根据前两个来源:

  • 资源过剩百分比:35%

但根据实验室的"理解和结合GKE自动缩放策略":

  • 资源过剩百分比:65%

哪一个是正确的解释?

恕我直言,正确的解释是过度供应的值等于35%。该公式为HPA提供了一个新的资源利用目标,该目标涉及(新的)流量需求(而不是要分配的多余资源的百分比)。

是的,第一种解释是正确的。在第一种解释中,他们将过度配置计算为未使用的资源超过集群的总大小,因为水平Pod自动缩放配置为将资源利用率保持在~65%,因此您有100% - 65% = 35%未使用的资源,这是HPA的新目标资源利用率值。

在第二种解释中,即"理解和结合GKE自动缩放策略",他们似乎考虑了"超额配置百分比"。随着"需要"的计算能力增加多少;计算资源。换句话说,您有一个3个节点的集群,需要运行您的工作负载,并且您在上面添加了2个节点,这使得您已经超额配置了集群2/3 = 66.6666% ~= 65%。

第一种解释更直观,在实际使用中更有意义。

相关内容

  • 没有找到相关文章

最新更新