サーバー証明書検証なし(ポートレベル)
このメッセージは、デスティネーションルールに`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証明書のファイル名を指定します
- 証明書が不要になるようにトラフィックポリシーを変更します