Я настраиваю сервисную сетку Istio с двумя сервисами внутри обоих, использующими движок Graphql.Я планирую установить их на двух разных подпутях.Как бы вы настроили перенаправление на VirtualService?
Я уже пытался использовать эту конфигурацию VirtualService
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: hasura-1
spec:
hosts:
- "*"
gateways:
- hasura-gateway
http:
- match:
- uri:
prefix: /hasura1
route:
- destination:
host: hasura-1
port:
number: 80
- match:
- uri:
prefix: /hasura2
route:
- destination:
host: hasura-2
port:
number: 80
, но у меня возникает ошибка 404, когда я пытаюсь получить доступ к этим префиксам.
РЕДАКТИРОВАТЬ: Я обновил мой виртуальный сервис для включения rewrite.uri
.Всякий раз, когда я пытаюсь получить доступ к любому из префиксов, меня перенаправляют на /
, и он выдает ошибку 404. Вот мой обновленный манифест Gateway и VirtualService.
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: hasura-gateway
spec:
selector:
istio: ingressgateway # use istio default controller
servers:
- port:
number: 80
name: http
protocol: HTTP
hosts:
- "*"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: hasura-1
spec:
hosts:
- "*"
gateways:
- hasura-gateway
http:
- match:
- uri:
exact: /hasura1
rewrite:
uri: /
route:
- destination:
host: hasura-1
port:
number: 80
- match:
- uri:
exact: /hasura2
rewrite:
uri: /
route:
- destination:
host: hasura-2
port:
number: 80
---