Невозможно получить доступ к сервису через виртуальный сервис в Istio

Я новичок в istio и у меня есть весь мой код в http://github.com/VenkateshSrini/IstioTest. Я создал сервис, необходимый для хостинга сервиса Kubernetes (istio-test-deployment.yaml в репо). Я проверил его на рабочем столе докера для Windows (Kubernetes включен), и я получил то же самое, работая правильно. Я выставил свой сервис через порт 5000, В Docker для Windows внешний Ip всегда localhost.

Теперь, используя istoctl, я создал развернутую машину. Это видно из istio-test-dep-injected.yaml, Я выполнил это, и сервис был создан с Sidecar. Теперь тот же сервис не доступен через http://localHost:5000что я считаю правильным

Тогда я пошел дальше и создал виртуальный шлюз. Определение того же самого можно увидеть в virtual-gateway.yaml. Затем я создал виртуальный сервис в соответствии с virtualservice.yaml. В этом я предоставил имя хоста и имя службы Kubernetes и порт как 5000.

Даже после всего этого я не могу получить доступ к Сервису по URL http://localHost/api/version

Может ли кто-нибудь мне помочь, потому что я не нахожу особой помощи в работе с Istio с Docker для Windows

1 ответ

Кажется, вы забыли добавить правило совпадения. Попробуйте добавить следующее match поле

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: istio-test-virtualservice
spec:
  gateways:
  - istio-test-gateway
  hosts:
  - '*'
  http:
  - match:
    - uri:
        prefix: /
    route:
    - destination:
        host: istio-test
        port:
          number: 5000
Другие вопросы по тегам