Scale a message-processing worker up when a queue fills and back to zero when it empties, eliminating idle compute costs.
Replace CPU-based autoscaling with event-driven signals like Kafka topic lag or Azure Service Bus queue depth.
Run Kubernetes batch jobs that spin up only when work arrives and terminate automatically when done.
Drive autoscaling from cloud storage events or streaming platforms without replacing Kubernetes' built-in machinery.
Requires a running Kubernetes cluster with kubectl access and credentials for the event source being scaled on.
KEDA stands for Kubernetes-based Event Driven Autoscaling. It is a component you add to a Kubernetes cluster to control how many copies of a service are running based on real workload signals, rather than only on CPU or memory usage. The core idea is straightforward: instead of guessing how many containers to keep running at all times, you let external signals decide. If messages are piling up in a queue, KEDA can spin up more containers to process them. When the queue drains, it can scale back down, including all the way down to zero so nothing is running when there is nothing to do. Scaling to zero is significant because it means you pay for compute only when actual work arrives. KEDA works alongside Kubernetes' built-in scaling system rather than replacing it. It acts as an additional metrics source, feeding event-driven signals into the same autoscaling machinery that Kubernetes already uses. It supports a wide range of event sources based on its documentation, including message queues, cloud storage, and streaming platforms. Configuration is done by defining custom resource files in Kubernetes, so teams manage it the same way they manage other cluster settings. The project is a graduated project under the Cloud Native Computing Foundation, which is the same organization that stewards Kubernetes itself. That status reflects a level of maturity and adoption in production environments. It can run in cloud environments or on the edge. For teams already running applications on Kubernetes, KEDA is a way to make scaling decisions based on the actual demand hitting a service, rather than on background resource metrics that may not reflect real user activity.
← kedacore on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.