KEDA Architecture

KEDA Architecture An architecture diagram generated by Archify. KEDA Operator · Watches ScaledObjects, manages HPA · Kubernetes Cluster KEDA Operator Watches ScaledObjects, manages HPA ScaledObject / ScaledJob · Defines scale target and triggers · Kubernetes Cluster ScaledObject / ScaledJob Defines scale target and triggers Deployment / Job · Target workload · Kubernetes Cluster Deployment / Job Target workload KEDA Metrics Server · Collects and exposes external metrics · Kubernetes Cluster KEDA Metrics Server Collects and exposes external metrics Horizontal Pod Autoscaler · Metric-based scaling · Kubernetes Cluster Horizontal Pod Autoscaler Metric-based scaling Message Queues · Event source · External Event Sources Message Queues Event source Databases · Event source · External Event Sources Databases Event source Streaming Platforms · Event source · External Event Sources Streaming Platforms Event source Custom Metrics · Metric source · External Event Sources Custom Metrics Metric source Watches Creates / updates HPA Provides metrics References Scales Polls Polls Polls Polls Kubernetes Cluster External Event Sources Legend KEDA components / HPA Databases Kubernetes resources Message queues / streaming Custom metric sources

Key Components

  • • KEDA Operator: watches ScaledObject/ScaledJob resources and manages HPA
  • • KEDA Metrics Server: collects metrics from external sources and exposes them to the Kubernetes API
  • • ScaledObject/ScaledJob: define scaling configuration for Deployments, StatefulSets and Jobs

How It Works

  • • User creates a ScaledObject or ScaledJob defining the target and triggers
  • • The Operator detects it and creates the corresponding HPA
  • • The Metrics Server polls external sources; the HPA scales the workload on those metrics
  • • With no activity, KEDA scales replicas down to 0 (which HPA alone cannot do)