簡體   English   中英

如何在 Istio 中的一個服務邊車與 NATS 集群之間連接

[英]How to connect between one service sidecar in Istio with NATS cluster

我創建了一個沒有注入 Istio 的 NATS 集群。

apiVersion: nats.io/v1alpha2
kind: NatsCluster
metadata:
  name: nats
spec:
  size: 2
pod:
  annotations:
    sidecar.istio.io/inject: "false"
version: "2.0.0"

現在我有一個 sidecar istio,連接到上面的 Nats 集群,但似乎 istio 斷開了連接。 我的應用程序上的 nats 客戶端關閉,並且 Nats 服務器通知:“客戶端解析器錯誤,狀態 = 0...” 原因是 nats 集群和 sidecar 之間沒有 mtls? 我該如何解決這個問題?

對於 istio 1.8

nats 和 nats 流媒體 ymal 可以在

https://github.com/nats-io/nats-operator

https://github.com/nats-io/nats-streaming-operator

如果您不通過 kubernetes 集群外部的節點端口進行連接。 您只需使用默認的 istio 設置並為 nats pod 注入 sidecar。 有用。 但是如果你想從外部通過節點端口連接 nats。 您需要禁用 mtls。 我的設置是默認的 mtls,nats 和 nats 流注入邊車的 pod。 並且 nats 只接受純文本的流量,而 nats 只發送純文本的流量。

添加以下對等身份驗證:

    apiVersion: "security.istio.io/v1beta1"
    kind: "PeerAuthentication"
    metadata:
      name: "nats"
    spec:
      selector:
        matchLabels:
          app: nats
      mtls:
        mode: DISABLE
    ---
    apiVersion: "security.istio.io/v1beta1"
    kind: "PeerAuthentication"
    metadata:
      name: "nats-streaming"
    spec:
      selector:
        matchLabels:
          app: nats-streaming
      mtls:
        mode: DISABLE

添加以下目標規則:

    apiVersion: networking.istio.io/v1alpha3
    kind: DestinationRule
    metadata:
      name: nats
    spec:
      host: "nats-server.acm.svc.cluster.local"
      trafficPolicy:
        tls:
          mode: DISABLE
    ---
    apiVersion: networking.istio.io/v1alpha3
    kind: DestinationRule
    metadata:
      name: nats-server-nodeport
    spec:
      host: "nats-server-nodeport.acm.svc.cluster.local"
      trafficPolicy:
        tls:
          mode: DISABLE
    ---
    apiVersion: networking.istio.io/v1alpha3
    kind: DestinationRule
    metadata:
      name: nats-server-mgmt
    spec:
      host: "nats-server-mgmt.acm.svc.cluster.local"
      trafficPolicy:
        tls:
          mode: DISABLE

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM