本頁面說明 Google Kubernetes Engine (GKE) 節點服務帳戶洞察的網路分析器洞察。如要瞭解所有洞察類型,請參閱「洞察群組和類型」。
如要在 gcloud CLI 或 Recommender API 中查看這些洞察,請使用下列洞察類型:
google.networkanalyzer.container.serviceAccountInsight
您需要下列權限:
recommender.networkAnalyzerGkeServiceAccountInsights.listrecommender.networkAnalyzerGkeServiceAccountInsights.get
如要進一步瞭解如何使用 Recommender API 取得網路分析器洞察,請參閱「使用 Recommender CLI 和 API」。
GKE 節點服務帳戶已停用
這項洞察指出,叢集中的一或多個集區使用已停用的 GKE 節點服務帳戶,這可能會導致服務帳戶停用時建立的叢集中,任何節點的啟動和註冊作業失敗。
這項洞察資料包含下列資訊:
- 服務帳戶:一種特殊的帳戶,使用者通常並非真人,而是應用程式或運算工作負載,例如 Compute Engine 執行個體。每個服務帳戶都有專屬的電子郵件地址,以利識別。這項資訊可在 Recommender API 中取得。
- GKE 叢集:GKE 叢集的名稱
- 節點集區:使用已停用服務帳戶的節點集區清單
相關主題
詳情請參閱「啟用 Compute Engine 預設服務帳戶」和「停用服務帳戶」。
建議
啟用節點服務帳戶。如果受影響的節點集區中有未註冊的節點,這些節點會重新啟動,並正確註冊至叢集。所有節點可能需要一段時間才會重新啟動。如要快速解決問題,建議您將節點集區調整為零個節點,然後再調回 X 個節點,或是建立使用相同節點服務帳戶的新節點集區。
GKE 節點集區會使用 Compute Engine 預設服務帳戶
GKE 叢集中的節點集區會使用 Compute Engine 預設服務帳戶做為節點服務帳戶。這個帳戶具備的權限多過於 Google Kubernetes Engine 叢集執行時所需。
這項洞察資料包含下列資訊:
- GKE 叢集:GKE 叢集的名稱
- 節點集區:使用預設服務帳戶的節點集區清單
相關主題
詳情請參閱「使用最小權限的服務帳戶」。
建議
為節點建立並使用權限較少的服務帳戶,而非 Compute Engine 預設服務帳戶。
GKE 節點集區的存取權範圍設定錯誤
GKE 叢集中的節點集區已手動指定存取權範圍,但指定的範圍不足以註冊節點。
如果工作負載使用應用程式預設憑證 (ADC),存取權範圍是舊版方法,可為節點和在節點上執行的工作負載授予權限。對於 GKE 節點,請務必使用至少預設的範圍,否則節點將無法註冊。
這項洞察資料包含下列資訊:
- GKE 叢集:GKE 叢集的名稱
- 節點集區:存取權範圍設定錯誤的節點集區清單
相關主題
詳情請參閱「GKE 中的存取權範圍」。
建議
將節點集區換成具有足夠存取權範圍的節點集區。如要建立具有足夠存取權範圍的節點集區,請執行下列其中一項操作:
建立新的節點集區,但不指定存取權範圍。在 Google Cloud CLI 中呼叫
gcloud container node-pools create時,請勿加入--scopes旗標。如要授權在節點上執行的工作負載,請使用 Identity and Access Management (IAM) 權限或 Kubernetes 角色式存取控管 (RBAC)。這是為了授予特定 IAM 服務帳戶或 Kubernetes 服務帳戶的存取權。詳情請參閱「設定工作負載的自訂服務帳戶」。
在手動指定存取權範圍的新節點集區清單中,新增下列範圍。
https://www.googleapis.com/auth/devstorage.read_onlyhttps://www.googleapis.com/auth/service.management.readonlyhttps://www.googleapis.com/auth/servicecontrolhttps://www.googleapis.com/auth/trace.appendhttps://www.googleapis.com/auth/logging.writehttps://www.googleapis.com/auth/monitoring.write