Skip to content

abhirockzz/kubernetes-keda-prometheus

Repository files navigation

Kubernetes app auto-scaling with Prometheus and KEDA

Scalability is a key requirement for cloud native applications. With Kubernetes, scaling your application is as simple as increasing the number of replicas for the corresponding Deployment or ReplicaSet - but, this is a manual process. Kubernetes makes it possible to automatically scale your applications (i.e. Pods in a Deployment or ReplicaSet) in a declarative manner using the Horizontal Pod Autoscaler specification.

This blog post demonstrates how you can external metrics to auto-scale a Kubernetes application. For demonstration purposes, we will use HTTP access request metrics that are exposed using Prometheus. Instead of using the Horizontal Pod Autoscaler directly, we will leverage Kubernetes Event Driven Autoscaling aka KEDA - an open source Kubernetes operator which integrates natively with the Horizontal Pod Autoscaler to provide fine grained autoscaling (including to/from zero) for event-driven workloads.