keda

kedacoreApache-2.0活跃维护

基于 Kubernetes 的事件驱动自动伸缩组件,能根据队列、消息等事件源动态扩缩容任意容器,让无服务器和事件驱动负载按需伸缩。

KEDA is a Kubernetes-based Event Driven Autoscaling component. It provides event driven scale for any container running in Kubernetes

v2.21.0发布于 2026-09-23 16:20 UTC10,710star +11 / 7 天1,582fork同步于 2026-11-10 17:29 UTC

怎么上手

由 README 提炼,执行前请确认
README 未给出具体安装命令,仅指向部署文档:https://keda.sh/docs/latest/deploy/
硬件要求按 README 说明

README 未说明

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

KEDA 是 Kubernetes 上的事件驱动自动扩缩容组件,支持按事件源精细伸缩,包括缩容到零

基于 Kubernetes 的事件驱动自动伸缩组件,能根据队列、消息等事件源动态扩缩容任意容器,让无服务器和事件驱动负载按需伸缩。

核心能力

  • 作为 Kubernetes Metrics Server 提供指标
  • 用自定义资源定义声明扩缩容规则
  • 与 Horizontal Pod Autoscaler 原生集成
  • 支持缩容到零及从零扩容
  • 无外部依赖,可跑在云和边缘

容易踩的坑

