Skip to content

Version 0.2.0

Compare
Choose a tag to compare
@arschles arschles released this 16 Nov 19:54
· 267 commits to main since this release
b7fc02b

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:

  • One scaler runs per namespace, and handles all HTTPScaledObjects in that namespace
  • One fleet of interceptors runs per namespace and handles all of the applications in that namespace. A fleet is defined as a Deployment 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 #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.

Changes to HTTPScaledObjects

With 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.

Other Significant Changes

  • Comprehensive debugging endpoints on all three components. See developer.md for more details
  • More comprehensive unit and integration tests
  • Automatically scaling the interceptor fleet
  • Adding the ability to specify the target metric for any application, and for the interceptor fleet

Known Issues

  • When you change certain fields on an already existing HTTPScaledObject, the operator may not update the corresponding ScaledObject (#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

New Contributors

Full Changelog: v0.1.0...v0.2.0