Bird
Raised Fist0
GCPcloud~20 mins

Compute commands (instances, disks) in GCP - Mini Project: Build & Apply

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Manage Compute Instances and Disks with GCP Commands
📖 Scenario: You are managing virtual machines and storage disks in Google Cloud Platform (GCP) for a small project. You need to create instances and disks, configure them, and attach disks to instances using GCP command-line tools.
🎯 Goal: Learn to use GCP gcloud compute commands to create instances and disks, configure disk size, and attach disks to instances.
📋 What You'll Learn
Create a compute instance named web-server in zone us-central1-a
Create a persistent disk named web-disk with size 100GB in zone us-central1-a
Attach the disk web-disk to the instance web-server
Use exact command syntax with gcloud compute instances and gcloud compute disks
💡 Why This Matters
🌍 Real World
Managing virtual machines and storage disks is a common task in cloud infrastructure to run applications and store data.
💼 Career
Cloud engineers and system administrators use these commands daily to provision and manage resources in Google Cloud Platform.
Progress0 / 4 steps
1
Create a Compute Instance
Use the gcloud compute instances create command to create an instance named web-server in zone us-central1-a.
GCP
Hint

Use gcloud compute instances create INSTANCE_NAME --zone=ZONE format.

2
Create a Persistent Disk
Use the gcloud compute disks create command to create a persistent disk named web-disk with size 100GB in zone us-central1-a.
GCP
Hint

Use gcloud compute disks create DISK_NAME --size=SIZE --zone=ZONE.

3
Attach Disk to Instance
Use the gcloud compute instances attach-disk command to attach the disk web-disk to the instance web-server in zone us-central1-a.
GCP
Hint

Use gcloud compute instances attach-disk INSTANCE_NAME --disk=DISK_NAME --zone=ZONE.

4
Verify Instance and Disk Setup
Add the command to list all instances in zone us-central1-a to verify the instance web-server is created and the disk is attached.
GCP
Hint

Use gcloud compute instances list --zones=ZONE to see instances in a zone.

Practice

(1/5)
1. What does the command gcloud compute instances list do?
easy
A. It shows all virtual machines in your project.
B. It creates a new virtual machine.
C. It deletes a virtual machine.
D. It attaches a disk to a virtual machine.

Solution

  1. Step 1: Understand the command purpose

    The command gcloud compute instances list is used to display existing virtual machines in your project.
  2. Step 2: Compare with other options

    Creating, deleting, or attaching disks require different commands, not this one.
  3. Final Answer:

    It shows all virtual machines in your project. -> Option A
  4. Quick Check:

    List instances = show VMs [OK]
Hint: List commands show current resources, not create or delete [OK]
Common Mistakes:
  • Confusing list with create or delete commands
  • Not specifying resource type
  • Assuming it modifies resources
2. Which of the following is the correct syntax to create a new VM instance named web-server in zone us-central1-a?
easy
A. gcloud instances create web-server --zone=us-central1-a
B. gcloud create instance web-server zone us-central1-a
C. gcloud compute instances create web-server --zone=us-central1-a
D. gcloud compute create instance web-server --zone us-central1-a

Solution

  1. Step 1: Identify correct command structure

    The correct command starts with gcloud compute instances create followed by the instance name and zone flag.
  2. Step 2: Check option syntax

    gcloud compute instances create web-server --zone=us-central1-a matches the correct syntax exactly with proper flags and order.
  3. Final Answer:

    gcloud compute instances create web-server --zone=us-central1-a -> Option C
  4. Quick Check:

    Create instance syntax = gcloud compute instances create web-server --zone=us-central1-a [OK]
Hint: Remember: 'gcloud compute instances create' + name + --zone [OK]
Common Mistakes:
  • Mixing order of words in command
  • Omitting 'compute' or 'instances'
  • Using wrong flag format
3. What will be the output of the command gcloud compute disks list --filter="zone:(us-central1-a)" if there are two disks named disk1 and disk2 in zone us-central1-a and one disk named disk3 in zone us-east1-b?
medium
A. Lists disk1, disk2, and disk3
B. Shows an error due to filter syntax
C. Lists only disk3
D. Lists only disk1 and disk2

Solution

  1. Step 1: Understand the filter usage

    The filter limits results to disks in zone us-central1-a only.
  2. Step 2: Apply filter to disk list

    Disks disk1 and disk2 are in us-central1-a, so they appear; disk3 is in a different zone and is excluded.
  3. Final Answer:

    Lists only disk1 and disk2 -> Option D
  4. Quick Check:

    Filter by zone shows matching disks only [OK]
Hint: Filter narrows results to matching zone disks only [OK]
Common Mistakes:
  • Assuming filter includes all disks
  • Misreading filter syntax
  • Expecting syntax error incorrectly
4. You run gcloud compute instances delete my-vm but get an error saying the zone is missing. What is the best fix?
medium
A. Add --project=PROJECT_ID flag instead.
B. Add the flag --zone=ZONE_NAME with the correct zone.
C. Run the command without any flags again.
D. Use gcloud delete instances my-vm instead.

Solution

  1. Step 1: Identify missing required parameter

    The error indicates the zone is not specified, which is required to delete an instance.
  2. Step 2: Correct the command by adding zone

    Adding --zone=ZONE_NAME specifies the location of the instance to delete.
  3. Final Answer:

    Add the flag --zone=ZONE_NAME with the correct zone. -> Option B
  4. Quick Check:

    Zone flag required for instance delete [OK]
Hint: Always specify zone when deleting or managing instances [OK]
Common Mistakes:
  • Ignoring zone requirement
  • Using wrong command syntax
  • Assuming project flag fixes zone error
5. You want to create a new persistent disk named data-disk of size 100GB in zone europe-west1-b and attach it to an existing instance app-server. Which sequence of commands is correct?
hard
A. 1) gcloud compute disks create data-disk --size=100GB --zone=europe-west1-b
2) gcloud compute instances attach-disk app-server --disk=data-disk --zone=europe-west1-b
B. 1) gcloud compute instances attach-disk app-server --disk=data-disk --zone=europe-west1-b
2) gcloud compute disks create data-disk --size=100GB --zone=europe-west1-b
C. 1) gcloud compute disks create data-disk --zone=europe-west1-b
2) gcloud compute instances attach-disk app-server --disk=data-disk
D. 1) gcloud compute disks create data-disk --size=100 --zone=europe-west1-b
2) gcloud compute instances attach-disk app-server --disk=data-disk --zone=europe-west1-b

Solution

  1. Step 1: Create the disk first with correct size and zone

    The disk must be created before attaching. 1) gcloud compute disks create data-disk --size=100GB --zone=europe-west1-b
    2) gcloud compute instances attach-disk app-server --disk=data-disk --zone=europe-west1-b uses correct size format '100GB' and specifies zone.
  2. Step 2: Attach the created disk to the instance with zone specified

    Attaching requires the disk and instance zone flags; 1) gcloud compute disks create data-disk --size=100GB --zone=europe-west1-b
    2) gcloud compute instances attach-disk app-server --disk=data-disk --zone=europe-west1-b includes these correctly.
  3. Final Answer:

    First create disk with size and zone, then attach with disk and zone flags. -> Option A
  4. Quick Check:

    Create disk before attach, specify size with GB [OK]
Hint: Create disk before attach; size needs units like GB [OK]
Common Mistakes:
  • Attaching disk before creating it
  • Omitting size units (GB)
  • Missing zone flags on commands