Bird
Raised Fist0
GCPcloud~30 mins

Instance states (running, stopped, terminated) 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
Instance states (running, stopped, terminated)
📖 Scenario: You are managing virtual machines (instances) in Google Cloud Platform (GCP). Each instance can be in one of three states: running, stopped, or terminated. You want to organize and track these instances by their states.
🎯 Goal: Create a data structure to hold instance names and their states, add a filter to select only running instances, then list those running instances, and finally configure a simple output format to display them.
📋 What You'll Learn
Create a dictionary called instances with exact instance names and states
Add a variable called desired_state set to the string 'running'
Use a list comprehension called running_instances to select instance names with state matching desired_state
Create a final dictionary called output with key 'running_instances' and value running_instances
💡 Why This Matters
🌍 Real World
Cloud administrators often need to track and manage virtual machine states to optimize costs and performance.
💼 Career
Understanding instance states and filtering them programmatically is essential for cloud operations and automation roles.
Progress0 / 4 steps
1
Create the initial instance states dictionary
Create a dictionary called instances with these exact entries: 'vm-1': 'running', 'vm-2': 'stopped', 'vm-3': 'terminated', 'vm-4': 'running'
GCP
Hint

Use curly braces to create a dictionary with keys as instance names and values as their states.

2
Add the desired state variable
Add a variable called desired_state and set it to the string 'running'
GCP
Hint

Assign the string 'running' to the variable desired_state.

3
Select running instances using list comprehension
Create a list comprehension called running_instances that includes instance names from instances where the state equals desired_state
GCP
Hint

Use a list comprehension to filter keys where the value matches desired_state.

4
Create the final output dictionary
Create a dictionary called output with a key 'running_instances' and value running_instances
GCP
Hint

Create a dictionary with the key exactly as 'running_instances' and assign the list running_instances as its value.

Practice

(1/5)
1. What does the RUNNING state of a Google Cloud VM instance indicate?
easy
A. The VM is paused and cannot be restarted
B. The VM is permanently deleted
C. The VM is active and ready to use
D. The VM is being created

Solution

  1. Step 1: Understand VM states

    The RUNNING state means the virtual machine is powered on and operational.
  2. Step 2: Compare with other states

    TERMINATED means stopped but restartable; DELETED means removed permanently.
  3. Final Answer:

    The VM is active and ready to use -> Option C
  4. Quick Check:

    RUNNING = active and ready [OK]
Hint: RUNNING means VM is active and ready [OK]
Common Mistakes:
  • Confusing TERMINATED with RUNNING
  • Thinking DELETED means stopped
  • Assuming RUNNING means VM is paused
2. Which command correctly stops a running Google Cloud VM instance named my-vm using gcloud CLI?
easy
A. gcloud compute instances stop my-vm
B. gcloud compute instances delete my-vm
C. gcloud compute instances terminate my-vm
D. gcloud compute instances suspend my-vm

Solution

  1. Step 1: Identify the correct stop command

    The command to stop a VM is gcloud compute instances stop.
  2. Step 2: Check other commands

    delete removes the VM, terminate is not a valid gcloud command, suspend preserves memory state but is different from stop.
  3. Final Answer:

    gcloud compute instances stop my-vm -> Option A
  4. Quick Check:

    Stop VM = gcloud compute instances stop [OK]
Hint: Use 'stop' to halt VM without deleting [OK]
Common Mistakes:
  • Using delete instead of stop
  • Typing terminate which is invalid
  • Confusing suspend with stop
3. Given this gcloud command output:
NAME    ZONE       STATUS
vm-1    us-central1-a  TERMINATED
vm-2    us-central1-a  RUNNING
vm-3    us-central1-a  TERMINATED

Which VM(s) can be restarted without creating a new instance?
medium
A. Only vm-2
B. vm-1 and vm-3
C. All vm-1, vm-2, and vm-3
D. None of them

Solution

  1. Step 1: Understand TERMINATED state

    TERMINATED means the VM is stopped but can be restarted later.
  2. Step 2: Identify which VMs are TERMINATED

    vm-1 and vm-3 are TERMINATED, so they can be restarted; vm-2 is already RUNNING.
  3. Final Answer:

    vm-1 and vm-3 -> Option B
  4. Quick Check:

    TERMINATED = restartable VMs [OK]
Hint: TERMINATED means stopped but restartable [OK]
Common Mistakes:
  • Thinking RUNNING VMs need restart
  • Assuming TERMINATED means deleted
  • Selecting all VMs regardless of state
4. You tried to restart a VM but got an error saying the instance does not exist. What is the most likely cause?
medium
A. The VM was DELETED and no longer exists
B. The VM is in SUSPENDED state
C. The VM is in TERMINATED state
D. The VM is in RUNNING state

Solution

  1. Step 1: Analyze error message

    Error 'instance does not exist' means the VM resource is gone.
  2. Step 2: Match with VM states

    Only DELETED means the VM is removed permanently; RUNNING, TERMINATED, SUSPENDED still exist.
  3. Final Answer:

    The VM was DELETED and no longer exists -> Option A
  4. Quick Check:

    Deleted VM = does not exist error [OK]
Hint: Deleted VM no longer exists, causing errors [OK]
Common Mistakes:
  • Confusing TERMINATED with DELETED
  • Assuming STOPPED means deleted
  • Ignoring error message meaning
5. You want to save costs by stopping a VM but keep its data and configuration intact for later use. Which state should you put the VM in, and why?
hard
A. RUNNING, because it keeps the VM active and ready
B. SUSPENDED, because it pauses the VM without data loss
C. DELETED, because it frees all resources immediately
D. TERMINATED, because it stops the VM but preserves data and allows restart

Solution

  1. Step 1: Understand cost-saving states

    Stopping a VM saves costs but keeps data if the VM is TERMINATED.
  2. Step 2: Evaluate options

    RUNNING uses full resources; DELETED removes VM and data; SUSPENDED preserves memory but standard stop uses TERMINATED.
  3. Final Answer:

    TERMINATED, because it stops the VM but preserves data and allows restart -> Option D
  4. Quick Check:

    Stop VM = TERMINATED state for cost saving [OK]
Hint: TERMINATED stops VM but keeps data for restart [OK]
Common Mistakes:
  • Choosing RUNNING to save costs
  • Deleting VM to save costs but losing data
  • Choosing SUSPENDED instead of TERMINATED