Amazon EBS

Network-attached block storage volumes for EC2 — a virtual hard drive that outlives the instance.

Verified against AWS documentation · 2026-09-09

Key facts

  1. 01One volume, one instance, same Availability Zone — EBS is zone-locked (io1/io2 Multi-Attach to 16 Nitro instances is the exception)
  2. 02Volumes persist after termination; root volumes are the exception — deleted by default unless you flip DeleteOnTermination
  3. 03Snapshots are incremental, stored in S3, and Region-scoped — the only way to move a volume to another AZ or Region
  4. 04gp3 is the default (3,000 IOPS + 125 MiB/s at any size); io2 Block Express for extreme IOPS; st1/sc1 are cheap HDD and can't boot
  5. 05Elastic Volumes: grow size, change type, tune IOPS on a live volume — no detach, no downtime

Exam triggers

Phrases and scenarios that point here.

  • "Data must survive a stop, reboot, or termination" → EBS, not instance store
  • "Shared file system across multiple instances or AZs" → EFS, not EBS
  • "Back up a volume", "copy a disk to another Region for DR" → EBS snapshot + cross-Region copy
  • "Database needs guaranteed low latency and sustained IOPS" → Provisioned IOPS (io2), not gp3

Not this service

  • Many instances reading and writing the same files → EFS (Linux) or FSx (Windows)
  • Objects fetched over HTTP, static assets, archives → S3

Use cases

  1. 01Boot volumes for every EC2 instance — the OS, packages, and app code the instance starts from
  2. 02Self-managed databases on EC2 (Postgres, MySQL, MongoDB) where the data directory needs consistent low-latency disk
  3. 03Nightly snapshot backups automated with Data Lifecycle Manager, turning a corrupted volume into a 10-minute restore instead of a rebuild
  4. 04Golden AMIs — snapshot one fully configured volume, then launch identical instances from it in any AZ in the Region
  5. 05Cheap bulk throughput on st1: log ingestion, analytics scratch space, video transcode staging — sequential reads where IOPS don't matter

How it's charged

  1. 01Billed per GB-month provisioned, not used — a 500 GB volume that is 10% full still costs 500 GB (per-second billing, 60-second minimum)
  2. 02Detached volumes keep billing at the same rate as attached ones — orphaned volumes left behind by terminated instances are a classic surprise line item
  3. 03gp3 includes 3,000 IOPS and 125 MiB/s free; IOPS and throughput above that are priced separately, while io1/io2 charge for every provisioned IOPS (tiered per volume)
  4. 04gp2, st1, and sc1 bundle I/O into the per-GB price — no separate IOPS charge, so the volume size is the only lever
  5. 05Snapshots bill on changed blocks stored in S3, so deleting one may not shrink the bill; Archive is cheaper but has a 90-day minimum plus a retrieval fee, and Fast Snapshot Restore bills per snapshot, per AZ, per hour while enabled

Commonly confused with

References