What's Actually Happening

Google Cloud Compute Engine instance fails to start. The instance remains in stopped or provisioning state.

The Error You'll See

bash
Error: The zone 'projects/my-project/zones/us-central1-a' does not have enough resources available to fulfill the request.

Why This Happens

  1. 1.Resource availability in zone
  2. 2.Quota limits exceeded
  3. 3.Boot disk issues
  4. 4.Service account problems
  5. 5.Network configuration errors

Step 1: Check Instance Status

bash
gcloud compute instances describe my-instance --zone=us-central1-a
gcloud compute instances list --filter="name=my-instance"

Step 2: Check Serial Console

bash
gcloud compute instances get-serial-port-output my-instance --zone=us-central1-a

Step 3: Check Quotas

bash
gcloud compute project-info describe --project=my-project
gcloud compute project-info describe --project=my-project --format="value(quotas)"

Step 4: Check Boot Disk

bash
gcloud compute disks describe my-instance --zone=us-central1-a
gcloud compute disks list --filter="name=my-instance"

Step 5: Try Different Zone

bash
gcloud compute instances move my-instance --destination-zone=us-central1-b

Step 6: Resize Instance

bash
gcloud compute instances set-machine-type my-instance --zone=us-central1-a --machine-type=n1-standard-2

Step 7: Check Service Account

bash
gcloud compute instances describe my-instance --zone=us-central1-a --format="value(serviceAccounts)"

Step 8: Check Network

bash
gcloud compute networks describe default
gcloud compute firewall-rules list

Step 9: Recreate Instance

bash
gcloud compute instances stop my-instance --zone=us-central1-a
gcloud compute instances delete my-instance --zone=us-central1-a --keep-disks=boot
# Create new from disk

Step 10: Check Logs

bash
gcloud logging read "resource.type=gce_instance AND resource.labels.instance_id=my-instance" --limit=50
  • [Fix GCP Instance SSH Failed](/articles/fix-gcp-instance-ssh-failed)
  • [Fix GCP Disk Full](/articles/fix-gcp-disk-full)