如何配置区域感知路由?

在源服务(“cluster_a”)和目标服务(“cluster_b”)之间启用区域感知路由需要几个步骤。

源服务上的 Envoy 配置

本节介绍与源服务并排运行的 Envoy 的特定配置。这些是要求

  • Envoy 必须使用--service-zone选项启动,该选项定义当前主机的区域。

  • 源集群和目标集群的定义都必须具有EDS类型。

  • local_cluster_name必须设置为源集群。

    下面仅列出了集群管理器配置中的必要部分。

cluster_manager:
  local_cluster_name: cluster_a
static_resources:
  clusters:
  - name: cluster_a
    type: EDS
    eds_cluster_config: ...
  - name: cluster_b
    type: EDS
    eds_cluster_config: ...

目标服务上的 Envoy 配置

无需与目标服务并排运行 Envoy,但重要的是目标集群中的每个主机都向发现服务由源服务 Envoy 查询注册。区域信息必须作为该响应的一部分提供。

下面仅列出了与区域相关的数据。

locality:
  zone: us-east-1d

基础设施设置

上述配置对于区域感知路由是必要的,但在某些情况下,区域感知路由不会执行

验证步骤

  • 使用按区域 Envoy 统计信息监控跨区域流量。