【发布时间】:2021-05-05 01:21:46
【问题描述】:
我们在 Azure AKS 中部署的 istio 中的 15001 端口遇到问题。
目前我们已经在 AKS 中部署了 Istio,并尝试以集群模式连接到 Azure 缓存 redis 实例。我们的 Azure redis 实例有两个以上启用 SSL 的分片,其中一个主节点分配在端口 15001 上。我们能够通过端口 6380、15000、15002、15003、15004 和 15005 端口从 AKS pod 连接到 Azure redis .但是,当我们尝试连接到超过 15001 时,我们会看到一些问题。当我们尝试从命名空间通过 15001 端口连接到 redis 时,没有来自同一个 aks 集群的 istio sidecar 注入,连接工作正常。
以下是我们 AKS 集群中部署的 rediscli pod 的日志。
成功案例:
redis-cli -h our-redis-host.redis.cache.windows.net -p 6380 -a our-account-key --cacert "BaltimoreCyberTrustRoot.pem" --tls ping
输出:
警告:在命令行界面上使用带有“-a”或“-u”选项的密码可能不安全。 乒乓
我们能够通过所有端口 - 6380、15000、15002、15003、15004 和 15005 连接到 redis。但是,当我们尝试使用 15001 连接时。我们遇到了以下错误
失败案例:
redis-cli -h our-redis-host.redis.cache.windows.net -p 15001 -a our-account-key --cacert "BaltimoreCyberTrustRoot.pem" --tls ping
输出:
警告:在命令行界面上使用带有“-a”或“-u”选项的密码可能不安全。 无法在 our-redis-host.redis.cache.windows.net 连接到 Redis :15001: SSL_connect failed: Success
从 15001 端口尝试时,我在 istio-proxy 日志中看不到任何条目。但是,当尝试其他端口时,我们可以在日志中看到如下条目
[2021-05-05T00:59:18.677Z] "- - -" 0 - - - "-" 600 3982 10 - "-" "-" "-" "-" "172.XX.XX.XX:6380" PassthroughCluster 172.XX.XX.XX:45478 172.22.XX.XX:6380 172.XX.XX.XX:45476 - -
这是因为 15001 端口阻止出站请求或操纵 15001 端口请求的证书。如果是,是否有任何配置将proxy_port更新为15001以外的其他端口?
注意:发布在 istio forum 上。在此处发布以扩大覆盖范围。
Istio 版本:
> istioctl version
client version: 1.8.2
control plane version: 1.8.3
data plane version: 1.8.3
【问题讨论】:
标签: azure redis istio azure-aks