GCP Cheat Sheet

Compute:

Virtual Machines (VMs):

        
// Create a VM instance
gcloud compute instances create INSTANCE_NAME \\
    --image IMAGE \\
    --machine-type MACHINE_TYPE \\
    --zone ZONE

// List VM instances
gcloud compute instances list

// SSH into a VM instance
gcloud compute ssh INSTANCE_NAME --zone ZONE

// Start a VM instance
gcloud compute instances start INSTANCE_NAME --zone ZONE

// Stop a VM instance
gcloud compute instances stop INSTANCE_NAME --zone ZONE
        
    

Managed Instance Groups:

        
// Create a managed instance group
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \\
    --base-instance-name BASE_INSTANCE_NAME \\
    --size SIZE \\
    --template TEMPLATE \\
    --zone ZONE

// List managed instance groups
gcloud compute instance-groups managed list

// Update the size of a managed instance group
gcloud compute instance-groups managed resize INSTANCE_GROUP_NAME \\
    --size SIZE \\
    --zone ZONE

// Delete a managed instance group
gcloud compute instance-groups managed delete INSTANCE_GROUP_NAME \\
    --zone ZONE
        
    

Storage:

Cloud Storage:

        
// Create a bucket
gsutil mb -p PROJECT_ID -c STORAGE_CLASS -l LOCATION gs://BUCKET_NAME

// List buckets
gsutil ls

// Upload a file to a bucket
gsutil cp LOCAL_FILE_PATH gs://BUCKET_NAME

// Download a file from a bucket
gsutil cp gs://BUCKET_NAME/OBJECT_NAME LOCAL_FILE_PATH

// Delete a bucket
gsutil rm -r gs://BUCKET_NAME
        
    

Cloud SQL:

        
// Create a Cloud SQL instance
gcloud sql instances create INSTANCE_NAME \\
    --database-version DATABASE_VERSION \\
    --tier TIER \\
    --region REGION

// Connect to a Cloud SQL instance
gcloud sql connect INSTANCE_NAME

// List Cloud SQL instances
gcloud sql instances list

// Delete a Cloud SQL instance
gcloud sql instances delete INSTANCE_NAME
        
    

Networking:

Virtual Private Cloud (VPC):

        
// Create a VPC network
gcloud compute networks create NETWORK_NAME

// List VPC networks
gcloud compute networks list

// Create a subnet within a VPC network
gcloud compute networks subnets create SUBNET_NAME \\
    --network NETWORK_NAME \\
    --region REGION \\
    --range RANGE

// List subnets within a VPC network
gcloud compute networks subnets list --network NETWORK_NAME

// Delete a VPC network
gcloud compute networks delete NETWORK_NAME
        
    

Load Balancing:

        
// Create an HTTP(S) load balancer
gcloud compute backend-services create SERVICE_NAME \\
    --global \\
    --protocol PROTOCOL

// Add backend instances to a load balancer
gcloud compute backend-services add-backend SERVICE_NAME \\
    --instance-group INSTANCE_GROUP \\
    --global \\
    --balancing-mode BALANCING_MODE \\
    --max-utilization MAX_UTILIZATION

// List load balancers
gcloud compute backend-services list

// Delete a load balancer
gcloud compute backend-services delete SERVICE_NAME \\
    --global
        
    

Identity and Access Management (IAM):

        
// Grant a role to a user
gcloud projects add-iam-policy-binding PROJECT_ID \\
    --member=USER_EMAIL \\
    --role=ROLE

// List IAM policies
gcloud projects get-iam-policy PROJECT_ID

// Revoke a role from a user
gcloud projects remove-iam-policy-binding PROJECT_ID \\
    --member=USER_EMAIL \\
    --role=ROLE