KEDA 2.0.0
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 implementsScale
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
tov2beta2
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
fromkeda.k8s.io
tokeda.sh
(#552) - Use
apiextensions.k8s.io/v1
instead ofapiextensions.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()
andClose()
from the interface ofservice ExternalScaler
inexternalscaler.proto
.
Changes in our scalers:
- Kafka:
- Service Bus:
queueLength
is now calledmessageCount
(#1109)
- RabbitMQ:
- Use
host
instead ofapiHost
inrabbitmq
scaler. Addprotocol
in trigger spec to specify which protocol should be used (#1115)
- Use