Skip to content

Releases: kedacore/keda

KEDA 2.6.0

31 Jan 16:02
ffe4e64
Compare
Choose a tag to compare

We are happy to release KEDA 2.6.0 🎉

Here are some highlights:

  • Five new Scalers 🎉 🎉
  • Important bugfixes and improvements related to caching
  • KEDA images are signed using cosign
  • We no longer push to Docker Hub as of v2.5 as per our announcement in March 2021

Learn how to deploy KEDA by reading our documentation.

New

  • Add ActiveMQ Scaler (#2305)
  • Add Azure Application Insights Scaler (2506)
  • Add New Datadog Scaler (#2354)
  • Add New Relic Scaler (#2387)
  • Add PredictKube Scaler (#2418)

Improvements

  • General: Delete the cache entry when a ScaledObject is deleted (#2564)
  • General: Fail fast on buildScalers when not able to resolve a secret that a deployment is relying on (#2394)
  • General: keda-operator Cluster Role: add list and watch access to service accounts (#2406)|(#2410)
  • General: Sign KEDA images published on GitHub Container Registry (#2501)|(#2502)|(#2504)
  • AWS Scalers: Support temporary AWS credentials using session tokens (#2573)
  • AWS SQS Scaler: Allow using simple queue name instead of URL (#2457)
  • Azure EventHub Scaler: Don't expose connection string in metricName (#2404)
  • Azure Pipelines Scaler: Support poolName or poolID validation (#2370)
  • CPU Scaler: AAding e2e test for the cpu scaler (#2441)
  • External Scaler: Fix wrong calculation of retry backoff duration (#2416)
  • Graphite Scaler: Use the latest datapoint returned, not the earliest (#2365)
  • Kafka Scaler: Allow flag topic to be optional, where lag of all topics within the consumer group will be used for scaling (#2409)
  • Kafka Scaler: Concurrently query brokers for consumer and producer offsets (#2405)
  • Kubernetes Workload Scaler: Ignore terminated pods (#2384)
  • PostgreSQL Scaler: Assign PostgreSQL userName to correct attribute (#2432)|(#2433)
  • Prometheus Scaler: Support namespaced Prometheus queries (#2575)

Breaking Changes

New Contributors

Full Changelog: v2.5.0...v2.6.0

KEDA 2.5.0

25 Nov 17:06
22d7163
Compare
Choose a tag to compare

We are happy to release KEDA 2.5.0 🎉

Here are some highlights:

  • Introducing a new Cassandra scaler
  • Introducing a new Elasticsearch scaler
  • Introducing a new Graphite scaler
  • GCP PubSub Scaler: subscriptionSize is deprecated in favor of mode and value
  • Performance improvements
  • Lot of improvements in several scalers

Learn how to deploy KEDA by reading our documentation.

New

  • Add Cassandra Scaler (#2211)
  • Add Elasticsearch Scaler (#2311)
  • Add Graphite Scaler (#1628)
  • ScaledJob: introduce MultipleScalersCalculation (#2016)
  • ScaledJob: introduce RolloutStrategy (#2164)
  • Add ScalersCache to reuse scalers unless they need changing (#2187)
  • Cache metric names provided by KEDA Metrics Server (#2279)

Improvements

  • Artemis Scaler: parse out broker config parameters in case restAPITemplate is given (#2104)
  • AWS Cloudwatch Scaler: improve metric exporting logic (#2243)
  • AWS Cloudwatch Scaler: return minimum value for the metric when cloudwatch returns empty list (#2345)
  • Azure Log Analytics Scaler: add support to provide the metric name(#2106)
  • Azure Pipelines Scaler: improve logs (#2297)
  • Cron Scaler: improve validation in case start & end input is same (#2032)
  • Cron Scaler: improve the cron validation (#2038)
  • GCP PubSub Scaler: introduce SubscriptionSize and OldestUnackedMessageAge modes (#2266)
  • GCP PubSub Scaler: add GCP identity authentication when using (#2225)
  • GCP PubSub Scaler: add possibility to reference a GCP PubSub subscription by full link, including project ID (#2269)
  • InfluxDB Scaler: add unsafeSsl parameter (#2157|#2320)
  • Metrics API Scaler: add Bearer auth (#2028)
  • MongoDB Scaler: add support to get connection data from Trigger Authorization (#2115)
  • MSSQL Scaler: add support to get connection data from Trigger Authorization (#2112)
  • MySQL Scaler: add support to get connection data from Trigger Authorization (#2113)
  • MySQL Scaler: don't expose connection string in metricName (#2171)
  • PostgreSQL Scaler: add support to get connection data from Trigger Authorization (#2114)
  • Prometheus Scaler: validating values length in Prometheus query response (#2264)
  • Prometheus Scaler: omit serverAddress from generated metric name (#2099)
  • RabbitMQ Scaler: anonymize the host in case of HTTP failure (#2041)
  • RabbitMQ Scaler: escape queueName and vhostName before use them in query string (bug fix) (#2055)
  • RabbitMQ Scaler: add custom http timeout (#2086)
  • RabbitMQ Scaler: add pageSize (using regex) (#2162|#2319)
  • Redis Scaler: upgrade library, add username and Sentinel support (#2181)
  • SeleniumGrid Scaler: add unsafeSsl parameter (#2157)
  • Stan Scaler: provide support for configuring authentication through TriggerAuthentication (#2167)
  • Allow setting MaxConcurrentReconciles for controllers (#2272)
  • Cleanup metric names inside scalers (#2260)
  • Drop support to ValueMetricType using cpu_memory_scaler (#2218)
  • Improve metric name creation to be unique using scaler index inside the scaler (#2161)
  • Improve error message if IdleReplicaCount are equal to MinReplicaCount to be the same as the check (#2212)
  • TriggerAuthentication/Vault: add support for HashiCorp Vault namespace (Vault Enterprise) (#2085)

Deprecations

  • GCP PubSub Scaler: subscriptionSize is deprecated in favor of mode and value (#2266)

Breaking Changes

  • None

Other

  • Ensure that context.Context values are properly passed down the stack (#2202|#2249)
  • Refactor AWS related scalers to reuse the AWS clients instead of creating a new one for every GetMetrics call (#2255)
  • Improve context handling in appropriate functionality in which we instantiate scalers (#2267)
  • Migrate to Kubebuilder v3 (#2082)
    • API path has been changed: github.com/kedacore/keda/v2/api/v1alpha1 -> github.com/kedacore/keda/v2/apis/keda/v1alpha1
  • Use Patch to set FallbackCondition on ScaledObject.Status (#2037)
  • Bump Golang to 1.17.3 (#2329)
  • Add Makefile mockgen targets (#2090|#2184)
  • Add github action to run e2e command "on-demand" (#2241)
  • Add execution url in the pr-e2e triggering comment and fix problem related with not starting with (#2306)

New Contributors

Full Changelog: v2.4.0...v2.5.0

Detailed Overview
Read more

KEDA 2.4.0

06 Aug 08:21
dbdba1e
Compare
Choose a tag to compare

We are happy to release KEDA 2.4.0 🎉

Here are some highlights:

  • Introducing a new Solace PubSub+ Event Broker scaler
  • Introducing a new Selenium Grid scaler
  • Introducing a new Kubernetes Workload scaler
  • Introduce fallback functionality
  • Introduce Idle Replica Mode

Learn how to deploy KEDA by reading our documentation.

New

  • Add Solace PubSub+ Event Broker scaler (#1945)
  • Add Selenium Grid scaler (#1971)
  • Add Kubernetes Workload scaler (#2010)
  • Introduce fallback functionality (#1872)
  • Introduce Idle Replica Mode (#1958)
  • ScaledJob - Support pod conditions for pending job count calculation (#1970|#2009)

Improvements

  • Optimize Kafka scaler by fetching all topic offsets using a single HTTP request (#1956)
  • Adding ability to specify Kafka Broker Version (#1866)
  • Support custom metric name in RabbitMQ scaler (#1976)
  • Support using regex to select the queues in RabbitMQ scaler (#1957)
  • Extend Azure Monitor scaler to support custom metrics (#1883)
  • Support non-public cloud environments in the Azure Service Bus scaler (#1907)
  • Support non-public cloud environments in the Azure Storage Queue and Azure Storage Blob scalers (#1863)
  • Adjusts InfluxDB scaler to support queries that return integers in addition to those that return floats (#1977)
  • Allow InfluxDB authToken, serverURL, and organizationName to be sourced from (Cluster)TriggerAuthentication (#1904)
  • IBM MQ scaler password handling fix (#1939)
  • Metrics APIServer: Add ratelimiting parameters to override client (#1944)
  • Fix READY and ACTIVE fields of ScaledJob to show status when we run kubectl get sj (#1855)
  • Show HashiCorp Vault Address when using kubectl get ta or kubectl get cta (#1862)
  • Don't panic when HashiCorp Vault path doesn't exist (#1864)

Breaking Changes

  • Fix keda-system-auth-delegator ClusterRoleBinding name (#1616). Upgrading may leave a stray ClusterRoleBinding with the old name keda:system:auth-delegator behind.

Other

  • Use scaled[object/job].keda.sh/ prefix for KEDA related labels (#2008)

KEDA 2.3.0

27 May 12:33
29febff
Compare
Choose a tag to compare

We are happy to release KEDA 2.3.0 🎉

Here are some highlights:

  • Introducing a new Azure Pipelines scaler
  • Introducing a new OpenStack Metrics scaler
  • New authentication options for Prometheus

Learn how to deploy KEDA by reading our documentation.

New

  • Add Azure Pipelines Scaler (#1706)
  • Add OpenStack Metrics Scaler (#1382)
  • Added basic, tls and bearer authentication support to the Prometheus scaler #1559
  • Add header Origin to Apache Artemis scaler #1796

Improvements

  • Azure Service Bus Scaler: Namespace from connectionString parameter is added to metricName due to uniqueness violation for clusters having more than one queue with the same name (#1755)
  • Remove app.kubernetes.io/version label from label selectors (#1696)
  • Apache Kafka Scaler: Add allowIdleConsumers to the list of trigger parameters (#1684)
  • Fixed goroutine leaks in usage of timers (#1704 | #1739)
  • Setting timeouts in the HTTP client used by the IBM MQ scaler (#1758)
  • Fix cleanup of removed triggers (#1768)
  • Eventhub Scaler: Add trigger parameter checkpointStrategy to support more language-specific checkpoints (#1621)
  • Fix Azure Blob scaler when using multiple triggers with the same blobContainerName and added a optional metricName field (#1816)

Breaking Changes

  • None.

KEDA 2.2.0

18 Mar 16:40
6dc4c35
Compare
Choose a tag to compare

We are happy to release KEDA 2.2.0 🎉

Here are some highlights:

  • Introducing a new Microsoft SQL Server scaler
  • KEDA emits Kubernetes Events
  • Adding several performance related improvements
  • ScaledJob supports metadata labels in Job template
  • Improving AWS SQS, Metrics API, OpenStack Swift and RabbitMQ scaler

Learn how to deploy KEDA by reading our documentation.

New

  • Emit Kubernetes Events on KEDA events (#1523 | #1647)
  • Support Quantities in Metrics API scaler (#1667)
  • Add Microsoft SQL Server (MSSQL) scaler (#674 | docs)
  • Add publishRate trigger to RabbitMQ scaler (#1653)
  • ScaledJob: support metadata labels in Job template (#1686)

Improvements

  • Add KEDA_HTTP_DEFAULT_TIMEOUT support in Operator (#1548)
  • Removed MIN field for ScaledJob (#1553)
  • Add container port for Prometheus on Operator YAML (#1562)
  • Fix a memory leak in Kafka client and close push scalers (#1565)
  • Add 'Metadata' header to AAD podIdentity request (#1566)
  • KEDA should make sure generate correct labels for HPA (#1630)
  • Fix memory leak by checking triggers uniqueness properly (#1640)
  • Print correct ScaleTarget Kind in Events (#1641)
  • Fixed KEDA ClusterRoles to give permissions for ClusterTriggerAuthentications (#1645)
  • Make swiftURL parameter optional for the OpenStack Swift scaler (#1652)
  • Fix memory leak of keda-metrics-apiserver by setting a controller-runtime logger properly (#1654)
  • AWS SQS Scaler: Add Visible + NotVisible messages for scaling considerations (#1664)
  • Fixing behavior on ScaledJob with incorrect External Scaler (#1672)

Breaking Changes

  • None.

KEDA 2.1.0

27 Jan 13:21
4866ce6
Compare
Choose a tag to compare

We are happy to release KEDA v2.1.0 🎉

Here are some highlights:

  • Introduction of ClusterTriggerAuthentication for cluster-wide trigger authentication
  • Introducing new InfluxDB, MongoDB & OpenStack Swift scaler
  • Improvements to AWS Cloudwatch, Azure Event Hub, Kafka & Redis scalers
  • Automatically determine the RabbitMQ protocol (when possible)
  • Support for Redis clusters
  • Performance improvements

Learn how to deploy KEDA by reading our documentation.

New

  • Global authentication credentials can be managed using ClusterTriggerAuthentication objects (#1452)
  • Introducing InfluxDB scaler (#1239)
  • Introducing OpenStack Swift scaler (#1342)
  • Support for Redis clusters in Redis list & Redis streams scalers (#1437)
  • Use Pod Identity with Azure Event Hub scaler (#994)
  • Automatically determine the RabbitMQ protocol when possible
  • Support for setting the RabbitMX protocol via TriggerAuthentication (#1459, #1483)
  • Support for multi-dimensional metrics in AWS Cloudwatch Scaler (#1230)
  • Show MIN/MAX replica counts when using kubectl get scaledobject/scaledjob (#1534)
  • Introducing MongoDB scaler (#1467)

Improvements

  • Support add ScaledJob's label to its job (#1311)
  • Override the vhost on a RabbitMQ scaler via vhostName in the metadata (#1451)
  • Bug fix in aws_iam_authorization to utilize correct secret from env key name (#1332)
  • Add metricName field to postgres scaler and auto generate if not defined (#1381)
  • Mask password in postgres scaler auto generated metricName (#1381)
  • Bug fix for pending jobs in ScaledJob's accurateScalingStrategy (#1323)
  • Fix memory leak because of unclosed scalers (#1413)
  • Optimize Kafka scaler's getLagForPartition function (#1464)
  • Reduce unnecessary /scale requests from ScaledObject controller (#1453)
  • Add support for the WATCH_NAMESPACE environment variable to the operator (#1474)
  • Improve performance when fetching pod information (#1457)
  • Improve performance when fetching current scaling information on Deployments (#1458)
  • Improve error reporting in prometheus scaler (#1497)
  • Check that metricNames are unique in ScaledObject (#1390)
  • Serve OpenAPI spec from KEDA Metrics Apiserver (#1512)
  • Fix unnecessary HPA updates when Resource based Trigger is used (#1541)

Breaking Changes

None.

Other

  • Bump go module version to v2 (#1324)

KEDA 2.0.0

04 Nov 13:58
50bec80
Compare
Choose a tag to compare

Today, we are happy to announce another milestone - KEDA 2.0 is now generally available and ready to scale all your workloads! 🎊

Learn more about this release in our blog post and easily get started.

What's new?

New

  • Introduce Azure Log Analytics scaler (#1061) | docs)
  • Introduce External Push scaler (#820 | docs)
  • Introduce Metrics API Scaler (#1026 | docs)
  • Introduce IBM MQ Scaler (#1259 | docs)
  • Introduce CPU scaler (#1215 | docs)
  • Introduce Memory scaler (#1215 | docs)
  • Introduce scaling any CustomResource that implements Scale subresource (#703)
  • Provide KEDA go-client (#494)
  • Provide KEDA readiness and liveness probes (#788)
  • Support for configuring scaling behavior in HPA v2beta2 (#802)
  • Provide Standard Resource metrics to KEDA (#874)
  • Provide support for Managed Identity support for Azure Monitor scaler (#936)
  • Provide support for multiple triggers on ScaledObject (#476)
  • Provide consumer offset reset policy option to Kafka scaler (#925)
  • Provide option to restore to original replica count after ScaledObject's deletion (#219)
  • Support for multiple redis list types in redis list scaler (#1006 | docs)
  • Introduce Prometheus metrics for KEDA Metrics API Server (#823 | docs)
  • Introduce Scaling Strategy for ScaledJob (#1227)

Improvements

  • ScaledJobs: Introduce new scaling logic with fix orphan pod issue (#1214)
  • enabling authentication for metric api scaler (#1137)
  • Avoid exception when CRD doesn't follow Pod spec shape (#1195)
  • Fix for not sending trigger metadata to the External Scaler
  • Fix for up-down scaling behavior configuration is ignored in Kubernetes version >= 18.0
  • Fix for RabbitMQ queue name causing problems in HPA external metric
  • Update version.go properly during make release
  • Improved code linting
  • Move from autoscaling v2beta1 to v2beta2 for HPA (#721)
  • Introduce shortnames for CRDs (#774)
  • Improve kubectl get scaledobject to show related trigger authentication (#777)
  • Improve kubectl get triggerauthentication to show information about configured parameters (#778)
  • Added ScaledObject Status Conditions to display status of scaling (#750)
  • Added optional authentication parameters for the Redis Scaler (#962)
  • Improved GCP PubSub Scaler performance by closing the client correctly (#1087)

Breaking Changes

We are making some breaking changes, but you can easily migrate with our migration guide.

  • Introduce a separate ScaledObject and ScaledJob(#653)
  • Change apiGroup from keda.k8s.io to keda.sh (#552)
  • Use apiextensions.k8s.io/v1 instead of apiextensions.k8s.io/v1beta1
  • Kubernetes v1.16+ is required instead of v1.13
  • All scalers metadata that is resolved from the scaleTarget environment have suffix FromEnv added. e.g: connection -> connectionFromEnv
  • Remove New() and Close() from the interface of service ExternalScaler in externalscaler.proto.

Changes in our scalers:

  • Kafka:
    • Split metadata and config for SASL and TLS (#1074)
    • Remove Kafka scaler requirement for CA/cert/key (#1288)
    • Removed deprecated brokerList for Kafka scaler (#882)
  • Service Bus:
    • queueLength is now called messageCount (#1109)
  • RabbitMQ:
    • Use host instead of apiHost in rabbitmq scaler. Add protocol in trigger spec to specify which protocol should be used (#1115)

Other

  • Change Metrics Server image name from keda-metrics-adapter to keda-metrics-apiserver (#1105)
  • Update Operator SDK and k8s deps (#1007,#870)
  • Improved code linting
  • Update dependencies

KEDA 2.0.0-rc2

23 Oct 15:38
7553e9a
Compare
Choose a tag to compare
KEDA 2.0.0-rc2 Pre-release
Pre-release

We're happy to release KEDA 2.0.0 release candidate 2 (RC2) which is an incremental release to v2.0.0-rc. 🎉

Our goal is to release KEDA 2.0.0 stable in a couple of weeks.

What's new?

New

  • New IBM MQ Scaler (#1259)
  • Adding Scaling Strategy for ScaledJob (#1227)
  • Adding support for cpu/memory scaler (#1215)

Improvements

  • ScaledJobs: Introduce new scaling logic with fix orphan pod issue (#1214)
  • enabling authentication for metric api scaler (#1137)
  • Update dependencies
  • Avoid exception when CRD doesn't follow Pod spec shape (#1195)
  • Improved code linting

Breaking Changes

  • Remove Kafka scaler requirement for CA/cert/key (#1288)
  • Kubernetes v1.16+ is required instead of v1.13
  • Use apiextensions.k8s.io/v1 instead of apiextensions.k8s.io/v1beta1

KEDA 2.0.0-rc

02 Oct 09:20
38b3e9b
Compare
Choose a tag to compare
KEDA 2.0.0-rc Pre-release
Pre-release

We're happy to release KEDA 2.0.0 release candidate (RC) which is an incremental release to v2.0.0-beta. 🎉

Our goal is to release KEDA 2.0.0 stable in mid-October.

We'll provide a full changelog later today after everything is released.

What's new?

New

  • Support for Pod Identity for Log Analytics scaler

Improvements

  • Fix for not sending trigger metadata to the External Scaler
  • Fix for up-down scaling behavior configuration is ignored in Kubernetes version >= 18.0
  • Fix for RabbitMQ queue name causing problems in HPA external metric
  • Update version.go properly during make release
  • Upgrade to operator-sdk v1.0.1
  • Improved code linting

Breaking Changes

  • Kubernetes v1.16+ is required instead of v1.13
  • Use apiextensions.k8s.io/v1 instead of apiextensions.k8s.io/v1beta1

Other

None.

KEDA 2.0.0-beta

11 Sep 14:19
717aab8
Compare
Choose a tag to compare
KEDA 2.0.0-beta Pre-release
Pre-release

New

  • KEDA scales any CustomResource that implements Scale subresource (#703)
  • Provide KEDA go-client (#494)
  • Define KEDA readiness and liveness probes (#788)
  • KEDA Support for configurable scaling behavior in HPA v2beta2 (#802)
  • Add External Push scaler (#820 | docs)
  • Add Standard Resource metrics to KEDA (#874)
  • Managed Identity support for Azure Monitor scaler (#936)
  • Add support for multiple triggers on ScaledObject (#476)
  • Add consumer offset reset policy option to Kafka scaler (#925)
  • Add option to restore to original replica count after ScaledObject's deletion (#219)
  • Add Prometheus metrics for KEDA Metrics API Server (#823 | docs)
  • Add support for multiple redis list types in redis list scaler (#1006) | docs)
  • Introduce Azure Log Analytics scaler (#1061) | docs)
  • Add Metrics API Scaler (#1026)

Improvements

  • Move from autoscaling v2beta1 to v2beta2 for HPA (#721)
  • Introduce shortnames for CRDs (#774)
  • Improve kubectl get scaledobject to show related trigger authentication (#777)
  • Improve kubectl get triggerauthentication to show information about configured parameters (#778)
  • Added ScaledObject Status Conditions to display status of scaling (#750)
  • Added optional authentication parameters for the Redis Scaler (#962)
  • Improved GCP PubSub Scaler performance by closing the client correctly (#1087)

Breaking Changes

  • Change apiGroup from keda.k8s.io to keda.sh (#552)
  • Introduce a separate ScaledObject and ScaledJob(#653)
  • Remove New() and Close() from the interface of service ExternalScaler in externalscaler.proto.
  • Removed deprecated brokerList for Kafka scaler (#882)
  • All scalers metadata that is resolved from the scaleTarget environment have suffix FromEnv added. e.g: connection -> connectionFromEnv
  • Kafka: split metadata and config for SASL and TLS (#1074)
  • Service Bus: queueLength is now called messageCount (#1109)
  • Use host instead of apiHost in rabbitmq scaler. Add protocol in trigger spec to specify which protocol should be used (#1115)

Other

  • Update Operator SDK and k8s deps (#1007,#870)
  • Change Metrics Server image name from keda-metrics-adapter to keda-metrics-apiserver (#1105)