配额和限制


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

  • 配额用于指定您可以使用的可计数共享资源的数量。配额由 Google Kubernetes Engine 等 Google Cloud 服务定义。
  • 系统限制是无法更改的固定值。

Google Cloud 使用配额来帮助确保公平性并减少资源使用和可用性的激增。配额用于限制您的 Google Cloud 项目可使用的Google Cloud 资源的数量。配额适用于一系列资源类型,包括硬件、软件和网络组件。例如,配额可以限制对某项服务的 API 调用次数、您的项目并发使用的负载均衡器数量或者您可以创建的项目数量。配额可以防止服务过载,从而保护Google Cloud 用户社区。配额还可以帮助您管理自己的 Google Cloud 资源。

Cloud 配额系统执行以下操作:

在大多数情况下,当您尝试消耗的资源超出其配额允许的范围时,系统会阻止对资源的访问,并且您尝试执行的任务会失败。

配额通常在 Google Cloud 项目级层应用。您在一个项目中使用资源不会影响您在另一个项目中的可用配额。在 Google Cloud 项目中,配额在所有应用和 IP 地址间共享。

如需调整大多数配额,请使用 Google Cloud 控制台。如需了解详情,请参阅申请更高的配额值

GKE 资源也有系统限制。系统限制不能更改。

每个项目的配额

GKE 具有以下配额:

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

查看您的配额

您可以在 Google Cloud 控制台中查看配额,只需转到配额页面即可。

转到“配额”

如需管理配额和申请额外的配额,请参阅查看和管理配额

针对每个集群的限制

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

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

限制 GKE Standard 集群 GKE Autopilot 集群
每个集群的节点数 65,000 个节点

如果您打算使用此限制,请在设计 GKE 架构时考虑以下建议:

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

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

动态设置为介于 8 到 256 之间的任意值。 GKE 会考虑集群大小和工作负载数量,以便为每个节点预配最大 Pod 数量。

  • 对于低于 1.28 的 GKE 版本,上限为 32 个 Pod。
  • 对于加速器类 Pod 和性能类 Pod,限制为每个节点一个 Pod。
每个集群的 Pod 数2 200,000 个 Pod1 200,000 个 Pod
每个集群的容器数 400,000 个容器 400,000 个容器
etcd 数据库大小 6 GB 6 GB

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

资源配额

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

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

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

kubectl get resourcequota gke-resource-quotas -o yaml

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

备注

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

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