Istio - 向 route/destination 添加前缀的方法?
Istio - way to add prefix to route/destination?
目前部署了 Istio 来处理我的应用程序的入口。 运行 遇到一个问题,其中一个应用程序需要通过某个 URL 访问,例如“http://gateway/webapp1”,我需要它在内部路由到:
服务器名称 1:8080/some/odd/name/path
我目前的匹配语句是:
- match:
- uri:
prefix: /webapp1
route:
- destination:
host: server-name1
port:
number: 8080
我无法弄清楚如何扩展目标路由以告诉它到达服务器名称 1:8080 之外的另一个端点。有没有一种简单的方法可以为基础route/destination添加前缀?谢谢。
您可以在进一步发送流量之前对虚拟服务使用 HTTP 重写
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: ratings-route
spec:
hosts:
- ratings.prod.svc.cluster.local
http:
- match:
- uri:
prefix: /webapp1
rewrite:
uri: /gateway/webapp1
route:
- destination:
host: server-name1
port:
number: 8080
阅读官方文档:https://istio.io/latest/docs/reference/config/networking/virtual-service/#HTTPRewrite
目前部署了 Istio 来处理我的应用程序的入口。 运行 遇到一个问题,其中一个应用程序需要通过某个 URL 访问,例如“http://gateway/webapp1”,我需要它在内部路由到: 服务器名称 1:8080/some/odd/name/path
我目前的匹配语句是:
- match:
- uri:
prefix: /webapp1
route:
- destination:
host: server-name1
port:
number: 8080
我无法弄清楚如何扩展目标路由以告诉它到达服务器名称 1:8080 之外的另一个端点。有没有一种简单的方法可以为基础route/destination添加前缀?谢谢。
您可以在进一步发送流量之前对虚拟服务使用 HTTP 重写
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: ratings-route
spec:
hosts:
- ratings.prod.svc.cluster.local
http:
- match:
- uri:
prefix: /webapp1
rewrite:
uri: /gateway/webapp1
route:
- destination:
host: server-name1
port:
number: 8080
阅读官方文档:https://istio.io/latest/docs/reference/config/networking/virtual-service/#HTTPRewrite