Dmy*_*kyi 8 autoscaling kubernetes hpa
根据K8s文档,为了避免副本属性的抖动,stabilizationWindowSeconds可以使用
当用于扩展的指标持续波动时,稳定窗口用于限制副本的波动。自动缩放算法使用稳定窗口来考虑过去计算的期望状态以防止缩放。
当指标表明目标应该缩小时,算法会查看先前计算的所需状态并使用指定间隔中的最高值。
据我从文档中了解到,具有以下 hpa 配置:
horizontalPodAutoscaler:
enabled: true
minReplicas: 2
maxReplicas: 14
targetCPUUtilizationPercentage: 70
behavior:
scaleDown:
stabilizationWindowSeconds: 1800
policies:
- type: Pods
value: 1
periodSeconds: 300
scaleUp:
stabilizationWindowSeconds: 60
policies:
- type: Pods
value: 2
periodSeconds: 60
Run Code Online (Sandbox Code Playgroud)
如果在过去 1800 秒(30 分钟)内的任何时间 hpa 计算出的目标 Pod 数量等于 7 个 Pod,则不应缩减我的部署规模(假设从 7 个 Pod 减少到 6 个 Pod)。但我仍在观察部署中副本的抖动。
我在文档中误解了什么以及如何避免连续扩大/缩小 1 个 Pod?
库伯内特v1.20
高性能PA说明:
CreationTimestamp: Thu, 14 Oct 2021 12:14:37 +0200
Reference: Deployment/my-deployment
Metrics: ( current / target )
resource cpu on pods (as a percentage of request): 64% (1621m) / 70%
Min replicas: 2
Max replicas: 14
Behavior:
Scale Up:
Stabilization Window: 60 seconds
Select Policy: Max
Policies:
- Type: Pods Value: 2 Period: 60 seconds
Scale Down:
Stabilization Window: 1800 seconds
Select Policy: Max
Policies:
- Type: Pods Value: 1 Period: 300 seconds
Deployment pods: 3 current / 3 desired
Conditions:
Type Status Reason Message
---- ------ ------ -------
AbleToScale True ReadyForNewScale recommended size matches current size
ScalingActive True ValidMetricFound the HPA was able to successfully calculate a replica count from cpu resource utilization (percentage of request)
ScalingLimited False DesiredWithinRange the desired count is within the acceptable range
Events: <none>
Run Code Online (Sandbox Code Playgroud)