0

我正在使用 Istio 指南中的 Bookinfo 示例。部署成功。我可以看到产品页面。

当我查看 'productpage' pod 的详细 Envoy 设置时,我感到很困惑。LDS 的 istio-pilot 的返回显示它有两个监听器(以及其他),一个正在观看0.0.0.0:9080,另一个正在观看172.17.0.9:9080(这是 productpage pod 的 clusterIP)。

  • 监听172.17.0.9器处理入口流量并将所有内容路由到本地主机,这是有道理的。
  • 监听0.0.0.0:9080器似乎处理了对应用程序其他服务的所有出口请求,例如详细信息、评论。但如果其域是“productpage.default.svc.cluster.local”,它也会处理请求,并将其路由到 pod 本身。那么当请求发送到 productpage svc 时,这会创建一个循环吗?

我确信循环没有发生。但只是想知道是什么阻止了它?或者我阅读 Envoy 配置的方式是错误的。

另外,我认为一旦在同一个端口上创建了监听器,就不允许监听特定的接口0.0.0.0

4

1 回答 1

0

只有一个侦听器实际上会绑定到 OS 套接字。另一个将bind_to_port设置为 false https://www.envoyproxy.io/envoy/configuration/listeners/listeners

Envoy 可以在内部重定向到此类未绑定的侦听器。

于 2017-11-09T22:26:46.597 回答