Bird
Raised Fist0
AWScloud~20 mins

Amazon Machine Images (AMIs) in AWS - Practice Problems & Coding Challenges

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
Challenge - 5 Problems
🎖️
AMI Mastery Badge
Get all challenges correct to earn this badge!
Test your skills under time pressure!
service_behavior
intermediate
2:00remaining
What happens when you deregister an AMI?

You have an AMI registered in your AWS account. You decide to deregister it. What is the immediate effect on instances launched from this AMI?

AExisting instances launched from the AMI continue running normally, but you cannot launch new instances from it.
BAll existing instances launched from the AMI are terminated immediately.
CThe AMI is deleted and all snapshots associated with it are also deleted immediately.
DYou can still launch new instances from the AMI for 24 hours after deregistration.
Attempts:
2 left
💡 Hint

Think about what deregistering an AMI means for existing and new instances.

Architecture
intermediate
2:00remaining
Choosing AMI for a multi-region deployment

You want to deploy an application in two AWS regions. You have a custom AMI in region A. What is the best way to use this AMI in region B?

ALaunch instances in region B using the AMI ID from region A directly.
BCreate a new AMI in region B by launching an instance and creating an AMI from it.
CCopy the AMI from region A to region B before launching instances.
DUse the public AMI with the same name in region B.
Attempts:
2 left
💡 Hint

AMIs are region-specific. Think about how to make an AMI available in another region.

security
advanced
2:00remaining
Securing AMI sharing with other AWS accounts

You want to share a private AMI with another AWS account securely. Which option ensures the AMI is shared but the underlying snapshots remain private?

AExport the AMI and send it as a file to the other account.
BModify the AMI launch permissions to include the other account, but do not modify snapshot permissions.
CCreate a public AMI so anyone can launch instances from it.
DShare the AMI and also share the snapshots with the other account explicitly.
Attempts:
2 left
💡 Hint

Think about what resources are needed to launch an instance from a shared AMI.

Best Practice
advanced
2:00remaining
Automating AMI creation with minimal downtime

You want to automate creating updated AMIs of your application servers daily with minimal downtime. Which approach is best?

AManually create AMIs from instances during off-hours.
BUse AWS Systems Manager Automation to create AMIs from running instances without stopping them.
CCreate AMIs only from stopped instances to ensure data consistency.
DStop the instance, create an AMI, then start the instance again every day.
Attempts:
2 left
💡 Hint

Consider how to create AMIs without stopping instances to avoid downtime.

🧠 Conceptual
expert
2:00remaining
Understanding AMI lifecycle and snapshot dependencies

You deregister an AMI but keep its snapshots. Later, you create a new AMI using those snapshots. What is the impact on instance launch and storage costs?

AYou can launch instances from the new AMI, and storage costs continue for snapshots until deleted.
BYou cannot launch instances from the new AMI because snapshots are orphaned.
CInstances launched from the new AMI will be free of storage costs for snapshots.
DStorage costs stop immediately after deregistering the original AMI.
Attempts:
2 left
💡 Hint

Think about how snapshots relate to AMIs and billing.

Practice

(1/5)
1. What is the main purpose of an Amazon Machine Image (AMI)?
easy
A. To monitor server performance
B. To store user data in the cloud
C. To save a server setup so it can be reused later
D. To manage network traffic

Solution

  1. Step 1: Understand what an AMI represents

    An AMI is a snapshot of a server's setup including its software and settings.
  2. Step 2: Identify the main use of AMIs

    AMIs allow you to reuse this saved setup to launch new servers quickly.
  3. Final Answer:

    To save a server setup so it can be reused later -> Option C
  4. Quick Check:

    AMI = reusable server setup [OK]
Hint: AMI saves server setup for reuse [OK]
Common Mistakes:
  • Confusing AMI with data storage
  • Thinking AMI monitors performance
  • Assuming AMI manages network
2. Which AWS CLI command correctly creates an AMI from a running instance with ID i-1234567890abcdef0?
easy
A. aws ec2 start-image --instance i-1234567890abcdef0 --name MyServerImage
B. aws ec2 launch-image --instance-id i-1234567890abcdef0 --name MyServerImage
C. aws ec2 make-ami --id i-1234567890abcdef0 --image-name MyServerImage
D. aws ec2 create-image --instance-id i-1234567890abcdef0 --name MyServerImage

Solution

  1. Step 1: Identify the correct AWS CLI command for creating an AMI

    The correct command is aws ec2 create-image with the instance ID and a name.
  2. Step 2: Match the command syntax with the options

    aws ec2 create-image --instance-id i-1234567890abcdef0 --name MyServerImage uses the correct command and parameters.
  3. Final Answer:

    aws ec2 create-image --instance-id i-1234567890abcdef0 --name MyServerImage -> Option D
  4. Quick Check:

    create-image + instance-id = create AMI [OK]
Hint: Use 'create-image' with instance ID to make AMI [OK]
Common Mistakes:
  • Using wrong command like start-image or launch-image
  • Mixing up parameter names
  • Omitting instance ID
3. You run this AWS CLI command:
aws ec2 create-image --instance-id i-0abc123def456 --name TestImage
What will be the immediate result?
medium
A. An AMI creation request is started; image becomes available after processing
B. The instance is stopped and then an AMI is created
C. A new AMI is created and available instantly
D. The command fails because instance ID is invalid

Solution

  1. Step 1: Understand the behavior of create-image command

    The command starts the AMI creation process but the image is not instantly ready.
  2. Step 2: Identify the correct immediate result

    The AMI creation runs in background; the image becomes available after some time.
  3. Final Answer:

    An AMI creation request is started; image becomes available after processing -> Option A
  4. Quick Check:

    AMI creation is asynchronous [OK]
Hint: AMI creation takes time; not instant [OK]
Common Mistakes:
  • Assuming AMI is ready immediately
  • Thinking instance stops automatically
  • Believing command fails without error
4. You tried to create an AMI with this command:
aws ec2 create-image --instance i-0abc123def456 --name MyImage
But it failed. What is the error?
medium
A. Instance ID format is incorrect
B. Missing required parameter --instance-id
C. AMI name is invalid
D. You cannot create AMI from a running instance

Solution

  1. Step 1: Check the command parameters

    The command uses --instance instead of the required --instance-id parameter.
  2. Step 2: Identify the cause of failure

    The AWS CLI expects --instance-id to specify the instance; missing this causes failure.
  3. Final Answer:

    Missing required parameter --instance-id -> Option B
  4. Quick Check:

    Use --instance-id to specify instance [OK]
Hint: Use --instance-id, not --instance [OK]
Common Mistakes:
  • Using wrong parameter name
  • Assuming instance ID format error
  • Thinking AMI can't be made from running instance
5. You want to launch multiple identical servers quickly using an AMI. Which steps should you follow?
hard
A. Create an AMI from a configured instance, then launch new instances using that AMI
B. Launch new instances, then manually configure each one separately
C. Create snapshots of volumes, then attach them to new instances
D. Use AWS Lambda to copy instance settings to new servers

Solution

  1. Step 1: Understand how to reuse server setups

    Creating an AMI from a configured instance saves its setup for reuse.
  2. Step 2: Use the AMI to launch new instances

    Launching new servers from the AMI ensures they have the same software and settings quickly.
  3. Final Answer:

    Create an AMI from a configured instance, then launch new instances using that AMI -> Option A
  4. Quick Check:

    AMI enables fast identical server launches [OK]
Hint: Create AMI first, then launch servers from it [OK]
Common Mistakes:
  • Configuring each server manually
  • Using snapshots instead of AMIs for full setup
  • Thinking AWS Lambda copies server setups