Невозможно подключиться к внешнему серверу mongo db из istio - PullRequest
0 голосов
/ 17 октября 2018

Я пытаюсь реализовать сервисную сетку с помощью istio и envoy для сервиса, который требует подключения к внешнему серверу mongodB, но по некоторым причинам мой сервис не может подключиться к внешнему серверу mongodB с прокси istio

Нижеконфигурация шлюза и виртуальной службы для моей службы

    apiVersion: networking.istio.io/v1alpha3
    kind: Gateway
    metadata:
      name: gtreviews
    spec:
      selector:
        istio: ingressgateway
      servers:
      - port:
          number: 7890
          name: http
          protocol: GRPC
        hosts:
        - "*"
---
    apiVersion: networking.istio.io/v1alpha3
    kind: VirtualService
    metadata:
      name: reviews
    spec:
      hosts:
      - "*"
      gateways:
      - gtreviews
      http:
      - match:
        - uri:
            prefix: "/reviews"
        route:
        - destination:
            port:
              number: 8080
            host: reviews.istio-system.svc.cluster.local

Я добавил запись службы выхода, но все еще не работает

apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
  name: external-svc-mongocluster
spec:
  hosts:
  - xxx.xx.com
  ports:
  - name: mongo
    number: 27017
    protocol: tcp
  location: MESH_EXTERNAL  

---

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: external-svc-mongocluster
spec:
  hosts:
  - xxx.xx.com
  tcp:
  - match:    
    route:
    - destination:
        host: xxx.xx.com
        port:
          number: 27017
      weight: 100

1 Ответ

0 голосов
/ 17 октября 2018

Попробуйте указать порт в ServiceEntry как TLS (имя и протокол).

Я сейчас работаю над задачей, касающейся MongoDB, проверьте раздел «Контроль выхода для TLS» в этом PR https://github.com/istio/istio.io/pull/2347/, пока он немного сырой.

...