Add-on for KEDA to scale HTTP workloads
We are happy to release KEDA HTTP Add-on v0.8.0 🎉
You can find all deprecations in this overview and join the discussion here.
targetPendingRequests
in favor of spec.scalingMetric.*.targetValue
(#959)Full Changelog: https://github.com/kedacore/http-add-on/compare/v0.7.0...v0.8.0
/scale
subresource (#438)You can find all deprecations in this overview and join the discussion here.
New deprecation(s):
KEDA_HTTP_DEPLOYMENT_CACHE_POLLING_INTERVAL_MS
in favor of KEDA_HTTP_ENDPOINTS_CACHE_POLLING_INTERVAL_MS
(#438)Full Changelog: https://github.com/kedacore/http-add-on/compare/v0.6.0...v0.7.0
name
& app
custom labels (#717)You can find all deprecations in this overview and join the discussion here.
New deprecation(s):
host
field deprecated in favor of hosts
in HTTPScaledObject
(#552)Full Changelog: https://github.com/kedacore/http-add-on/compare/v0.5.0...v0.6.0
This is the fifth beta release of the KEDA HTTP Addon. Please see the install documentation to get started.
HTTPScaledObject
(#552)You can find all deprecations in this overview and join the discussion here.
New deprecation(s):
host
field deprecated in favor of hosts
in HTTPScaledObject
(#552)Previously announced deprecation(s):
registry.k8s.io/e2e-test-images/agnhost
instead of arschles/xkcd
by @JorTurFer in https://github.com/kedacore/http-add-on/pull/693
Full Changelog: https://github.com/kedacore/http-add-on/compare/v0.4.0...v0.5.0
This is the fourth beta release of the KEDA HTTP Addon. Please see the install documentation to get started.
The largest change in this release is the ARM64 support. This means that an HTTP Addon installation (e.g. scaler, interceptor, and operator) can be used in ARM64 nodes. There are also other changes related with bugfixes and quality improvements.
Full Changelog: https://github.com/kedacore/http-add-on/compare/v0.3.0...v0.4.0
This is the third beta release of the KEDA HTTP Addon. Please see the install documentation to get started.
The largest change in this release is that operators now have the option of running a single cluster-global installation. This means that an HTTP Addon installation (e.g. scaler, interceptor, and operator) can now be scoped either to one namespace, or the entire cluster. The latter case is called a cluster-global install. If you do want to run a cluster-global HTTP Addon, you must:
There are no backward-incompatible changes to HTTPScaledObject
s. However, there is a breaking change to the internal URL routing table. To overcome this, please delete your HTTP Addon installation (using helm delete
if you're using the Helm chart) and re-install it at the 0.3.0
version.
While the cluster-global feature is the biggest in this release, we have made several internal improvements such as:
Deployment
to its original replica count after deleting the associated HTTPScaledObject
in #339 (thanks to @tpiperatgod)Full Changelog: https://github.com/kedacore/http-add-on/compare/v0.2.0...v0.3.0
This is the second beta release of the KEDA HTTP Addon. Please see the install documentation to get started.
The largest change in this release is that the interceptor and scaler components are now multi-tenant, which means:
HTTPScaledObject
s in that namespaceDeployment
of interceptors that are scaled by KEDA itself. The HTTP Addon external scaler tells KEDA how to scale the fleet.Note: there is work pending in https://github.com/kedacore/http-add-on/issues/240 to extend this multi-tenancy to out of the namespace scope and into the cluster-global scope
This is a beta release, we invite you to try it out and file issues if you find any bugs or have an idea for a feature you would like to see.
HTTPScaledObject
sWith this release, interceptors and scalers can scale and serve 1 or more backing applications rather than just one, as was possible in v0.1.0
and before.
To route incoming HTTP requests properly, the interceptors need to be able to map any arbitrary request to a backing application or reject the request if there is no application installed to handle it. You must provide this information in every HTTPScaledObject
that you submit.
There is a new spec.host
field that you are required to include. This field informs interceptors that all requests for the host you provide should be forwarded to the application you specify in the scaleTargetRef
.
targetPendingRequests
There is a second new field called spec.targetPendingRequests
. It is optional and unrelated to the above routing functionality.
Please see the v0.2.0 HTTPScaledObject
reference documentation for more details on this field.
HTTPScaledObject
, the operator may not update the corresponding ScaledObject
(https://github.com/kedacore/http-add-on/issues/323). To work around this, please delete and re-create the HTTPScaledObject
with the updated fields. This will be fixed in a patch release (e.g. v0.2.1
)Full Changelog: https://github.com/kedacore/http-add-on/compare/v0.1.0...v0.2.0
This is the first beta version of the KEDA HTTP Add-on! It's been a while since our last release, which was 0.0.1. Since then, we've made big improvements to nearly every area of this project.
If you'd like to get started right away, please see the walkthrough documentation for this release.
Otherwise, below is a list of some of the most significant changes in this release.
HTTPScaledObject
changesNote: there is a breaking change to the
HTTPScaledObject
spec
field in this release. Please see the last bullet point of this section for more details
HTTPScaledObject
s is now automatically populated (by the operator) with more details on the progress of your deployment (#47)Deployment
or Service
resources. You have full control over creating, updating or removing your application components, and the HTTP Add-on won't touch them anymore (#78)
HTTPScaledObject
spec
fields will not work with this release
scratch
base image (#41), reducing the overall attack surface area of running HTTP Add-on podsMakefile
has been removed in favor of magefiles in #89
kedacore
-wide code of conduct (#178)This project is young at the moment, and we have a wonderful and growing community. Special thanks to @ajanth97 and @khaosdoctor for their contributions.
We have a lot of features pending in this project, and we welcome new contributors to help build them. We also have documentation to write, issues to fix, and plenty of other things to do to otherwise push the KEDA HTTP Add-on project forward.
If you're interested in contributing in any way, we are willing to help you get started. Please send a direct message to arschles
in the Kubernetes slack group indicating your interest.
Alpha 1 is the first official release of the KEDA HTTP Add On, and is intended as a preview for developers. With this release, we're inviting community members to try out the technology, report bugs, and generally give us feedback.
This is alpha quality software and we can't make any guarantees on its stability right now. Please do not run this code for production use cases, in a production Kubernetes cluster, or in any other production settings.
Images for this release can be found at the following locations under the v0.0.1
tag:
ghcr.io/kedacore/http-add-on-operator
ghcr.io/kedacore/http-add-on-scaler
ghcr.io/kedacore/http-add-on-interceptor
This project began as a prototype built on top of KEDA, hosted outside of the kedacore
GitHub organization, and has transformed as an official addition to KEDA, hosted at github.com/kedacore/http-add-on. During that transformation, we believe that we've designed a high quality, cloud-native architecture with the help of several contributors across the community, and have begun implementing it.
We encourage you to try the software out in your own non-production Kubernetes clusters and tell us what you think and/or contribute back.
There are several notable contributors for this release. These people had a role in taking this project from a tiny prototype to this point: