1.负载减小后,默认缩容时间绪等待5分钟。(设置缩容时间情况除外)
负载增大后,默认等待扩容等待5分钟,若达到设置扩容指标,5分钟后再采集的数据任然超过阈值,则触发扩容。
2.扩缩容算法
当前实际大小/期望(预设置)大小=desire目标pod个数(向上取整)
例如:
扩容时:实际需要3800m,目前是2个pod,每个pod limit 2核(2000m),75%
3800/(2000*75%)=3800/1500=2.53向上取整=3,目前实际2个pod,需扩容1个pod
缩容时:实际使用800m,目前3个pod,limit 2000,75%扩容
800/(2000*75%)=800/1500=0.53向上取整=1,实际3 pod,需缩容2个pod。
3.扩缩容灵敏度
扩容:默认超过扩缩容阈值10%,则触发扩容
缩容:默认小于扩缩容阈值10%,则触发缩容
根据业务场景调节 HPA 扩缩容灵敏度
##快速扩容,触发时扩容10倍,1->10->100->1000,缩容:默认5分钟。
突然爆发流量业务场景:整点活动,抢购,抢票
##快速扩容,缓慢缩容。1->10->100->1000,缩容:10分钟缩容1个pod
突发流量后,可能会又来一波流量高峰
##缓慢扩容,一次只扩一个pod
##延长缩容时间窗口,默认5分钟缩容,可以改成10分钟后缩容,每次缩容5个
##延长扩容时间窗口,频繁扩容毛刺。即触发扩容后,等待10分钟再扩容,可能这10分钟内能处理完,无需扩容了。