安装Istio后,应用程序无法与侦听同一容器的端口进行通信

时间:2019-02-23 08:31:04

标签: istio

我有一个在容器中运行的容器,该容器在不同的端口上运行多个jar。具体来说,它正在运行Java应用程序和Artemis服务器。

应用程序通过rpc与Artemis服务器对话。

在安装Istio并注入Sidecar之前,一切正常。只是想知道是否有人对Istio会如何影响容器/吊舱内的通信有任何想法。

1 个答案:

答案 0 :(得分:0)

如果您已经将sidecar注入到Pod或特定的命名空间中,则意味着到目前为止Istio Envoy proxy将负责流量管理操作,例如拦截嵌套Kubernetes服务的传入和传出呼叫。因此,根据Istio Architecture方面,微服务之间的通信将由Istio控制平面负责。

通常,Istio代表自己的资源来进行流量管理。必须使用这些来建立与目标微服务的安全连接:

  

Istio中有四个流量管理配置资源:   VirtualService,DestinationRule,ServiceEntry和网关:

     
      
  • VirtualService定义了控制如何在Istio服务网格内路由对服务请求的规则。
  •   
  • DestinationRule配置在发生VirtualService路由后要应用于请求的策略集。
  •   
  • ServiceEntry通常用于启用对Istio服务网格外部服务的请求。
  •   
  • Gateway为HTTP / TCP流量配置负载均衡器,通常在网格边缘运行以启用   应用程序的入口流量。
  •   

我建议您也通过一些不错的Examples了解有关Istio网格特征的更多信息。