微服务之间的Kubernetes通信

时间:2020-02-06 14:49:13

标签: kubernetes kubernetes-helm

我们正在开发基于微服务的应用程序。它们将通过Helm Package Manager部署到kubernetes,并且所有人都存储了自己的存储库和Helm图表。以下是我们的微服务的名称。

我的困惑是,在部署之前,我如何指定后端的pod需要与UI,API和Auth的Pods通信。应用程序可以知道如何与UI / AUTH /其他建立连接,但是什么是最好的管理方法在微服务吊舱之间。

Architecture

  1. 后端
  2. UI
  3. API
  4. 验证

1 个答案:

答案 0 :(得分:1)

在Kubernetes中管理微服务之间的通信的推荐方法是使用Services

基本上,您需要将每个微服务包装到群集IP服务中,然后才能通过使用其唯一的DNS记录/环境变量/使用服务网格框架(例如{{ 3}}

每个微服务您可以拥有一张舵图。该helmchart将包含与该微服务相关的所有内容的yaml文件:部署,配置映射,秘密等等,但也包含该服务的(最好有一个单独的yaml文件)。

通过使用服务,后端服务很容易与其余服务进行通信,因为所有服务的IP地址都将注入到后端容器的环境变量中,如您所见{{3} }

因此,您只需要更新您的后端应用程序即可读取您要连接的微服务的IP(通过env变量),然后就可以连接到它。