NoServerCertificateVerificationPortLevel

當在目的地規則中未設定 caCertificates,但流量政策需要時,就會發生此訊息。

範例

您將收到此訊息

Error [IST0129] (DestinationRule db-tls.default) DestinationRule default/db-tls in namespace default has TLS mode set to SIMPLE but no caCertificates are set to validate server identity for host: mydbserver.prod.svc.cluster.local at port number:443

當您的叢集具有以下目的地規則時

apiVersion: networking.istio.io/v1
kind: DestinationRule
metadata:
  name: db-tls
spec:
  host: mydbserver.prod.svc.cluster.local
  trafficPolicy:
    portLevelSettings:
      - port:
          number: 443
        tls:
          mode: SIMPLE
          clientCertificate: /etc/certs/myclientcert.pem
          privateKey: /etc/certs/client_private_key.pem
          sni: my-nginx.mesh-external.svc.cluster.local
          # caCertificates not set

在此範例中,目的地規則 db-tls 指定 TLS,但未設定 CA 憑證檔案。

如何解決

  • 提供 CA 憑證的檔案名稱
  • 變更流量政策,使其不需要憑證