配额和限制


本文档列出了适用于 Google Kubernetes Engine 的配额和限制。

配额会限制 Google Cloud 项目可使用的特定共享 Google Cloud 资源(包括硬件、软件和网络组件)的数量。

配额是执行以下操作的系统的一部分:

  • 监控 Google Cloud 产品和服务的使用情况或消费情况。
  • 为了确保公平性和减少使用量高峰等原因,您可以限制对这些资源的消耗。
  • 维护可自动强制执行规定限制的配置。
  • 提供更改配额或请求更改配额的方法。

超过配额时,在大多数情况下,系统会立即阻止对相关 Google 资源的访问,并且您尝试执行的任务将失败。在大多数情况下,配额适用于每个 Google Cloud 项目,并由使用该 Google Cloud 项目的所有应用和 IP 地址共享。

如需增加或减少大多数配额,请使用 Google Cloud 控制台。如需了解详情,请参阅申请更高的配额限制

GKE 资源也有限制。这些限制与配额系统无关。除非另有说明,否则无法更改限制。

针对每个项目的限制

在单个项目中,每个可用区中最多可以创建 100 个可用区级集群,此外,每个区域中最多可以创建 100 个区域级集群

注意:在自动试用模式中创建的集群已预先配置为区域性集群。

针对每个集群的限制

下表介绍了针对每个 GKE 集群的限制。

下表中指定的任何 GKE 版本均适用于集群节点和控制层面。

限制 GKE Standard 集群 GKE Autopilot 集群
每个集群的节点数 15000

注意:如果您计划运行超过 2000 个节点,请使用区域级集群

注意:运行超过 5,000 个节点仅适用于区域级集群(专用集群或具有 Private Service Connect 且已停用 GKE Dataplane V2 的集群)。如需提高此配额限制,请与支持团队联系

5,000

注意:如果您计划运行超过 1,000 个节点,请使用 GKE Autopilot 1.23 版或更高版本。

注意:运行超过 400 个节点可能需要提高在较低版本中创建的集群的大小配额。 请与支持团队联系以寻求帮助。

每个节点池的节点数 1,000 不适用
一个区域中的节点数
  • 使用基于 NEG 的 Ingress 实现容器原生负载平衡时,无节点限制。建议您尽量使用这种方式。在 GKE 1.17 及更高版本中,基于 NEG 的 Ingress 是默认模式。
  • 如果您使用的是基于实例组的 Ingress,则为 1000
不适用
每个节点的 Pod 数2 256

注意:对于低于 1.23.5-gke.1300 的 GKE 版本,上限为 110 个 Pod。

32
每个集群的 Pod 数1 200,0002 25,000
每个集群的容器数 400,000 25,000

作为平台管理员,我们建议您熟悉配额如何影响在 GKE 上运行的大型工作负载。如需了解针对大型工作负载的其他建议、最佳实践、限制和配额,请参阅创建可扩缩集群指南

API 请求限制

Kubernetes Engine API 的默认速率限制为每分钟 3000 个请求,每 100 秒强制发布一次。

资源配额

对于节点数低于 100 个的集群,GKE 会将 Kubernetes 资源配额应用于每个命名空间。这些配额可以保护集群的控制平面,避免因部署到集群的应用中存在潜在 Bug 而导致其不稳定。您无法移除这些配额,因为它们由 GKE 强制应用。

GKE 会根据节点数按比例自动更新资源配额值。对于超过 100 个节点的集群,GKE 会移除资源配额。

如需检查资源配额,请使用以下命令:

kubectl get resourcequota gke-resource-quotas -o yaml

如需查看给定命名空间的值,请添加 --namespace 选项以指定命名空间。

备注

  1. 节点可容纳的 Pod 数量上限取决于 Pod 资源请求的大小和节点的容量。您可能不会同时达到所有限制。我们建议您对大型部署执行负载测试。

  2. 每个 GKE Standard 集群的最大 Pod 数量包括系统 Pod。 系统 Pod 的数量因集群配置和已启用的功能而异。