对于特使路由,我有多个前缀匹配用于路由到不同的集群。为了路由到同一集群,我必须重复匹配部分。例如,这是 enovy-config.yaml 中的一段路由
- match:
prefix: "/api/v1/config/"
route:
cluster: cluster2
- match:
prefix: "/api/service/risk/"
route:
cluster: cluster2
我无法在 /api
上进行匹配,因为我的大多数服务都是以此开头的,并且我最终会编写多个匹配/前缀来路由到同一集群。有没有办法对进入同一集群的前缀进行分组,而不必重复 match
部分?这可能吗?
最佳答案
基本上,没有。如果您想进行显式前缀匹配,那么您需要为每个前缀使用这些重复结构。
但是,如果您可以基于正则表达式模式进行匹配,那么您可以使用 safe_regex
匹配将一堆路径路由到给定集群。 api docs here
关于envoyproxy - 用于路由到 envoy 中同一集群的多个前缀匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63990841/