如何設定區域感知路由?
啟用來源服務(“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 統計資訊來監控跨區域流量。