News KrakenD CE v2.11 released with improved AMQP, JWT, caching and more

Product UpdatesSecurity

2 min read

KrakenD CE v2.11 released with improved AMQP, JWT, caching and more

by Albert Lombarte

This release of KrakenD Community Edition v2.11 brings a substantial upgrade to message queue integration, improved JWT handling, enhanced HTTP client capabilities, telemetry configuration flexibility, and important bug fixes that improve stability and performance.

AMQP Driver Overhaul

We’ve replaced the previous AMQP driver with the official RabbitMQ client maintained by the RabbitMQ Core Team. This change means better ongoing support, quicker bug fixes, and enhanced capabilities. Importantly, no action is required from you to adapt existing configurations.

Additionally, we introduced a new nack_discard flag for AMQP components. When set, this option discards messages that cannot be processed successfully, preventing them from being re-queued indefinitely and potentially blocking your pipeline.

JWT Validation Enhancements

To improve integration scenarios where JWT claims arrays need to be preserved, the new propagate_claims_preserve_array flag allows arrays within JWT claims to be forwarded to backend services without flattening or restructuring.

HTTP Client Improvements

Handling of HTTP 307 and 308 redirects for POST requests is now configurable via the enable_redirect_post flag. Enable it to allow POST requests to follow such redirects automatically, improving compliance with various backend behaviors.

Telemetry Configuration via Environment Variables

You can now configure OpenTelemetry propagators using the OTEL_PROPAGATORS environment variable. This feature makes it easier to customize distributed tracing propagation formats without modifying configuration files, e.g., OTEL_PROPAGATORS="b3,baggage".

🚀 Summary of changes for CEv2.11

Upgraded the AMQP driver and JWT validation functionality

  • The previous AMQP driver has been replaced by the official RabbitMQ client maintained by the Rabbit Core Team, for better bug fixing and improvements. No changes needed.
  • In addition, the new nack_discard flag in AMQP components allows you to discard messages that cannot be processed instead of sending them back to the queue.
  • The new propagate_claims_preserve_array flag in the JWT validation component allows you to preserve the array structure of claims when propagating them to the backend.
  • Added a new property enable_redirect_post under http client options to allow POST redirects on 307 and 308 status codes.
  • Allow configuring OpenTelemetry propagators through environment variable, e.g., OTEL_PROPAGATORS="b3,baggage" (thanks to @cooperbenson-qz).
  • Fixed HTTP Cache where big chunked / streaming payloads could get stuck
  • Remove remaining deprecated config value usage in mTLS tls.public_keys (were deprecated already on 2.9)
  • Fixed a bug on the second input_query_strings filtering at the backend level.
  • Upgraded Go to 1.25.
  • End of support for Debian 11 and older versions (or Ubuntu 21.10 and older) for its Glibc incompatibility with secure Go versions.

Upgrading to the latest version is always advised.

Happy building! 🐙

Stay up to date with KrakenD releases and important updates