叢集內 Cloud Service Mesh 必要條件
Google Cloud 詳情請參閱「Cloud Service Mesh 總覽」。本頁面說明在 GKE 上安裝叢集內 Cloud Service Mesh 的先決條件和相關規定,例如 GKE Enterprise 授權、叢集規定、機群規定和一般規定。
Cloud 專案
事前準備:
GKE Enterprise 授權
您可以透過 GKE Enterprise 使用 Cloud Service Mesh,也可以單獨使用這項服務。Google API 會決定計費方式。如要將 Cloud Service Mesh 做為獨立服務使用,請勿在專案中啟用 GKE Enterprise API。asmcli 會為您啟用所有其他必要的 Google API。如要瞭解 Cloud Service Mesh 的定價,請參閱「定價」。
- GKE Enterprise 訂閱者,請務必啟用 GKE Enterprise API。 
- 即使您不是 GKE Enterprise 訂閱者,仍可安裝 Cloud Service Mesh,但 Google Cloud 主控台中的某些 UI 元素和功能僅供 GKE Enterprise 訂閱者使用。如要瞭解訂閱者和非訂閱者可用的功能,請參閱「GKE Enterprise 和 Cloud Service Mesh 的 UI 差異」。 
- 如果您已啟用 GKE Enterprise API,但想要將 Cloud Service Mesh 做為獨立服務使用,請停用 GKE Enterprise API。 
一般規定
- 如要將服務通訊埠納入服務中介,必須為其命名,且名稱必須包含以下語法中的通訊埠通訊協定: - name: protocol[-suffix],其中方括號表示可選的後置字串,必須以破折號開頭。詳情請參閱「命名服務通訊埠」。
- 如果您已在貴機構中建立服務範圍,可能需要將 Cloud Service Mesh 憑證授權單位服務新增至範圍。詳情請參閱「將 Cloud Service Mesh 憑證授權單位新增至服務邊界」。 
- 如果您想變更 - istio-proxy附屬容器的預設資源限制,新值必須大於預設值,才能避免記憶體不足 (OOM) 事件。
- Google Cloud 專案只能與一個網格建立關聯。 
叢集需求
- 請確認您的叢集版本列於支援的平台中。 
- GKE 叢集必須符合下列要求: - GKE 叢集必須是標準叢集。只有代管式 Cloud Service Mesh 支援 Autopilot 叢集。 
- 至少有 4 個 vCPU 的機器類型,例如 - e2-standard-4。如果叢集的機器類型沒有至少 4 個 vCPU,請按照「將工作負載遷移至其他機器類型」一文所述,變更機器類型。
- 節點的最低數量取決於機器類型。Cloud Service Mesh 至少需要 8 個 vCPU。如果機器類型有 4 個 vCPU,叢集至少必須有 2 個節點。如果機器類型有 8 個 vCPU,叢集只需要 1 個節點。如果需要新增節點,請參閱調整叢集大小。 
 
- 必須使用 GKE Workload Identity。建議您在安裝 Cloud Service Mesh 前,先啟用 Workload Identity。啟用 Workload Identity 後,系統會改變從工作負載至 Google API 的呼叫安全性,如「Workload Identity 限制」所述。請注意,您不需要在現有節點集區上啟用 GKE 中繼資料伺服器。 
- 選用,但建議在發布版本中註冊叢集。我們建議您加入一般發布管道,因為其他管道可能會採用 Cloud Service Mesh 不支援的 GKE 版本 1.27.1。詳情請參閱「支援的平台」。如果您使用的是靜態 GKE 版本,請按照「在發布版本中註冊現有叢集」一文中的指示操作。 
- 如果您要在私人叢集中安裝 Cloud Service Mesh,必須在防火牆中開啟通訊埠 15017,才能取得用於自動側載注入和設定驗證的 webhook。詳情請參閱「在私人叢集中開啟通訊埠」。 
- 請確認安裝 Cloud Service Mesh 的用戶端電腦與 API 伺服器之間有網路連線。 
- 對於 Windows Server 工作負載,Cloud Service Mesh 不受支援。如果叢集同時包含 Linux 和 Windows Server 節點集區,您仍可安裝 Cloud Service Mesh,並在 Linux 工作負載上使用。 
機群需求
所有叢集都必須註冊至機群,且必須啟用機群工作負載身分。您可以自行設定叢集,也可以讓 asmcli 註冊叢集,前提是叢集必須符合下列條件:
- GKE:(適用於叢集內和受管理的 Cloud Service Mesh) 在 Google Kubernetes Engine 叢集中啟用 GKE 工作負載身分 (如果尚未啟用)。此外,您必須使用機群 Workload Identity 註冊叢集。
執行 asmcli install 時,您會指定車隊主機專案的專案 ID。如果叢集尚未註冊,asmcli 會註冊叢集。