如何配置区域感知路由?
在源服务(“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 统计信息监控跨区域流量。