envoyproxy/envoy

supporting partial wildcards on server names for filter chain matches

Open

#11.906 geöffnet am 6. Juli 2020

Auf GitHub ansehen
 (11 Kommentare) (3 Reaktionen) (0 zugewiesene Personen)C++ (5.373 Forks)batch import
area/tlshelp wanted

Repository-Metriken

Stars
 (27.997 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 8T) (378 gemergte PRs in 30 T)

Beschreibung

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

Contributor Guide