Я использую istio
последняя версия 1.17
, и у моего приложения мало маршрутов
, например
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name:virtualservice
spec:
hosts:
- "*"
gateways:
- ingressgateway
http:
- match:
- uri:
prefix: "/"
- uri:
exact: "/api/users"
route:
- destination:
host: stb-mvs-us
, теперь при использовании входного шлюза
kubectl get svc -n istio-system -l istio=ingressgateway
Я вижу внешний IP-адрес, и если я использую его как:
http://6026651 -81434690.eu-central-1.elb.fds.com
Я вижу индексную страницу и она работает
, но мое приложение отображает также маршруты, такие как
"/ api / users"
Когда я обращаюсь к нему через браузер, я получаю ошибку 503, в чем может быть причина?
http://6026651 -81434690.eu-central-1.elb.fds.com / api / users
Если я переключаю службу (для тестирования) на использование LoadBalancer, я вижу, что работает маршрут "/ api / users" ... Неправильная ли моя конфигурация virtual service
?
обновите
как предложено. Я изменил его на следующее
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name:virtualservice
spec:
hosts:
- "*"
gateways:
- ingressgateway
http:
- match:
- uri:
exact: "/api/users"
route:
- destination:
host: stb-mvs-us
, и я смог увидеть корень (index.html) и не смог увидеть путь api/users
например http://6026651 -81434690.eu-central-1.elb.fds.com / api/ пользователи
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: http-gateway
spec:
selector:
istio: ingressgateway
servers:
- port:
number: 80
name: http
protocol: HTTP
hosts:
- "*"