Cloud Parts

Google Kubernetes Engine

Google’s managed Kubernetes, the oldest one: Google runs the control plane, and in Autopilot mode the nodes too.

Type
Managed service on Google Cloud
Made by
Google
License
Proprietary
Facts checked
6 October 2026

What it is

In GKE, Google runs each cluster’s control plane: the Kubernetes API server, the scheduler, the controllers and the database that holds cluster state. That database is etcd running on the control plane VMs, or Google’s Spanner, but every cluster serves the etcd API, so the Kubernetes API server talks to both the same way. A zonal cluster has its control plane in one zone; a regional cluster keeps replicas in several zones, so it stays reachable through a zone outage and during upgrades. Google upgrades the control plane on a schedule set by the release channel you pick: Rapid, Regular (the default), Stable or Extended.

GKE has two modes. In Standard mode you design node pools, groups of Compute Engine VMs with a machine type you choose, and pay for those VMs whether Pods fill them or not. In Autopilot mode, launched in 2021 and now Google’s recommendation, Google creates, sizes, patches and repairs the nodes, and for general-purpose Pods you pay per second for the CPU, memory and storage each Pod requests. Since 2025 a Standard cluster can also run selected workloads in Autopilot mode. For untrusted code, GKE Sandbox runs a Pod inside gVisor, a user-space kernel that answers most system calls itself, or, on recent versions, inside its own microVM using Kata Containers.

Why teams pick it

  • Autopilot’s per-Pod billing means you don’t pay for half-empty nodes on general-purpose workloads
  • The free tier credits one zonal or Autopilot cluster’s fee each month per billing account
  • Very large clusters: Google announced support for 65,000 nodes in November 2024
  • Built-in sandboxing with gVisor or microVMs for multi-tenant or untrusted workloads

Watch out for

  • A flat $0.10 per cluster per hour, rising to $0.60 while a cluster on the Extended channel sits in extended support
  • Autopilot gives up node access: no SSH to the VMs, and Pods must fit its security and configuration constraints (privileged Pods need Standard)
  • The free tier doesn’t cover regional Standard clusters, and the zonal control plane SLA is only 99.5%
  • Clusters are upgraded automatically; maintenance windows and exclusions shape the timing, but staying on one minor version for long needs the paid Extended channel

More of the Kubernetes family

What all container orchestration have in common →
Amazon EKSAWSManaged servicesAWS runs the Kubernetes control plane for you; you choose how much of the worker side to hand over too.Azure Kubernetes ServiceAzureManaged servicesMicrosoft’s managed Kubernetes: a control plane that can be free, node pools of Azure VMs, and an Automatic mode that runs the nodes too.K3sOpen sourceDistributionsA certified Kubernetes distribution in one small binary, built for edge, IoT and other places where a full cluster is too heavy, with SQLite or embedded etcd for state.MicroK8sOpen sourceDistributionsCanonical’s Kubernetes in one snap package: installs with one command on Linux, forms a highly available cluster by itself at three nodes, and adds features as addons.Red Hat OpenShiftCommercialDistributionsRed Hat’s Kubernetes platform: Kubernetes plus its own OS, operators that install and upgrade everything, and stricter security defaults, sold by subscription.RKE2Open sourceDistributionsSUSE’s security-focused Kubernetes distribution: one binary per node, hardened defaults, FIPS-validated crypto and close alignment with upstream.Talos LinuxOpen sourceDistributionsA Linux distribution that only runs Kubernetes: immutable, minimal, with no shell or SSH, and managed entirely through an API.kindOpen sourceFor local developmentKubernetes IN Docker: each cluster node is a container, so a conformant multi-node cluster starts and disappears inside a CI job.minikubeOpen sourceFor local developmentA local Kubernetes cluster for developers on Linux, macOS or Windows, in a container, a VM or on the host itself, with laptop-friendly extras.kubeadmOpen sourceToolsThe official tool for turning Linux machines you already have into a Kubernetes cluster: `kubeadm init`, then `kubeadm join`.RancherOpen sourceToolsSUSE’s open-source control plane for fleets of Kubernetes clusters: one place to create, import, secure and upgrade them.AgonesOpen sourceBuilt on itRuns dedicated multiplayer game servers on Kubernetes: keeps a fleet of them warm, hands one to each match, and never kills a server while players are on it.KlutchOpen sourceBuilt on itA young open-source control plane, built on Crossplane, that lets many application clusters order databases from one central Kubernetes cluster.