README 未给出具体命令,部署方式(Helm、Operator Hub、YAML)需查阅官方部署文档

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v2.21.0
  1. v2.21.0最新正式版2026-09-23 · 2026-09-23 16:20 UTC

    We are happy to release KEDA 2.21.0 🎉

    [!IMPORTANT] KEDA 2.21.0 contains three breaking changes. If you are upgrading from KEDA 2.20, review Upgrading from KEDA 2.20 to 2.21 before upgrading.

    Before upgrading from KEDA 2.20

    Service account token audience enforcement (CVE-2026-77524)

    KEDA 2.21 fixes the critical CVE-2026-77524 / GHSA-637c-6jxx-4rwm. You are affected if you use:

    • Vault Kubernetes authentication, including configurations using the operator token, an existing projected token, or credential.serviceAccountName.
    • Any TriggerAuthentication or ClusterTriggerAuthentication using boundServiceAccountToken, including integrations with Metrics API, Prometheus, Loki, Datadog Cluster Agent, and other token-authenticated receivers.

    You are not affected if you use ordinary Vault token authentication, API keys, OAuth credentials, or another authentication method that does not use a bound service account token. Before upgrading, review carefully the upgrade guide

    Temporal Rules-Based Versioning settings

    The Temporal scaler no longer accepts the deprecated buildId, selectAllActive, and selectUnversioned settings. Existing ScaledObjects and ScaledJobs containing them will fail scaler metadata parsing. Remove the settings for unversioned workers, or migrate versioned workers to workerDeploymentName and workerDeploymentBuildId. See Temporal Rules-Based Versioning settings.

    Azure Pipelines in-flight jobs

    KEDA 2.21 adds scaleOnInFlight, defaulting to true. Queue length now includes unfinished jobs already assigned to an agent. Set scaleOnInFlight: false to retain the unassigned-only behavior from KEDA 2.20; for ScaledJobs, combine this with the accurate scaling strategy. See Azure Pipelines in-flight jobs.

    Highlights

    • Reduce redundant scaler-backend requests when the HPA already owns the scaling decision (#7999, #8031).
    • Add Azure Cosmos DB Change Feed, ClickHouse, and GCP Cloud Spanner scalers.
    • Let external scalers update HPA targets dynamically through StreamMetricSpec, and expose external-scaler gRPC client metrics.
    • Add Prometheus OAuth2 client-credentials authentication, Kafka Kerberos credential-cache support, and Azure Pipelines service-principal authentication.
    • Improve scaler and authentication lifecycles with deterministic cancellation, refresh handling, Kubernetes API timeouts, and external-scaler connection cleanup.

    Deprecation notice

    The Liiklus scaler is deprecated because the upstream project is unmaintained. Its code is planned for removal in a later KEDA release. See #7929.

    Learn how to deploy KEDA by reading our documentation.

    🗓️ The next KEDA release is currently estimated for the 2nd week of January 2027. Learn more in our roadmap.

    Breaking Changes

  2. v2.20.22026-07-31 · 2026-07-31 08:14 UTC
    查看更新说明

    Release KEDA v2.20.2 :rocket:

    ⚠️⚠️⚠️⚠️ ⚠️ Please read upgrade notes if you are upgrading from version < 2.20.0: https://github.com/kedacore/keda/releases/tag/v2.20.0 ⚠️⚠️⚠️⚠️⚠️

    Improvements

    • General: Introduce a dedicated HPAActive condition on ScaledObject mirroring the HPA's own ScalingActive status, so transient HPA metric gaps no longer flip the Ready condition to False (#7914)

    Fixes

    • General: Fix concurrent map writes panic in the shared root CA CertPool (#7910)
    • General: Fix nil pointer dereference in AWS Secret Manager TriggerAuthentication when awsSecretManager.credentials is omitted and no awsSecretManager.podIdentity is set (#7927)
    • General: Fix nil pointer dereference in customScalingStrategy.GetEffectiveMaxScale when customScalingQueueLengthDeduction is omitted; the optional field is now treated as zero deduction instead of panicking (#7798)
    • General: Fix nil pointer dereference in GetCurrentReplicas when a Deployment/StatefulSet/ReplicaSet is returned from the informer cache with an undefaulted spec.replicas; a nil value is now treated as the Kubernetes default of 1 instead of panicking (#7863)
    • General: Fix ScaledJob CRD validation to include "default" as a valid value for scalingStrategy.strategy (#7855)
    • General: Guard GetCurrentReplicas against nil Status.ScaleTargetGVKR to prevent operator panics under the cache race documented in (#4389) / (#4955)
    • General: Restore core "" API group in events RBAC so that client-go's event broadcaster can write legacy events (#7922)
    • General: Restore gRPC reconnect backoff in the metrics service client; an unset Backoff in WithConnectParams disabled backoff and caused a zero-delay reconnect loop that flooded logs when keda-operator was unreachable (#7856)
    • General: Share HTTP transports across scalers to reuse connection pools and avoid re-dial storms at high ScaledObject counts (#7789)
    • General: Treat negative external metric values as zero to prevent incorrect HPA scaling (#7880)
    • Azure Blob Storage Scaler: Fix globPattern never matching when written in path-style with a leading /, since blob names never have one (#6492)
    • MongoDB Scaler: Disconnect the client when the initial Ping fails so the background topology-monitoring connections opened by mongo.Connect are not leaked (#5612)

    New Contributors

    Full Changelog: https://github.com/kedacore/keda/compare/v2.20.1...v2.20.2

  3. v2.20.12026-06-08 · 2026-06-08 17:55 UTC
    查看更新说明

    Release KEDA v2.20.1 :rocket:

    ⚠️⚠️⚠️⚠️ ⚠️ Please read upgrade notes if you are upgrading from version < 2.20.0: https://github.com/kedacore/keda/releases/tag/v2.20.0 ⚠️⚠️⚠️⚠️⚠️

    Fixes

    • General: Fix concurrent map read/write data race in fallback updateStatus that caused panics when multiple triggers were scaling simultaneously (#7838)
    • General: Fix KEDAScalersStarted "Started scalers watch" event not being emitted for ScaledJobs because it shared an events.k8s.io aggregation key with the per-scaler "scaler is built" event (#7820)

    New Contributors

    Full Changelog: https://github.com/kedacore/keda/compare/v2.20.0...v2.20.1

  4. v2.20.02026-06-01 · 2026-06-01 14:46 UTC
    查看更新说明

    We are happy to release KEDA 2.20.0 🎉

    ⚠️ Upgrade note: events moved to events.k8s.io (#7781)

    With the Kubernetes 0.35 dependency bump, KEDA now records Kubernetes events via the events.k8s.io API group instead of the legacy core events resource. If you deploy KEDA with custom or restricted RBAC, grant the operator create/patch on events.k8s.io/events before upgrading, otherwise event recording will fail. The bundled KEDA manifests and Helm chart already include the updated permissions.

    Highlights:
    • Introduce new OpenSearch Scaler
    • Introduce Elastic Forecast Scaler
    • Add scalingModifiers fallback behavior
    • Add support for AWS External ID in TriggerAuthentication podIdentity for all AWS scalers
    • Add scaler HTTP request metrics for outbound requests made during metric collection

    Learn how to deploy KEDA by reading our documentation.

    🗓️ The next KEDA release is currently being estimated for 2nd week of September 2026, learn more in our roadmap.

    New

    • General: Add scalingModifiers fallback behavior (#7366)
    • General: Introduce Elastic Forecast Scaler (#7494)
    • General: Introduce new OpenSearch Scaler (#7456)

    Improvements

    • General: Add cooldownPeriod and pollingInterval checks for ScaledObject (#7271)
    • General: Add CRD-level validation markers (Minimum, MinLength, MinItems, Enum) for ScaledObject, ScaledJob, ScaleTriggers, and TriggerAuthentication API types (#7533)
    • General: Add --leader-election-id flag to allow configuring the leader election Lease name (#7564)
    • General: Add scaler HTTP request metrics (keda_scaler_http_requests_total, keda_scaler_http_request_duration_seconds) for outbound HTTP requests made during scaler metric collection (#6600)
    • General: Allow more control of TLS versions & ciphers via KEDA_HTTP_TLS_CIPHER_LIST, KEDA_SERVICE_TLS_CIPHER_LIST and KEDA_SERVICE_MIN_TLS_VERSION env vars (#7617)
    • General: Cap each scalers-cache reader at a per-reader budget derived from globalHTTPTimeout so ScalersCache.Close cannot block indefinitely (#7574)
    • General: Make APIService cert injections optional (#7559)
    • General: Remove unconditional json.MarshalIndent calls from admission webhook validation hot paths; replace spec-comparison MarshalIndent-and-string-compare in isRemovingFinalizer variants with reflect.DeepEqual. Prevents webhook OOM under sustained admission load at large scale (observed at ~60k ScaledObjects) (#7670)
    • AWS Scalers: Add support for AWS External ID in TriggerAuthentication podIdentity for all AWS scalers (SQS, Kinesis, DynamoDB, CloudWatch, etc.) to enable cross-account access scenarios (#6921)
    • Elasticsearch Scaler: Add HTTP status check for Elasticsearch errors (#7480)
    • Github Runner Scaler: Handle rate limit errors by respecting X-RateLimit-Reset and Retry-After headers and returning cached queue length (#7683)
    • Kubernetes Workload Scaler: Add groupByNode parameter (#7628)
    • Metrics API Scaler: Add custom HTTP client timeout ([#7549](https://
  5. v2.19.02026-02-02 · 2026-02-02 10:10 UTC
    查看更新说明

    We are happy to release KEDA 2.19.0 🎉

    Highlights:
    • Introducing new Kubernetes Resource Scaler
    • Adding file-based authentication support for ClusterTriggerAuthentication

    Learn how to deploy KEDA by reading our documentation.

    🗓️ The next KEDA release is currently being estimated for 2nd week of May 2026 , learn more in our roadmap.

    New

    • General: Add file-based authentication support for ClusterTriggerAuthentication (#7083)
    • General: Introduce new Kubernetes Resource Scaler (#7212)

    Improvements

    • General: Correct error message when awsSecretAccessKey is missing in credential-based authentication (#7265)
    • General: Emit more events about what is happening with ScaledObject/ScaledJob (#7382)
    • General: Raw metrics stream - include trigger activity status in response (#7369)
    • AWS CloudWatch Scaler: Add cross-account observability support (#7189)
    • Dynamodb Scaler: Add FilterExpression support (#7102)
    • Dynatrace Scaler: Support DQL querying (#7377)
    • MongoDB Scaler: Add TLS support (#6976)

    Fixes

    • General: Apply fallback in polling loop to enable scaling from zero (#7239)
    • General: Fix accurateScalingStrategy ignoring pendingJobCount in maxReplicaCount check (#7329)
    • General: Replace deprecated azure autorest dependency to azure sdk for go (#7073)
    • Datadog Scaler: Return request in cluster agent proxy without bearer auth (#7341)
    • Datadog Scaler: Use metricUnavailableValue for 422 errors in Datadog Cluster Agent (#7246)
    • IBMMQ Scaler: Create new HTTP request for each queue query in IBMMQ scaler (#7202)
    • Kafka Scaler: Improve check for missing partition information when calculating lag (#7414)
    • Temporal Scaler: Fix TLS RootCAs initialization when using API key authentication with Temporal Cloud (#7367)

    Breaking Changes

    • NATS Streaming scaler: Remove NATS Streaming Server (aka Stan) (#6366)

    Other

    • ScaledObject/ScaledJob: Track activity for each trigger in the status (#7347)

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    KEDA allows for fine-grained autoscaling (including to/from zero) for event driven Kubernetes workloads. KEDA serves as a Kubernetes Metrics Server and allows users to define autoscaling rules using a dedicated Kubernetes custom resource definition.

    KEDA can run on both the cloud and the edge, integrates natively with Kubernetes components such as the Horizontal Pod Autoscaler, and has no external dependencies.

    We are a Cloud Native Computing Foundation (CNCF) graduated project.

    Table of contents

    Getting started

    You can find several samples for various event sources here.

    Deploying KEDA

    There are many ways to deploy KEDA including Helm, Operator Hub and YAML files.

    Documentation

    Interested to learn more? Head over to keda.sh.

    Community

    If interested in contributing or participating in the direction of KEDA, you can join our community meetings! Learn more about them on our website.

    Just want to learn or chat about KEDA? Feel free to join the conversation in #KEDA on the Kubernetes Slack!

    Adopters - Become a listed KEDA user!

    We are always happy to list users who run KEDA in production, learn more about it here.

    Governance & Policies

    You can learn about the governance of KEDA here.

    Support

    Details on the KEDA support policy can found here.

    Roadmap

    We use GitHub issues to build our backlog, a complete overview of all open items and our planning.

    Learn more about our roadmap here.

    Releases

    You can find the latest releases here.

    Contributing

    You can find contributing guide here.

    Building & deploying locally

    Learn how to build & deploy KEDA locally here.

    Testing strategy

    Learn more about our testing strategy here.