Bird
Raised Fist0
AWScloud~15 mins

Instance states (running, stopped, terminated) in AWS - 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 cloud servers called instances. Each instance can be in one of three states: running, stopped, or terminated. You want to keep track of these states to manage your cloud resources efficiently.
🎯 Goal: Create a simple data structure to hold instance IDs and their states. Then, add a configuration variable to select which state to filter. Next, write code to find all instances in that selected state. Finally, complete the setup by preparing the filtered list for further management.
📋 What You'll Learn
Create a dictionary named instances with exact instance IDs as keys and their states as values.
Add a variable named selected_state with the value 'running'.
Use a dictionary comprehension named filtered_instances to select instances matching selected_state.
Add a final line to create a list named instance_ids containing only the keys from filtered_instances.
💡 Why This Matters
🌍 Real World
Cloud administrators often need to track and manage instances based on their states to optimize costs and performance.
💼 Career
Understanding instance states and filtering them is a fundamental skill for cloud engineers and DevOps professionals managing AWS resources.
Progress0 / 4 steps
1
Create the initial instance states dictionary
Create a dictionary called instances with these exact entries: 'i-101': 'running', 'i-102': 'stopped', 'i-103': 'terminated', 'i-104': 'running', 'i-105': 'stopped'.
AWS
Hint

Use curly braces to create a dictionary. Each key is an instance ID string, and each value is its state string.

2
Add the selected state variable
Add a variable called selected_state and set it to the string 'running'.
AWS
Hint

Just assign the string 'running' to the variable selected_state.

3
Filter instances by selected state
Use a dictionary comprehension named filtered_instances to select only those instances from instances where the state equals selected_state.
AWS
Hint

Use a dictionary comprehension with for instance_id, state in instances.items() and filter by state == selected_state.

4
Create list of filtered instance IDs
Add a line to create a list called instance_ids that contains only the keys from filtered_instances.
AWS
Hint

Use list(filtered_instances.keys()) to get the list of instance IDs.

Practice

(1/5)
1. Which AWS EC2 instance state means the instance is currently powered on and ready to use?
easy
A. Running
B. Stopped
C. Terminated
D. Pending

Solution

  1. Step 1: Understand EC2 instance states

    Instances can be in states like running, stopped, or terminated, indicating their power and availability status.
  2. Step 2: Identify the state meaning 'powered on'

    The 'running' state means the instance is powered on and ready to use.
  3. Final Answer:

    Running -> Option A
  4. Quick Check:

    Running = Powered On [OK]
Hint: Running means instance is on and usable [OK]
Common Mistakes:
  • Confusing stopped with running
  • Thinking terminated means running
  • Mixing pending with running
2. Which AWS CLI command correctly stops a running EC2 instance with ID i-1234567890abcdef0?
easy
A. aws ec2 terminate-instances --instance-ids i-1234567890abcdef0
B. aws ec2 reboot-instances --instance-ids i-1234567890abcdef0
C. aws ec2 start-instances --instance-ids i-1234567890abcdef0
D. aws ec2 stop-instances --instance-ids i-1234567890abcdef0

Solution

  1. Step 1: Identify command to stop instance

    The command to stop an instance is stop-instances.
  2. Step 2: Match instance ID usage

    The command must include --instance-ids i-1234567890abcdef0 to specify the instance.
  3. Final Answer:

    aws ec2 stop-instances --instance-ids i-1234567890abcdef0 -> Option D
  4. Quick Check:

    Stop instance = stop-instances command [OK]
Hint: Stop instance uses 'stop-instances' command [OK]
Common Mistakes:
  • Using terminate instead of stop
  • Using start instead of stop
  • Using reboot instead of stop
3. What will be the state of an EC2 instance immediately after running this AWS CLI command?
aws ec2 terminate-instances --instance-ids i-0abcdef1234567890
medium
A. Running
B. Stopped
C. Terminated
D. Pending

Solution

  1. Step 1: Understand the terminate-instances command

    This command deletes the instance permanently, changing its state to terminated.
  2. Step 2: Identify the resulting state

    After termination, the instance cannot be started again and is marked as terminated.
  3. Final Answer:

    Terminated -> Option C
  4. Quick Check:

    Terminate command = Terminated state [OK]
Hint: Terminate means instance is deleted permanently [OK]
Common Mistakes:
  • Thinking terminated means stopped
  • Confusing terminate with stop
  • Expecting instance to restart automatically
4. You tried to start an EC2 instance but got an error saying the instance does not exist. What is the most likely cause?
medium
A. The instance is terminated
B. The instance is in running state
C. The instance is in stopped state
D. The instance is pending

Solution

  1. Step 1: Analyze error meaning

    If AWS says the instance does not exist, it usually means it was deleted or terminated.
  2. Step 2: Match instance state to error

    Terminated instances are removed and cannot be started again, causing this error.
  3. Final Answer:

    The instance is terminated -> Option A
  4. Quick Check:

    Instance not found = Terminated state [OK]
Hint: Instance not found means terminated, not stopped [OK]
Common Mistakes:
  • Assuming stopped means instance missing
  • Confusing running with missing
  • Ignoring termination possibility
5. You want to save costs by stopping an EC2 instance but keep its data intact for later use. Which instance state should you use and why?
hard
A. Terminate, because it deletes the instance and saves all costs
B. Stop, because it powers off the instance but keeps data on the disk
C. Running, because it keeps the instance active and data safe
D. Pending, because it prepares the instance for shutdown

Solution

  1. Step 1: Understand cost and data retention

    Stopping an instance powers it off but keeps the attached storage intact, preserving data.
  2. Step 2: Compare with termination

    Terminating deletes the instance and storage, losing data and cannot be restarted.
  3. Step 3: Choose correct state for saving costs and keeping data

    Stopping is the correct choice to save costs while keeping data safe.
  4. Final Answer:

    Stop, because it powers off the instance but keeps data on the disk -> Option B
  5. Quick Check:

    Stop = Save cost + keep data [OK]
Hint: Stop to save cost and keep data intact [OK]
Common Mistakes:
  • Choosing terminate and losing data
  • Thinking running saves cost
  • Confusing pending with stop