Hi all, I now find that the Rewrite feature of my Virtual Service is not working very well.
Here is my Virtual Service and DestinationRule yaml file:
apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata: name: leads-http namespace: seldon spec: gateways: - istio-system/seldon-gateway hosts: - '*' http: - match: - uri: prefix: /seldon/seldon/leads/ rewrite: uri: / route: - destination: host: leads-leads port: number: 8000 subset: leads --- apiVersion: networking.istio.io/v1beta1 kind: DestinationRule metadata: name: leads-leads namespace: seldon spec: host: leads-leads subsets: - labels: version: leads name: leads trafficPolicy: connectionPool: http: idleTimeout: 60s
When I send an http request：
curl --location --request POST 'http://localhost/seldon/seldon/leads/v2/models/leads-lgb/versions/v0.1.0/infer'
I find that the istio-proxy service prints 404 not found in the logs:
"POST /seldon/seldon/leads/v2/models/leads-lgb/versions/v0.1.0/infer HTTP/1.1" 404
This is because my service is routed to
leads/v2/models/leads-lgb/versions/v0.1.0/infer. Now it looks like the Virtual Service’s ReWrite is not working.I am not sure what’s happening. Does anyone have any idea? Thanks!