配額與限制

這份文件列出 Google Kubernetes Engine 適用的配額和系統限制。

  • 「配額」有預設值,但通常可以申請調整。
  • 「系統限制」是固定值,無法變更。

Google Cloud 使用配額來確保公平性,並減少資源使用量和可用性出現劇烈波動的情況。配額會限制 Google Cloud 專案可使用的Google Cloud 資源數量,且適用多種資源類型,包括軟硬體和網路元件。舉例來說,配額可能會限制能向特定服務發出的 API 呼叫次數、專案可同時使用的負載平衡器數量,或是可建立的專案數量。配額機制可防止服務過載,保障Google Cloud 使用者社群的權益,同時也有助於您管理自己的 Google Cloud 資源。

Cloud Quotas 系統具備以下功能:

如果嘗試使用的資源量超過配額限制,系統通常會阻擋該資源的存取活動,您所執行的工作就會失敗。

配額的計算通常是以 Google Cloud 專案為基準。在某個專案中使用資源,不會影響另一個專案的可用配額。在同一個 Google Cloud 專案內,所有應用程式和 IP 位址會共用配額。

詳情請參閱「Cloud Quotas 總覽」。

如要調整大部分配額,請使用 Google Cloud 控制台。詳情請參閱「要求調整配額」。

GKE 資源也有「系統限制」,而且無法變更。

每個專案的配額

GKE 的配額如下:

  • 可用區叢集: 每個可用區 100 個
  • 區域叢集: 每個區域 100 個

  • API 讀取:每分鐘 600,000 個要求

  • API 寫入:每分鐘 600 個要求

  • 工作負載和代理程式身分的權杖交換要求:每個區域每分鐘 6,000 項要求。特定區域中的所有區域和區域叢集都會共用這項配額。

查看配額

如要查看配額,請前往 Google Cloud 控制台的「配額」頁面。

前往配額頁面

如要進一步瞭解如何管理配額,請參閱「查看及管理配額」。

每個叢集的限制

下表說明每個 GKE 叢集的限制。

下表列出的所有 GKE 版本都適用於叢集節點和控制層。

限制 GKE Standard 叢集 GKE Autopilot 叢集
每個叢集的節點數量 65,000 個節點

並非所有節點配額都會自動增加。視目標節點數量 (例如最多 5,000 個節點、最多 15,000 個節點或最多 65,000 個節點) 而定,基礎架構有特定需求,您可能需要聯絡 Cloud Customer Care。詳情請參閱「叢集大小限制和規定」。

5,000 個節點

如果您打算使用這項限制,請在設計 GKE 架構時,考慮下列建議:

  • 如要執行超過 1,000 個節點,請使用 GKE Autopilot 1.23 以上版本。
  • 如要執行超過 400 個節點,可能需要提高在舊版建立的叢集叢集大小配額。向支援團隊尋求協助。
每個節點集區的節點數 每個區域 1,000 個節點

每個區域 2,000 個 TPU 節點 - 需要下列以上版本:1.28.5-gke.135500、1.29.1-gke.1206000、1.30
不適用
可用區中的節點數
  • 採用 NEG 型 Ingress 的容器原生負載平衡沒有節點數量限制,因此建議您盡可能採用這個方式。1.17 版以上的 GKE 會預設使用 NEG 型 Ingress。
  • 1,000 個節點 如果您使用以執行個體群組為基礎的 Ingress。
不適用
每個節點的 Pod 數量1 512 個 Pod

動態設為介於 8 到 256 之間的任何值。 GKE 會考量叢集大小和工作負載數量,為每個節點佈建最多 Pod 數量。

  • 如果是 1.28 之前的 GKE 版本,上限為 32 個 Pod。
  • 如果是 GPU Pod 和效能等級 Pod,每個節點的上限為一個 Pod。
每個叢集的 Pod 數量2 200,000 個 Pod1 200,000 個 Pod
每個叢集的容器數量 40 萬個容器 40 萬個容器
單一資源大小 1.5 MiB

注意:Kubernetes API 伺服器會先更新部分資源,再刪除這些資源。這項更新可能會導致資源大小增加,且可能永久無法刪除資源。

1.5 MiB

注意:Kubernetes API 伺服器會先更新部分資源,再刪除這些資源。這項更新可能會導致資源大小增加,且可能永久無法刪除資源。

叢集狀態資料庫大小 6 GB 6 GB
並行作業 100 項作業 100 項作業

身為平台管理員,建議您先瞭解配額對 GKE 上執行的大型工作負載有何影響。如需大型工作負載的其他建議、最佳做法、限制和配額,請參閱「建立可擴充叢集的指南」。

資源配額

對於節點數少於 100 個的叢集,GKE 會對每個命名空間套用 Kubernetes 資源配額。這些配額可保護叢集的控制層,避免因部署至叢集的應用程式可能含有錯誤,而導致控制層不穩定。這些配額由 GKE 強制執行,因此無法移除。

GKE 會根據節點數量,自動更新資源配額值。如果叢集超過 100 個節點,GKE 會移除資源配額。

如要檢查資源配額,請使用下列指令:

kubectl get resourcequota gke-resource-quotas -o yaml

如要查看特定命名空間的值,請新增 --namespace 選項來指定命名空間。

附註

  1. 每個 GKE Standard 叢集的 Pod 數量上限包含系統 Pod。 系統 Pod 數量會因叢集設定和已啟用的功能而異。 ↩

  2. 節點可容納的 Pod 數量上限取決於 Pod 資源要求的大小和節點容量。您可能不會同時達到所有限制。最佳做法是針對大型部署進行負載測試。↩