Bird
Raised Fist0
GCPcloud~10 mins

Boot disk images in GCP - Interactive Code Practice

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
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to specify the boot disk image for a new VM instance.

GCP
gcloud compute instances create my-instance --image [1]
Drag options to blanks, or click blank then click option'
Adebian-11-bullseye-v20230606
Bmy-custom-image
Cwindows-server-2019-dc-v20230606
Dubuntu-2004-focal-v20230606
Attempts:
3 left
💡 Hint
Common Mistakes
Using a custom image name without creating it first
Using an OS name without the version or date suffix
2fill in blank
medium

Complete the code to create a boot disk from a custom image in a specific project.

GCP
gcloud compute disks create my-boot-disk --image [1] --image-project my-project
Drag options to blanks, or click blank then click option'
Adebian-11-bullseye-v20230606
Bwindows-server-2019-dc-v20230606
Ccustom-image-123
Dubuntu-2004-focal-v20230606
Attempts:
3 left
💡 Hint
Common Mistakes
Using a public image name when a custom image is required
Omitting the --image-project flag when using a custom image from another project
3fill in blank
hard

Fix the error in the command to create a VM with a boot disk image.

GCP
gcloud compute instances create vm-1 --boot-disk-image [1]
Drag options to blanks, or click blank then click option'
Adebian-11-bullseye-v20230606
B--image=debian-11-bullseye-v20230606
Cdebian-11-bullseye
Dimage=debian-11-bullseye-v20230606
Attempts:
3 left
💡 Hint
Common Mistakes
Including the flag name inside the blank
Using incomplete image names
4fill in blank
hard

Fill both blanks to create a VM instance with a boot disk from a specific image and project.

GCP
gcloud compute instances create vm-2 --image [1] --image-project [2]
Drag options to blanks, or click blank then click option'
Acustom-image-456
Bdebian-cloud
Cmy-project-123
Dubuntu-cloud
Attempts:
3 left
💡 Hint
Common Mistakes
Using public image project names with custom images
Swapping image name and project ID
5fill in blank
hard

Fill all three blanks to create a boot disk and specify the disk type.

GCP
gcloud compute disks create [1] --image [2] --type [3]
Drag options to blanks, or click blank then click option'
Aboot-disk-1
Bdebian-11-bullseye-v20230606
Cpd-ssd
Dpd-standard
Attempts:
3 left
💡 Hint
Common Mistakes
Using disk type names incorrectly
Mixing disk name with image name

Practice

(1/5)
1. What is the main purpose of a boot disk image in Google Cloud Platform (GCP)?
easy
A. It stores user data separately from the VM.
B. It provides the operating system for a virtual machine (VM).
C. It manages network traffic for the VM.
D. It controls billing and usage reports.

Solution

  1. Step 1: Understand the role of boot disk images

    Boot disk images contain the operating system that a VM uses to start and run.
  2. Step 2: Identify the correct function in GCP context

    In GCP, the boot disk image is the source of the OS for the VM instance.
  3. Final Answer:

    It provides the operating system for a virtual machine (VM). -> Option B
  4. Quick Check:

    Boot disk image = OS provider [OK]
Hint: Boot disk image = OS for VM startup [OK]
Common Mistakes:
  • Confusing boot disk image with data disk
  • Thinking it manages network or billing
  • Assuming it stores user files
2. Which of the following is the correct command to list all available public boot disk images in GCP using gcloud CLI?
easy
A. gcloud compute images list --project=debian-cloud
B. gcloud compute instances list --images
C. gcloud compute disks list --public
D. gcloud compute images list --public

Solution

  1. Step 1: Recall the correct gcloud command for listing images

    The command to list images uses 'gcloud compute images list' with a project filter for public images.
  2. Step 2: Identify the public image project

    Public images like Debian are under projects such as 'debian-cloud'. So filtering by --project=debian-cloud lists those images.
  3. Final Answer:

    gcloud compute images list --project=debian-cloud -> Option A
  4. Quick Check:

    List images by project = gcloud compute images list --project=debian-cloud [OK]
Hint: Use --project with public image project name [OK]
Common Mistakes:
  • Using --public flag which does not exist
  • Listing disks instead of images
  • Listing instances instead of images
3. Consider this snippet to create a VM with a boot disk image:
gcloud compute instances create my-vm \
--image-family=ubuntu-2204-lts \
--image-project=ubuntu-os-cloud

What OS will the VM run?
medium
A. Debian 10
B. CentOS 7
C. Ubuntu 22.04 LTS
D. Windows Server 2019

Solution

  1. Step 1: Analyze the image family and project

    The image family 'ubuntu-2204-lts' in project 'ubuntu-os-cloud' refers to Ubuntu 22.04 Long Term Support.
  2. Step 2: Match image family to OS version

    Ubuntu 22.04 LTS is the latest stable Ubuntu release matching the image family name.
  3. Final Answer:

    Ubuntu 22.04 LTS -> Option C
  4. Quick Check:

    Image family ubuntu-2204-lts = Ubuntu 22.04 LTS [OK]
Hint: Image family name shows OS version clearly [OK]
Common Mistakes:
  • Confusing Ubuntu with Debian or CentOS
  • Ignoring image-project parameter
  • Assuming Windows from Linux image family
4. You tried to create a VM with this command:
gcloud compute instances create test-vm \
--image-family=centos-7 \
--image-project=centos-cloud \
--boot-disk-size=5GB

The command fails with an error about disk size. What is the likely cause?
medium
A. The VM name 'test-vm' is invalid.
B. The image family name is incorrect.
C. The project name 'centos-cloud' does not exist.
D. The boot disk size is too small for the CentOS 7 image.

Solution

  1. Step 1: Understand boot disk size requirements

    CentOS 7 images require a minimum boot disk size larger than 5GB, usually 10GB or more.
  2. Step 2: Check command parameters

    The image family and project are correct, and VM name is valid, so the error is due to insufficient disk size.
  3. Final Answer:

    The boot disk size is too small for the CentOS 7 image. -> Option D
  4. Quick Check:

    Disk size too small causes boot failure [OK]
Hint: Check minimum disk size for image before creating VM [OK]
Common Mistakes:
  • Assuming image family or project is wrong
  • Ignoring disk size minimum requirements
  • Thinking VM name causes disk size error
5. You want to create a custom boot disk image from an existing VM's disk to use for multiple new VMs. Which steps should you follow?
hard
A. Create a snapshot of the VM's boot disk, then create an image from the snapshot.
B. Directly copy the VM instance to create new VMs without images.
C. Export the VM's disk to a local file, then upload it as an image.
D. Create a new VM and select the existing VM's disk as boot disk.

Solution

  1. Step 1: Create a snapshot of the existing VM's boot disk

    This captures the current state of the disk safely and efficiently.
  2. Step 2: Create a custom image from the snapshot

    Using the snapshot, you create a reusable boot disk image for new VMs.
  3. Final Answer:

    Create a snapshot of the VM's boot disk, then create an image from the snapshot. -> Option A
  4. Quick Check:

    Snapshot then image = reusable boot disk [OK]
Hint: Snapshot first, then create image for reuse [OK]
Common Mistakes:
  • Trying to copy VM directly without image
  • Exporting disk unnecessarily
  • Using existing disk directly for new VMs