如何配置区域感知路由?¶
在源服务(”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 查询 的服务发现进行注册。:ref:` 区域 <envoy_v3_api_msg_config.endpoint.v3.LocalityLbEndpoints>` 信息必须作为响应的一部分能够被获取到。
下面的响应只列出了与区域相关的数据。
locality:
zone: us-east-1d