Patterns
GCP Zones
GCP Guide / GCP Zones

GCP Zones Guide

Zones are the smallest deployment units within Google Cloud Platform regions. Understanding zones is essential for building high-availability, fault-tolerant applications. This guide covers everything from zone concepts to multi-zone deployment strategies.

What are Zones?

A zone is an isolated location within a region. Each zone has:

  • Independent power, cooling, and networking
  • Physical isolation from other zones in the same region
  • Low-latency network connections to other zones in the region
  • Specific failure domains for resilience

Prerequisites

Before working with GCP zones, ensure you have:

  • A GCP project with appropriate permissions
  • gcloud CLI installed and configured
  • Understanding of region concepts and selection
  • Knowledge of your high availability requirements

Zone Naming Convention

Zones follow the pattern: {region}-{zone_identifier}

Examples:

  • europe-west3-a (Zone A in Europe West 3)
  • us-central1-f (Zone F in US Central 1)
  • asia-east1-b (Zone B in Asia East 1)

List of Zones by Region

The following data is automatically updated via GitHub Actions using real gcloud commands:

All Zones

Loading zone data... This will be populated by the GitHub Actions workflow.

European Zones

Loading European zone data... This will be populated by the GitHub Actions workflow.

Using gcloud to Query Zones

List All Zones

gcloud compute zones list

List Zones in a Specific Region

gcloud compute zones list --filter="region: europe-west3"

Filter European Zones

gcloud compute zones list --filter="region~'^europe'"

Format Output for Clean Display

gcloud compute zones list \
  --filter="region: europe-west3" \
  --format="table(name, region, status, description)"

Get Zone Details

gcloud compute zones describe europe-west3-a

List Upcoming Zone Maintenance

gcloud compute zones list --format="table(name, upcomingMaintenance[])"

Zone Characteristics

Isolation and Failure Domains

Each zone is designed as an independent failure domain:

  • Power: Independent power feeds and backup systems
  • Cooling: Separate cooling infrastructure
  • Networking: Isolated network fabric within the region
  • Physical: Separate data center facilities

Network Performance

  • Intra-zone: Lowest latency (same physical location)
  • Inter-zone: Low latency (same region, <1ms typically)
  • Inter-region: Higher latency (depends on distance)

Resource Availability

  • VM types: Not all machine types available in all zones
  • GPU/TPU: Specialized hardware limited to specific zones
  • Spot instances: Availability varies by zone and demand

High Availability with Zones

Multi-Zone Deployment

Deploy resources across multiple zones for resilience:

# Create instance in multiple zones
gcloud compute instances create instance-1 --zone=europe-west3-a
gcloud compute instances create instance-2 --zone=europe-west3-b
gcloud compute instances create instance-3 --zone=europe-west3-c

Regional Managed Resources

Some services automatically distribute across zones:

  • Regional Managed Instance Groups: Automatically distributes instances
  • Cloud SQL: Regional instances with automatic failover
  • Cloud Spanner: Multi-zone replication by default

Load Balancing Across Zones

# Create regional load balancer
gcloud compute forwarding-rules create my-lb \
  --region=europe-west3 \
  --load-balancing-scheme=INTERNAL \
  --network=my-network \
  --subnet=my-subnet \
  --ports=80

Zone Selection Strategy

For High Availability

  • Use multiple zones within a region
  • Distribute instances across at least 3 zones
  • Implement regional load balancing
  • Configure automatic failover

For Performance

  • Choose zones closest to your users
  • Consider network latency between zones
  • Test performance from your user locations

For Cost Optimization

  • Use spot instances in less utilized zones
  • Consider regional pricing differences
  • Optimize resource placement for network costs

For Compliance

  • Understand data residency at zone level
  • Check regulatory requirements
  • Document zone-specific data placement

Setting Default Zone

# Set default zone for gcloud
gcloud config set compute/zone europe-west3-a

# Set default region (zone will default to first available)
gcloud config set compute/region europe-west3

# View current configuration
gcloud config list

Zone Maintenance and Outages

Planned Maintenance

  • Google provides advance notice for planned maintenance
  • Some services handle maintenance automatically
  • Plan for potential downtime during maintenance windows

Unplanned Outages

  • Zone-level failures are rare but possible
  • Multi-zone deployment provides protection
  • Monitor service health dashboards

Maintenance Notifications

# Check for upcoming maintenance
gcloud compute instances list --format="table(name, zone, status)" \
  --filter="status:RUNNING"

Zone Quotas and Limits

Each zone has specific resource quotas:

  • CPU limits per zone
  • Disk storage quotas
  • Instance type availability
  • IP address allocations

Check zone-specific quotas:

gcloud compute regions describe europe-west3 --format="json" | jq '.quotas'

Best Practices

Production Workloads

  • Deploy across multiple zones
  • Use regional managed services when available
  • Implement proper monitoring and alerting
  • Test failover procedures regularly

Development and Testing

  • Use single zones for cost efficiency
  • Mirror production zone configuration
  • Consider zone-specific testing

Cost Optimization

  • Use spot instances in less utilized zones
  • Optimize network traffic between zones
  • Consider regional vs. zonal resources

Common Patterns

Zone-Redundant Storage

# Create regional storage bucket (multi-zone)
gsutil mb -l europe-west3 -p my-project gs://my-bucket

# Create dual-region bucket
gsutil mb -l europe-west3,europe-west4 -p my-project gs://my-dual-bucket

Multi-Zone Kubernetes Cluster

# Create GKE cluster across multiple zones
gcloud container clusters create my-cluster \
  --region=europe-west3 \
  --num-nodes=3 \
  --node-locations=europe-west3-a,europe-west3-b,europe-west3-c

Zone-Specific Networking

# Create regional subnet (spans multiple zones)
gcloud compute networks subnets create my-subnet \
  --network=my-network \
  --region=europe-west3 \
  --range=10.0.0.0/24

Common Issues and Troubleshooting

Zone Not Available

  • Verify zone exists: gcloud compute zones list
  • Check zone status and maintenance windows
  • Ensure service is available in the zone

Resource Creation Fails

  • Check zone-specific quotas
  • Verify machine type availability
  • Consider alternative zones

Performance Issues

  • Test network latency between zones
  • Check zone capacity and utilization
  • Monitor zone-specific performance metrics

Cleanup Commands

# No specific cleanup needed for zones
# Resources are deleted at the resource level, not zone level

Migration Between Zones

Move Resources Between Zones

Most resources need to be recreated:

  1. Create resources in the target zone
  2. Migrate data and configurations
  3. Update load balancers and DNS
  4. Decommission old resources

Live Migration

Some services support live migration:

  • Compute Engine: Live VM migration during maintenance
  • GKE: Node pool maintenance with pod disruption budgets

Jump to other sections

Additional Resources