这是我要实现的目标: 根据URI前缀将流量路由到服务
我面临的问题: 无法将前缀与上下文路径分开
说明:
我想根据前缀将流量路由到服务。 说 / dev / service / context / path / 和 / test / service / context / path / 。 但是,如果不更改应用程序本身的上下文路径,我将无法做到这一点。
有没有办法将URI的前缀部分与应用程序的上下文路径分开?
这是我的VS的样子:
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: servicea
namespace: dev
spec:
hosts:
- "*"
gateways:
- dev-gateway
http:
- match:
- uri:
prefix: /dev
route:
- destination:
port:
number: 8080
host: servicea
谢谢
答案 0 :(得分:1)
不确定我是否正确理解了您的问题。我想您可以像这样添加重写规则:
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: servicea
namespace: dev
spec:
hosts:
- "*"
gateways:
- dev-gateway
http:
- match:
- uri:
prefix: /dev
rewrite:
uri: /
route:
- destination:
port:
number: 8080
host: servicea
这样,您/dev/service/context/path/
的流量就变成了/service/context/path/
。