叢集內 Cloud Service Mesh 的必要條件
Google Cloud 詳情請參閱「Cloud Service Mesh 總覽」一文。本頁面說明安裝叢內 Cloud Service Mesh 的先決條件和需求,適用於 Kubernetes 工作負載關閉 Google Cloud的情況,例如叢集需求、機群需求和一般需求。
Cloud 專案
事前準備:
一般規定
如要納入服務網格,服務通訊埠必須命名,且名稱必須包含通訊埠的通訊協定,語法如下:
name: protocol[-suffix]
方括號表示選用後置字元,且必須以破折號開頭。詳情請參閱「命名服務通訊埠」。如果您已在貴機構中建立服務範圍,可能需要將 Cloud Service Mesh 憑證授權單位服務新增至該範圍。詳情請參閱「將 Cloud Service Mesh 憑證授權單位新增至服務安全防護範圍」一文。
如要變更
istio-proxy
Sidecar 容器的預設資源限制,新值必須大於預設值,才能避免發生記憶體不足 (OOM) 事件。每個 Google Cloud 專案只能有一個關聯的網格。
叢集需求
請確認安裝 Cloud Service Mesh 的使用者叢集至少有 4 個 vCPU、15 GB 記憶體和 4 個節點。
確認叢集版本是否列於「支援的平台」中。
確認您用來安裝 Cloud Service Mesh 的用戶端電腦已連線至 API 伺服器。
如果您在應用程式 Pod 中部署 Sidecar,但無法直接連線至 CA 服務 (例如
meshca.googleapis.com
和privateca.googleapis.com
),則必須設定以CONNECT
為基礎的明確 HTTPS Proxy。如果公開叢集已設定輸出防火牆規則,且這些規則會封鎖隱含規則,請務必設定 HTTP/HTTPS 和 DNS 規則,以便存取公開的 Google API。
車隊需求
所有叢集都必須註冊至機群,且必須啟用機群工作負載身分。您可以自行設定叢集,也可以讓 asmcli
註冊叢集,只要叢集符合下列條件即可:
- GKE 叢集 (不含 Google Cloud): (適用於叢集內 Cloud Service Mesh) 適用於 VMware 的 Google Distributed Cloud (僅限軟體)、 適用於裸機的 Google Distributed Cloud (僅限軟體)、 GKE on AWS (已淘汰) 和 GKE on Azure (已淘汰) 會在建立叢集時自動註冊至專案車隊。從 GKE Enterprise 1.8 開始,註冊時,所有這些叢集類型都會自動啟用機群 Workload Identity。現有已註冊的叢集升級至 GKE Enterprise 1.8 時,會更新為使用機群 Workload Identity。
- Amazon EKS 叢集 (已淘汰):(適用於叢集內 Cloud Service Mesh) 叢集必須具備公開的 IAM OIDC 識別資訊提供者。請按照「為叢集建立 IAM OIDC 供應商」一文中的說明,檢查供應商是否存在,並視需要建立供應商。
執行 asmcli install
時,請指定車隊主專案的專案 ID。如果叢集尚未註冊,asmcli
會註冊叢集。