KEDA Scaler Not Triggering¶
Symptom¶
A KEDA-managed workload stays at the same replica count even though queue depth, event lag, or the external trigger condition shows work pending.
Possible Causes¶
- Workload Identity or secret-based authentication is failing.
- The metric source is unreachable from the cluster.
- The
ScaledObjectpoints at the wrong workload or has incorrect trigger metadata. - Another external metrics adapter is conflicting with the managed KEDA add-on.
- The event source is healthy, but cooldown or min replica settings make the behavior look stuck.
Diagnosis Steps¶
flowchart TD
A[KEDA scaler not triggering] --> B[Confirm KEDA add-on and operator pods are healthy]
B --> C[Inspect ScaledObject status and events]
C --> D{Auth or endpoint failure?}
D -->|Yes| E[Fix Workload Identity or connectivity]
D -->|No| F{Trigger metadata valid?}
F -->|No| G[Correct trigger type target and values]
F -->|Yes| H[Review cooldown min replicas and adapter conflicts] -
Verify the managed add-on is enabled.
az aks show \ --resource-group "$RG" \ --name "$CLUSTER_NAME" \ --query "workloadAutoScalerProfile.keda.enabled" \ --output tsvCommand Purpose az aks showCheck whether the KEDA add-on is enabled. --resource-groupResource group that contains the AKS cluster. --nameName of the AKS cluster. --querySelects the KEDA enabled flag. --outputOutput format for the result. -
Confirm the operator and metrics API pods are healthy.
-
Inspect the
ScaledObjectand recent events. -
Look for typical failure patterns:
- authentication or token errors,
- connection failures to Service Bus, Storage, Event Hubs, Kafka, or Prometheus,
- target workload name mismatch,
- threshold values that never actually trip.
-
If Workload Identity was enabled after KEDA, restart the operator so the expected environment variables are injected.
Resolution¶
- Fix the federated identity credential, role assignment, or referenced secret path.
- Correct the
scaleTargetRef, trigger type, or trigger metadata. - Restore network reachability to the metric source.
- Remove conflicting external metrics adapters and keep the KEDA add-on as the only external metrics server.
- Increase observability by reviewing Kubernetes events alongside the
ScaledObjectstatus.
Prevention¶
- Standardize scaler templates for each event source type.
- Prefer Workload Identity over deprecated pod identity patterns.
- Keep one owner for KEDA add-on lifecycle and scaler definitions.
- Test trigger activation in pre-production with synthetic backlog before production rollout.