gpt4 book ai didi

istio - 特使代理中的多个精确匹配

转载 作者:行者123 更新时间:2023-12-04 15:42:06 25 4
gpt4 key购买 nike

我想知道是否有办法在 envoy 中执行多个精确匹配?例如有兴趣根据 header 属性将流量定向到两个不同的集群,

- match:
prefix: "/service/2"
headers:
- name: X-SOME-TAG
exact_match: "SomeString"

这按预期工作,但是否可以在列表中指定一个字符串列表以在 exact_match 中匹配,例如exact_match: ["some_string", another"] ?

我也可以这样写,

- match:
prefix: "/service/2"
headers:
- name: X-SOME-TAG
exact_match: "some_string"
route:
cluster: service1
- match:
prefix: "/service/2"
headers:
- name: X-SOME-TAG
exact_match: "another"
route:
cluster: service1

但不确定这是否是不必要的冗长和正确的方式。

或者我必须使用类似 regex_match 的东西吗?对于这个或模式?

抱歉,我只是无法让它工作,使用前端代理的特使文档中的示例进行测试,因此我想把它放在那里。谢谢!

最佳答案

根据您的问题,我不确定您是要对匹配项进行 AND 运算还是对它们进行 OR 运算。如果您希望两者都必须匹配 (AND),则两个匹配项需要位于相同的 - match: 部分,否则,将它们放在单独的 - match: 部分。您在上面提供的第二个示例相当于 OR,即“如果 X-SOME-TAG == “some_string” OR X-SOME-TAG == “another”,路由到 service1。

关于istio - 特使代理中的多个精确匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57503317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com