проблема маршрутов istio для пути приложения - PullRequest
0 голосов
/ 27 мая 2019

Я использую 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:
        - "*"

...