DNS 名称解析

本文档适用于使用 Envoy 的 Cloud Service Mesh 和旧版负载均衡 API,包括转发规则。

本文档介绍了转发规则的虚拟 IP 地址与转发规则与服务之间的关联方式。本文档还概述了如何规划和配置 DNS,以在 Cloud Service Mesh 服务网格中进行服务到服务通信。

请考虑此示例,其中有三项服务(service-aservice-bservice-c)相互通信。开发者通常在其代码中使用完全限定域名进行服务到服务通信。如果您的域名是 example.com,则这三项服务可以表示为:

  • service-a.example.com
  • service-b.example.com
  • service-c.example.com

配置 Cloud Service Mesh 资源以创建服务网格时,需要为每项服务配置转发规则。转发规则表示目标服务的 IP:Port 对。要使 Envoy 边车代理拦截出站流量,目标 IP 地址必须与转发规则关联的 IP 地址匹配。因此,您需要为每个服务预配 IP 地址。例如:

  • service-a.example.com 的 IP 地址为 10.0.0.100
  • service-b.example.com 的 IP 地址为 10.0.0.101
  • service-c.example.com 的 IP 地址为 10.0.0.102

相应的 Cloud Service Mesh 配置具有三条转发规则(FR1、FR2 和 FR3),每条规则均使用端口 80

  • FR1 与 service-a.example.com 相关联,它的 IP 地址为 10.0.0.100:80
  • FR2 与 service-b.example.com 相关联,它的 IP 地址为 10.0.0.101:80
  • FR3 与 service-c.example.com 相关联,它的 IP 地址为 10.0.0.102:80

service-a 使用完全限定域名 (FQDN) service-b.example.com 调用 service-b 时,会发生以下三种行为:

  1. service-a 首先对 service-b.example.com 执行 DNS 查找以解析 service-b 的 IP 地址。
  2. 域名将解析为 10.0.0.101,以使其与 service-b 的转发规则的已配置 IP 地址匹配。
  3. Envoy 代理现在将能够拦截流量并将其路由到具有 service-b 后端的后端服务,无论这些后端是 NEG 还是 MIG。

您可以配置 Cloud DNS 代管式专用区域来托管您的服务的资源记录。