Bird
Raised Fist0
GCPcloud~10 mins

Boot disk images in GCP - Step-by-Step Execution

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
Process Flow - Boot disk images
Select Boot Disk Image
Create VM Instance
Attach Boot Disk with Image
Start VM
VM boots using Disk Image
VM Ready for Use
This flow shows how a virtual machine (VM) boots using a selected boot disk image in Google Cloud Platform.
Execution Sample
GCP
gcloud compute instances create my-vm \
  --image-family=debian-11 \
  --image-project=debian-cloud \
  --boot-disk-size=10GB
This command creates a VM named 'my-vm' using the Debian 11 boot disk image with a 10GB boot disk.
Process Table
StepActionInput/ParameterResult/State
1Select boot disk imageimage-family=debian-11, image-project=debian-cloudImage Debian 11 selected
2Create VM instancename=my-vmVM instance 'my-vm' created
3Attach boot diskboot-disk-size=10GBBoot disk of 10GB attached with Debian 11 image
4Start VMnoneVM 'my-vm' starts booting
5VM bootsboot disk imageVM boots successfully using Debian 11 image
6VM readynoneVM 'my-vm' is ready for use
💡 VM boots successfully using the selected boot disk image and is ready for use
Status Tracker
VariableStartAfter Step 1After Step 3After Step 5Final
boot_disk_imagenonedebian-11 from debian-cloudattached to VMused to boot VMin use by running VM
vm_instancenonenonecreated as 'my-vm'bootingrunning and ready
Key Moments - 3 Insights
Why do we specify both image-family and image-project when selecting a boot disk image?
Because image-family selects the latest image in that family, and image-project tells GCP where to find that image. This is shown in execution_table row 1.
What happens if the boot disk size is too small?
The VM creation will fail or the VM may not boot properly because the disk cannot hold the OS image. This relates to execution_table row 3 where the boot disk is attached.
Does the VM start automatically after creation?
Yes, by default the VM starts after creation as shown in execution_table row 4 and 5.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution table, what is the boot disk image selected at step 1?
Aubuntu-20-04 from ubuntu-cloud
Bwindows-server-2019 from windows-cloud
Cdebian-11 from debian-cloud
Dcentos-7 from centos-cloud
💡 Hint
Check the 'Action' and 'Result/State' columns in row 1 of the execution_table.
At which step does the VM instance get created?
AStep 2
BStep 1
CStep 3
DStep 4
💡 Hint
Look at the 'Action' column for VM creation in the execution_table.
If the boot disk size was changed to 5GB, which step would be directly affected?
AStep 1
BStep 3
CStep 2
DStep 5
💡 Hint
Refer to the 'Attach boot disk' action in the execution_table.
Concept Snapshot
Boot disk images in GCP are used to start VMs.
You select an image family and project to pick the OS.
Create a VM and attach a boot disk with that image.
The VM boots from this disk and becomes ready.
Boot disk size must be enough for the OS.
Use gcloud commands with --image-family and --image-project.
Full Transcript
Boot disk images are pre-made operating system disks used to start virtual machines in Google Cloud Platform. The process begins by selecting an image family and project, which tells GCP which OS version to use. Then, a VM instance is created with a boot disk attached that contains this image. When the VM starts, it boots from this disk image and becomes ready for use. The boot disk size must be sufficient to hold the OS. The example command shows creating a VM named 'my-vm' using the Debian 11 image with a 10GB boot disk. The execution table traces each step from image selection to VM readiness, and the variable tracker shows how the boot disk image and VM instance states change over time.

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