Cloud Service Mesh 的轉送規則
本文件僅適用於搭配負載平衡 API 使用的 Cloud Service Mesh。我們強烈建議您使用服務路由 API 部署 Cloud Service Mesh。
Cloud Service Mesh 會使用轉送規則,判斷要將網格中的流量轉送至哪個目標 Proxy。
每個轉送規則都會為服務提供單一全域 IPv4 位址。您可以使用該位址為服務建立內部 DNS 記錄 (例如,使用 Cloud DNS 代管的私人區域)。轉送規則中的中繼資料篩選器會指定符合 xDS 標準的補充 Proxy 接收設定的條件。
針對 Cloud Service Mesh 控制層,內部、自行管理和全域轉送規則會依據 IP 位址、通訊埠和通訊協定,將流量轉送至目標 Proxy。目標 Proxy 會指向網址對應,其中包含用於決定流量目的地的規則。網址對應也會指定預設後端服務。這個後端服務會指定健康狀態檢查,並判斷適當的後端,例如包含虛擬機器 (VM) 執行個體的代管執行個體群組 (MIG),或是包含 Google Kubernetes Engine (GKE) 後端 Pod 的網路端點群組 (NEG)。
下圖顯示轉送規則在 Cloud Service Mesh 架構中的位置。
轉送規則屬性
轉送規則資源包含下列適用於 Cloud Service Mesh 的屬性。轉送規則會處理與目的地 IP 位址、通訊協定和埠號相符的流量。
使用 Cloud Service Mesh 時,轉送規則中的 0.0.0.0
IP 位址是其中一個選項。0.0.0.0
IP 位址代表任何 IP 位址。
在 Proxy 部署中,如果找不到其他特定比對項目,
0.0.0.0
IP 位址可讓 Proxy 比對任何傳入的流量。在無 Proxy 部署作業中,
0.0.0.0
IP 位址可用於指定不需要 IP 位址。以下將進一步說明如何使用0.0.0.0
IP 位址搭配目標 gRPC Proxy。
下表詳細說明轉送規則的屬性。
屬性 | 必填 | 說明 |
---|---|---|
name |
✔ | 轉送規則的名稱。 名稱必須在這個專案中不重複,長度介於 1 至 63 個字元,且符合規則運算式: 也就是說,第一個字元必須是小寫字母,後續的所有字元則須由連字號、小寫英文字母或數字組成,但最後一個字元不得為連字號。 |
IPAddress |
✔ | 下列任一項: Cloud Service Mesh 轉送規則的 IP 位址不需要與虛擬私有雲 (VPC) 網路中子網路的 IP 位址範圍相符。對於指定的 VPC 網路、IP 位址和連接埠,您只能擁有一個內部、自行管理的轉送規則。 舉例來說,在同一個 VPC 網路中,您無法建立兩個使用 |
IPAddress 與目標 gRPC Proxy |
轉送規則會參照目標 gRPC Proxy,其中 使用 因此,Cloud Service Mesh 會使用 URI 中指定的 |
|
target |
✔ |
這項轉送規則將流量導向的目標 Proxy。Cloud Service Mesh 支援 使用 Google Cloud 控制台設定轉送規則時,系統會自動設定目標 Proxy。使用 Google Cloud CLI 或 API 時,必須先建立目標 Proxy,才能建立轉送規則。您可以為特定 Proxy 使用多個轉送規則。 |
IPProtocol |
✔ | 這個轉送規則相符的通訊協定類型。唯一支援的值為 TCP 。 |
loadBalancingScheme |
✔ | 指定轉送規則的使用方式。Cloud Service Mesh 的有效值為 INTERNAL_SELF_MANAGED 。 |
portRange |
✔ |
以連字號分隔的通訊埠或通訊埠範圍。 傳送至這些通訊埠的指定通訊協定封包會轉送至適當的後端。您可以指定範圍的單一數字,例如 對於指定的 VPC 網路、IP 位址和連接埠,您只能擁有一個內部、自行管理的轉送規則。舉例來說,在同一個 VPC 網路中,您無法建立兩個使用 在無 Proxy gRPC 服務的情況下,轉送規則中的通訊埠會與 gRPC 應用程式用於連線至服務的 URI 中指定的通訊埠相符。如果 URI 中未指定通訊埠,則預設通訊埠為 |
network |
✔ |
指定執行 Envoy 代理程式的 Google CloudVM 所在的 VPC 網路。 Envoy Proxy 會讀取您為 Proxy 部署所在網路定義的 Cloud Service Mesh 設定。您可以使用名為 Cloud Service Mesh 僅限於在 Google Cloud 網路中支援用戶端的負載平衡。您可以在轉送規則中指定網路名稱。不支援 VPC 網路對等互連。 |
新增通用轉送規則
如要瞭解如何在整體 Cloud Service Mesh 設定中,使用負載平衡 API 設定轉送規則,請參閱以下內容:
- 使用自動 Envoy 部署來設定 Compute Engine VM 的 Cloud Service Mesh
- 使用手動 Envoy 部署來設定 Compute Engine VM 的 Cloud Service Mesh
- 為 GKE Pod 設定 Cloud Service Mesh,並自動插入 Envoy
- 透過手動 Envoy 注入,為 GKE Pod 設定 Cloud Service Mesh
- 為 Compute Engine VM 和無 Proxy gRPC 服務設定 Cloud Service Mesh
- 為 GKE Pod 和無 Proxy gRPC 服務設定 Cloud Service Mesh
後續步驟
- 如要使用中繼資料篩選器控制哪些附加到轉送規則的設定會傳送至附屬代理伺服器,請參閱「根據
MetadataFilter
比對設定篩選器」。 - 如要轉送流量,請參閱 Cloud Service Mesh 轉送規則對應關係總覽。
- 如要進一步瞭解 Cloud Service Mesh,請參閱 Cloud Service Mesh 總覽。