How it fits with other technologies

Create an Autopilot cluster and run a Pod in a gVisor sandbox · bash

gcloud container clusters create-auto demo --location=us-central1
gcloud container clusters get-credentials demo --location=us-central1

# Autopilot supports gVisor by default; Standard needs a sandbox-enabled node pool
kubectl apply -f - <<'EOF'
apiVersion: v1
kind: Pod
metadata: { name: untrusted }
spec:
  runtimeClassName: gvisor
  containers:
    - name: app
      image: nginx
EOF

What a cluster costs (checked 2026-10-06)#

Every cluster pays the same management fee whatever its size or mode. Compute is billed on top: per node in Standard, per Pod request in Autopilot.

PriceNotes
Cluster management fee$0.10 per cluster per hourBilled per second; same for zonal, regional and Autopilot
Free tier$74.40 credit a monthPer billing account; zonal and Autopilot clusters only
Extended support period+$0.50 per cluster per hourExtended channel only, up to 24 months on one minor version
Standard computeCompute Engine VM pricesYou pay for every node in your node pools
Autopilot computePer Pod request, per secondCPU, memory and ephemeral storage; node-based pricing plus a premium for specific hardware
  • From the GKE pricing page, checked on 2026-10-06. The control plane SLA is 99.95% for Autopilot and regional clusters and 99.5% for zonal clusters.

See it in a real stack

No architecture uses Google Kubernetes Engine yet. Drop it into the playground and wire it up yourself.Open playground →
Where it came from2014–2025

Google ran its own services in containers on an internal cluster manager called Borg for about a decade before Kubernetes. After open-sourcing Kubernetes in June 2014, it wanted Google Cloud customers to be able to use it without running it themselves. On November 4, 2014 it announced an alpha of Google Container Engine, a managed cluster manager for Docker containers built on Kubernetes. The name started with C, but Google used the acronym GKE from the start “in a nod to Kubernetes”.

Container Engine left beta and became generally available on August 26, 2015. In November 2017, after joining the CNCF’s Certified Kubernetes program, Google renamed it Google Kubernetes Engine. Around the same time it dropped its cluster management fee, which had been $0.15 per hour for clusters of six or more nodes; in June 2020 it brought back a flat $0.10 per hour together with a financially backed SLA.

In February 2021 Google launched Autopilot, a second mode where Google also runs the nodes and bills by Pod. It has since become the default recommendation, and in 2025 Google started letting Standard clusters run Autopilot workloads too. Scale kept growing with AI training: GKE announced support for 65,000-node clusters in November 2024. In September 2025 Google moved GKE to a single paid tier that includes multi-cluster features such as Fleets, Config Management and Policy Controller at no extra cost.

Why it’s built this way

Run upstream Kubernetes, not a Borg service
Google wanted customers to run the same open-source system anywhere. GKE runs certified Kubernetes, and Google says it puts the improvements needed for scale, such as those behind 65,000-node clusters, into open-source Kubernetes.
Two modes instead of one
Some teams want full control of node pools and machine types; others find that much choice “overwhelming or unnecessary”. Autopilot lets Google own the nodes and charge per Pod, while Standard stays for teams that need the control.
Serve the etcd API whatever the backing store
Kubernetes expects etcd. Exposing the etcd API on every control plane lets Google back some clusters with Spanner instead, without changing Kubernetes itself.
A user-space kernel for untrusted Pods
Containers share the host kernel, so a kernel bug can let one tenant escape. GKE Sandbox puts gVisor between the Pod and the host kernel without changing the application.

Timeline

  1. 2014

    Google Container Engine alpha announced on November 4

  2. 2015

    Generally available on August 26, with a 99.5% uptime SLA

  3. 2017

    Renamed Google Kubernetes Engine; cluster fee dropped

  4. 2020

    GKE Sandbox (gVisor) generally available; $0.10 per hour fee and SLA from June 6

  5. 2021

    Autopilot mode launches on February 24

  6. 2024

    Support for 65,000-node clusters announced

  7. 2025

    Single pricing tier; Autopilot workloads allowed in Standard clusters

Sources10 · facts checked 6 October 2026

Improve this page on GitHub