我是 Kubernetes 和 HPA 的新手。我没有在官方文档可以做下面这样的事情吗?
我当前的样本 hpa 规格:-
hpaSpec:
maxReplicas: 10
minReplicas: 5
targetCPUUtilizationPercentage: 50
targetMemoryUtilizationPercentage: 80
这是否意味着豆荚将放大在以下两种情况下:-
1. CPU utilization > 50% even if memory utilization <80%
2. memory utilization > 80% even if CPU utilization <50%
或者
1. If both CPU utilization > 50% and memory utilization >80%
同样地,缩小如果CPU 利用率低于 50% 或内存利用率低于 80% 或者只有同时满足两个阈值条件?(阈值上的“或”条件还是“与”条件?)
有没有更好的方法做这个即改用averageUtilization
?TIA
答案1
在里面水平 Pod 自动扩缩器文档,算法细节部分,您可以阅读:
如果在 HorizontalPodAutoscaler 中指定了多个指标,则将针对每个指标进行此计算,然后选择所需的最大副本数。如果这些指标中的任何一个无法转换为所需的副本数(例如,由于从指标 API 获取指标时出错)并且可获取的指标建议缩减,则跳过扩展。这意味着,如果一个或多个指标给出的 DesiredReplicas 大于当前值,HPA 仍然能够扩大规模。
这意味着,如果其中一个指标达到阈值,部署就会扩大。
缩小部署也是如此。