在Kubernetes文档https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#algorithm-details中说:
例如,如果当前度量值是200m,而期望值是100m,那么副本的数量将翻倍,因为200.0/100.0 == 2.0。如果当前值是50m,那么副本的数量将减半,因为50.0/100.0 == 0.5。如果比率足够接近1.0(在全局可配置的公差范围内,默认为0.1),控制平面跳过任何缩放动作。
但是没有关于如何在yaml hpa配置中更改此容差的信息。下面是我的hpa配置
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: my-app-hpa
namespace: my-app
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: my-app
minReplicas: 1
maxReplicas: 6
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 70
如何修改容差值?
Kubernetes中水平pod自动缩放器(HPA)的容差值是一个全局配置设置,而不是在单个HPA对象上设置。在Kubernetes控制平面的控制器管理器上设置。可以通过修改控制器管理器的配置文件,然后重新启动控制器管理器来修改容差值。