从网格外部的服务访问启用Istio的K8S pod

时间:2017-09-21 16:30:08

标签: kubernetes prometheus istio prometheus-operator

假设启用了Istio的服务A公开名为8080的端口http,因此当从网格内部访问时,Istio执行L7负载平衡。

我想知道是否有办法从没有Istio边车的pod / service 8080访问此B端口。在这种情况下,流量将是: B -> A Envoy -> A 要么 B -> A 这样,我就可以访问一个名为A的{​​{1}}端口(即只有L4负载均衡)

我的特殊用例是我有Prometheus(不在网格中运行),Prometheus Operator直接在网格中搜索服务(不涉及Istio Mixer;服务公开他们自己的业务逻辑指标)。它仅适用于我,并且仅在给定服务未命名其端口http时才会起作用。

1 个答案:

答案 0 :(得分:1)

如果您启用了身份验证(mTLS),则它在设计上不起作用,因为Istio会尝试保护所有服务与服务通信。

您可以关闭身份验证,如果这没有帮助,也可以尝试使用Istio 0.2.4候选版本(或者您在阅读本文时的最新版本,请参阅https://github.com/istio/istio/releases)并查看是否问题仍然存在,如果确实如此,请在https://github.com/istio/issues/issues/new

提交问题

在0.3(可能更早)中,我们会让你对mTLS进行细粒度控制。