Quotas and limits

This page explains the quotas and limits for Google Kubernetes Engine (GKE) clusters, nodes, and GKE API requests.

Limits per project

The limits per GKE project are:

Note: Clusters created in the Autopilot mode are pre-configured as regional clusters.

Limits per cluster

The limits per GKE cluster are:

Limits GKE Standard cluster GKE Autopilot cluster
Nodes per cluster
  • 5,000 for GKE versions up to 1.17.
  • 15,000 for GKE versions 1.18 and later.

Note: To run more than 5,000 nodes requires lifting a cluster size quota. Contact support for assistance.

400

To lift this quota, contact support for assistance.

Nodes per node pool zone 1,000 Not applicable
Nodes in a zone
  • No node limitations for container-native load balancing with NEG-based Ingress, which is recommended whenever possible. In GKE versions 1.17 and later, NEG-based Ingress is the default mode.
  • 1,000 if you are using Instance Group-based Ingress.
Not applicable
Pods per node 110 32
Pods per cluster 150,000 12,800 (32 Pods/node * 400 nodes)
Containers per cluster 300,000 25,600

Learn more about relevant limits and quotas in the Guidelines for creating scalable clusters.

Limit for API requests

The default rate limit for the Kubernetes Engine API is 3000 requests per min, enforced at intervals of every 100 seconds.

Additional limits and quotas

In addition to per-cluster and per-project limits, specific GKE features have additional limits. For more information, refer to documentation for the features you use.

You might also encounter Compute Engine resource quotas. Additionally, for projects with default regional Compute Engine CPUs quota, GKE clusters are limited to three per region.

Resource quotas

A set of resource quotas is automatically applied to clusters with 100 nodes or fewer and to namespaces on those clusters. These quotas, which cannot be removed, protect the cluster's control plane from instability caused by potential bugs in applications deployed to the cluster.

To examine resource quotas, use the following command:

kubectl get resourcequota gke-resource-quotas -o yaml

To view the gke-resource-quotas object for a given namespace, specify the namespace by adding the --namespace option.