gloo-mesh icon indicating copy to clipboard operation
gloo-mesh copied to clipboard

API v2 - Configure routes based on Metadata.

Open nimrodoron opened this issue 2 years ago • 2 comments

Envoy filter let us define routes based on Metadata. https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/core/v3/base.proto#config-core-v3-metadata https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/route/v3/route_components.proto#config-route-v3-route

We would like to be able to configure route tables based on metadata.

nimrodoron avatar Dec 19 '21 13:12 nimrodoron

Hi @nimrodoron thank you for raising this! Could you give us some concrete scenarios for this? It is my understanding this is possible via Envoy Filter resource in Istio. Not sure if gloo edge currently supports this (my limited search didn't reveal it does.).

linsun avatar Jan 03 '22 16:01 linsun

The interesting scenario is to have an Envoy extension (maybe an External Processing Filter ) that would set some metadata in the request, and then later in the Routing section to make routing decisions based on this metadata.

The same thing can already be accomplished today by adding the routing discriminator as headers on the request, but then these headers are also forwarded to the destination. It would be great to be able to make the routing decision without leaking these additional headers in the actual request.

liorokman avatar Jan 06 '22 15:01 liorokman