envoyproxy/envoy

supporting partial wildcards on server names for filter chain matches

Open

#11 906 ouverte le 6 juil. 2020

Voir sur GitHub
 (11 commentaires) (3 réactions) (0 assignés)C++ (5 373 forks)batch import
area/tlshelp wanted

Métriques du dépôt

Stars
 (27 997 stars)
Métriques de merge PR
 (Merge moyen 8j) (378 PRs mergées en 30 j)

Description

Currently, when doing a filter chain match on server names you cannot use a partial wildcard:

https://github.com/envoyproxy/envoy/blob/master/api/envoy/api/v2/listener/listener_components.proto#L126

From a very quick look at how the server names are looked up:

https://github.com/envoyproxy/envoy/blob/master/source/server/filter_chain_manager_impl.cc#L418

it seems like supporting this could be done without a huge perf impact.

We have a use case for this, which would allow us to split a bunch of vhost/route configs into their own chains. This would save us from having to support per route overrides for the filters that need to be globally disabled and only enabled for some vhosts/routes.

Any reasons not to support this? Thoughts?

cc: @htuch @lambdai @lizan @fishcakez

Guide contributeur