kubernetes KEDA缩小规模活动耗时5分钟

8yoxcaq7  于 2023-06-21  发布在  Kubernetes
关注(0)|答案(1)|浏览(113)

我的pod曾经在几秒钟内缩小20-30,但我不知道现在发生了什么,它花了5分钟缩小,当我在KEDA YML文件中添加minreplica时,从1到0 pod的时间需要几秒钟,但对于n到1 pod,它需要5分钟,我理解这是HPA行为,它需要从n ->1 pod和从1-> 0 pod KEDA负责事件我将此添加到scaledobject文件,但它被忽略

spec:
  scaleTargetRef:
    name: consumer-deployment
  pollingInterval: 5
  cooldownPeriod: 10
  minReplicaCount: 0
  maxReplicaCount: 5

如何缩短默认为5分钟时间

我正在使用k8s和docker桌面

ckocjqey

ckocjqey1#

document所述:
在将资源缩放回0之前,最后一个触发器报告为活动之后等待的时间段。默认为5分钟(300秒)。
cooldownPeriod仅在触发发生后应用;首次创建Deployment(或StatefulSet/CustomResource)时,KEDA将立即将其扩展到minReplicaCount。此外,KEDA冷却时间只适用于缩放为0时;从1到N个副本的扩展由Kubernetes HPA处理。
您的冷却时间将取决于pollingInterval。这是检查每个触发器打开的时间间隔。默认情况下,KEDA将每30秒检查每个ScaledObject上的每个触发源。所以你可以最小化轮询内部时间来减少你的冷却时间。
但是,您可以通过将副本计数编辑为0来启用/禁用缩放规则,也可以使用名为“暂停自动缩放”的单个字段。
将以下注解添加到部署中:

metadata:
   annotations:
      autoscaling.keda.sh/paused-replicas: "0"

无论提供了多少个副本,此注解都将暂停自动缩放。上面的注解会将您当前的工作负载扩展到0个副本并暂停自动扩展。可以将要暂停的对象的副本值设置为任意数量。要再次启用自动缩放,只需从ScaledObject定义中删除注解。

相关问题