Skip to main content
Technology areas
AI and ML
Application development
Application hosting
Compute
Data analytics and pipelines
Databases
Distributed, hybrid, and multicloud
Generative AI
Industry solutions
Networking
Observability and monitoring
Security
Storage
Cross-product tools
Access and resources management
Costs and usage management
Infrastructure as code
Migration
SDK, languages, frameworks, and tools
/
Console
English
Deutsch
Español
Español – América Latina
Français
Indonesia
Italiano
Português
Português – Brasil
中文 – 简体
中文 – 繁體
日本語
한국어
Sign in
Google Kubernetes Engine (GKE)
Documentation
Start free
Overview
Guides
Reference
Samples
Resources
Technology areas
More
Overview
Guides
Reference
Samples
Resources
Cross-product tools
More
Console
Discover
Product overview
Explore GKE documentation
Overview
Main GKE documentation
GKE AI/ML documentation
GKE networking documentation
GKE security documentation
GKE fleet management documentation
Use GKE or Cloud Run?
Try it
Create a cluster in the console
Create a cluster with Terraform
Explore your cluster
Fine-tune GKE services with Gemini assistance
Learn fundamentals
Start learning about GKE
Learn Kubernetes fundamentals
Start learning about Kubernetes
Introducing containers
Kubernetes comic
Kubernetes.io
Video playlist: Learn Kubernetes with Google
Learn GKE essentials
GKE modes of operation
Video playlist: GKE Essentials
Common GKE user roles and tasks
Get started
Cluster lifecycle
Cluster administration overview
Cluster configuration
Deploying workloads
GKE cluster architecture
Workflows and tools
gcloud CLI overview
GKE in the Google Cloud console
Provision GKE resources with Terraform
Install kubectl and configure cluster access
Simplify deployment using your IDE
Use the GKE remote MCP server
Learning path: Containerize your app
Overview
Understand the monolith
Modularize the monolith
Prepare for containerization
Containerize the modular app
Deploy the app to a cluster
Learning path: Scalable apps
Overview
Create a cluster
Monitor with Prometheus
Scale workloads
Simulate failure
Centralize changes
Production considerations
Design and plan
Code samples
Architectures and best practices
Develop and deliver apps with Cloud Code, Cloud Build, and Google Cloud Deploy
Address continuous delivery challenges
Set up GKE clusters
Plan clusters for running your workloads
Compare features in GKE Autopilot and Standard
About regional clusters
About feature gates
About alpha clusters
Set up Autopilot clusters
About GKE Autopilot
Create Autopilot clusters
Extend the run time of Autopilot Pods
Set up Standard clusters
Create a zonal cluster
Create a regional cluster
Create an alpha cluster
Create a cluster using Windows node pools
Prepare to use clusters
Use labels to organize clusters
Manage GKE resources using Tags
Configure node pools
About node pools
Add and manage node pools
About node images
About Containerd images
Specify a node image
About Arm workloads on GKE
Create Standard clusters and node pools with Arm nodes
Plan GKE Standard node sizes
About Spot VMs
About Windows Server containers
Auto-repair nodes
Automatically bootstrap GKE nodes with DaemonSets
Update Kubernetes node labels and taints for node pools
Set up clusters for multi-tenancy
About cluster multi-tenancy
Plan a multi-tenant environment
Prepare GKE clusters for third-party tenants
Set up multi-tenant logging
Use fleets to simplify multi-cluster management
About fleets
Create fleets
Set up service mesh
Provision Cloud Service Mesh in an Autopilot cluster
Enhance scalability for clusters
About GKE scalability
Plan for scalability
Plan for large GKE clusters
Plan for large workloads
Provision extra compute capacity for rapid Pod scaling
Consume reserved zonal resources
About quicker workload startup with fast-starting nodes
Reduce and optimize costs
Plan for cost-optimization
View GKE costs
View cluster costs breakdown
View cost-related optimization metrics
Optimize GKE costs
Right-size your GKE workloads at scale
Reduce costs by scaling down GKE clusters during off-peak hours
Identify underprovisioned and overprovisioned GKE clusters
Identify idle GKE clusters
Configure autoscaling for infrastructure
About cluster autoscaling
Configure cluster autoscaling
About node pool auto-creation
Configure node pool auto-creation
View cluster autoscaling events
Configure autoscaling for workloads
Scaling deployed applications
About autoscaling workloads based on metrics
Optimize Pod autoscaling based on metrics
About horizontal Pod autoscaling
Autoscale deployments using horizontal Pod autoscaling
Configure autoscaling for LLM workloads on GPUs
Configure autoscaling for LLM workloads on TPUs
View horizontal Pod autoscaler events
Scale to zero using KEDA
About vertical Pod autoscaling
Configure multidimensional Pod autoscaling
Scale container resource requests and limits
Provision storage
About storage for GKE clusters
Use Kubernetes features, primitives, and abstractions for storage
Use persistent volumes and dynamic provisioning
Use StatefulSets
About volume snapshots
Use volume expansion
Populate volumes with data from Cloud Storage
About the GKE Volume Populator
Automate data transfer to Parallelstore
Automate data transfer to Hyperdisk ML
Block storage
Provision and use Persistent Disks
Using the Compute Engine Persistent Disk CSI driver
Persistent volume attach limits
Using pre-existing persistent disks
Manually install a CSI driver
Using persistent disks with multiple readers (ReadOnlyMany)
Persistent disks backed by SSD
Regional persistent disks
Increase stateful app availability with Stateful HA Operator
Provision and use Hyperdisk
About Hyperdisk
Scale your storage performance using Hyperdisk
Optimize storage performance and cost with Hyperdisk Storage Pools
Accelerate AI/ML data loading using Hyperdisk ML
Provision and use GKE Data Cache
Accelerate read performance of stateful workloads with GKE Data Cache
Manage your persistent storage
Configure a boot disk for node file systems
Clone persistent disks
Back up and restore Persistent Disk storage using volume snapshots
Optimize disk performance
About optimizing disk performance
Monitor disk performance
Local SSD and ephemeral storage
About Local SSD storage for GKE
Provision Local SSD-backed ephemeral storage
Provision Local SSD-backed raw block storage
Create a Deployment using an EmptyDir Volume
Use dedicated Persistent Disks as ephemeral volumes
File storage
Provision and use Lustre volumes
About Managed Lustre for GKE
Create and use a volume backed by Managed Lustre
Access existing Managed Lustre instances
Provision and use Filestore
About Filestore support for GKE
Access Filestore instances
Deploy a stateful workload with Filestore
About Filestore multishares for GKE
Optimize multishares for GKE
Back up and restore Filestore storage using volume snapshots
Provision and use Parallelstore volumes
About Parallelstore for GKE
Create and use a volume backed by Parallelstore
Access existing Parallelstore instances
Object storage
Quickstart: Cloud Storage FUSE CSI driver for GKE
About the Cloud Storage FUSE CSI driver for GKE
Set up the Cloud Storage FUSE CSI driver
Mount Cloud Storage buckets as ephemeral volumes
Mount Cloud Storage buckets as persistent volumes
Configure the Cloud Storage FUSE CSI driver sidecar container
Optimize Cloud Storage FUSE CSI driver performance
Deploy and manage workloads
Deploy Autopilot workloads
Plan resource requests for Autopilot workloads
About Autopilot workloads in GKE Standard
Run Autopilot workloads in Standard clusters
Configure node attributes with ComputeClasses
About GKE ComputeClasses
About built-in ComputeClasses in GKE
About custom ComputeClasses
Control autoscaled node attributes with custom ComputeClasses
Apply ComputeClasses to Pods by default
About Balanced and Scale-Out ComputeClasses in Autopilot clusters
Choose predefined ComputeClasses for Autopilot Pods
Deploy workloads on optimized hardware
Minimum CPU platforms for compute-intensive workloads
Configure Pod bursting in GKE
Analyze CPU performance using the PMU
Run high performance computing (HPC) workloads with H4D
Deploy workloads that have special security requirements
GKE Autopilot partners
Run privileged workloads from GKE Autopilot partners
Run privileged open source workloads on GKE Autopilot
Deploy workloads that require specialized devices
About dynamic resource allocation (DRA) in GKE
Prepare your GKE infrastructure for DRA
Deploy DRA workloads
Snapshot and restore workloads with Pod snapshots
About Pod snapshots
Restore from a Pod snapshot
Migrate workloads
Identify Standard clusters to migrate to Autopilot
Prepare to migrate to Autopilot clusters from Standard clusters
Manage workloads
Place GKE Pods in specific zones
Simulate zone failure
Improve workload efficiency using NCCL Fast Socket
About container image digests
Using container image digests in Kubernetes manifests
Improve workload initialization speed
Use streaming container images
Use secondary boot disks to preload data or container images
Isolate your workloads using namespaces
Continuous integration and delivery
Plan for continuous integration and delivery
Create a CI/CD pipeline with Azure Pipelines
GitOps-style continuous delivery with Cloud Build
Modern CI/CD with GKE
A software delivery framework
Build a CI/CD system
Apply the developer workflow
Deploy workloads by application types
AI/ML workloads
AI/ML orchestration on GKE
Databases, caches, and data streaming workloads
Data on GKE
Plan your database deployments on GKE
Managed databases
Deploy an app using GKE Autopilot and Spanner
Deploy WordPress on GKE with Persistent Disk and Cloud SQL
Analyze data on GKE using BigQuery, Cloud Run, and Gemma
Kafka
Deploy Apache Kafka to GKE using Strimzi
Deploy Apache Kafka to GKE using Confluent
Redis
Create a multi-tier web application with Redis and PHP
Deploy a Redis cluster on GKE
Deploy Redis to GKE using Redis Enterprise
MySQL
Deploy a stateful MySQL cluster
Migrate your MySQL data from Persistent Disk to Hyperdisk
PostgreSQL
Deploy a highly-available PostgreSQL database
Deploy PostgreSQL to GKE using Zalando
Deploy PostgreSQL to GKE using CloudNativePG
SQL Server
Deploy single instance SQL Server 2017 on GKE
Memcached
Deploy Memcached on GKE
Vector databases
Build a RAG chatbot using GKE and Cloud Storage
Deploy a Qdrant database on GKE
Deploy an Elasticsearch database on GKE
Deploy a PostgreSQL vector database on GKE
Deploy a Weaviate vector database on GKE
Web servers and applications
Plan for serving websites
Deploy a stateful app
Ensure workloads are disruption-ready
Deploy a stateless app
Allow direct connections to Autopilot Pods using hostPort
Run Django
Deploy an application from Cloud Marketplace
Run full-stack workloads at scale on GKE
Deploy a containerized web server app
Game Servers
Get support for Agones and Game Servers issues
Isolate the Agones controller in your GKE cluster
Deploy Arm workloads
Prepare an Arm workload for deployment to Standard clusters