tencent cloud

Tencent Kubernetes Engine

DocumentaçãoTencent Kubernetes EngineUse CasesAuto ScalingKEDAScheduled Horizontal Scaling (Cron Triggers)

Scheduled Horizontal Scaling (Cron Triggers)

PDF
Modo Foco
Tamanho da Fonte
Última atualização: 2024-12-24 15:55:02

Cron Triggers

Kubernetes-based Event-Driven Autoscaler (KEDA) supports Cron triggers, enabling the configuration of periodic scheduled scaling with Cron expressions. For details, please refer to KEDA Scalers: Cron.
Cron triggers are suitable for businesses with periodic characteristics, such as business traffic with fixed periodic peaks and troughs.

Use Cases

Daily Fixed-time Flash Sales Activities

The characteristic of a flash sales activity is that the time is relatively fixed, allowing for scaling out in advance before the activity begins. Below is an example configuration of ScaledObject.
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
name: seckill
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: seckill
pollingInterval: 15
minReplicaCount: 2 # Keep at least 2 replicas
maxReplicaCount: 1000
advanced:
horizontalPodAutoscalerConfig:
behavior: # Control scaling behavior by using a conservative approach of quick scaling out and slow scaling in
scaleDown: # Slow scaling in: A period of at least 10 minutes is required before scaling in
stabilizationWindowSeconds: 600
policies:
- type: Percent
value: 100
periodSeconds: 15
scaleUp: # Quick scaling out: Allow scaling out up to 5 times every 15s
policies:
- type: Percent
value: 500
periodSeconds: 15
triggers:
- type: cron # Ensure at least 200 replicas within half an hour before and after the flash sales activity every morning at 10 am
metadata:
timezone: Asia/Shanghai
start: 30 9 * * *
end: 30 10 * * *
desiredReplicas: "200"
- type: cron # Ensure at least 200 replicas within half an hour before and after the flash sales activity every evening at 6 pm
metadata:
timezone: Asia/Shanghai
start: 30 17 * * *
end: 30 18 * * *
desiredReplicas: "200"
- type: memory # Scale up when the CPU utilization exceeds 60%
metricType: Utilization
metadata:
value: "60"
- type: cpu # Scale up when the memory utilization exceeds 60%
metricType: Utilization
metadata:
value: "60"

Notes

Usually, the triggers cannot be configured with Cron alone and need to be used in conjunction with other triggers. This is because if no other triggers are active outside the Cron's start and end interval, the number of replicas will drop to minReplicaCount.



Ajuda e Suporte

Esta página foi útil?

comentários