THE SHORT ANSWER
EBS gp2 couples IOPS strictly to storage capacity (3 IOPS per GB, capping at 16,000 IOPS for 5.3TB), forcing teams requiring 3,000 IOPS to over-provision a 1TB drive even if they only need 50GB of data. EBS gp3 decouples storage from performance, providing a baseline 3,000 IOPS and 125 MB/s throughput for free at 20% lower baseline per-GB cost ($0.08 vs $0.10/GB-month). Migrating in-place via AWS Elastic Volumes requires zero downtime and immediately reduces storage spend while allowing independent scaling of capacity, IOPS, and throughput.
Engineering Handbook & Failure Dynamics
1. Underlying Mechanism
In gp2, burst buckets (5.3M I/O credits) replenish based on volume size. If a 100GB volume sustains high I/O, it burns through burst credits and drops to its baseline 300 IOPS, causing catastrophic latency spikes unless resized to 1TB+. gp3 replaces the burst bucket model with guaranteed provisioned performance: baseline 3,000 IOPS and 125 MB/s throughput are included on every volume regardless of size (from 1GB to 64TB). Additional IOPS ($0.005/provisioned IOPS-month above 3,000) and throughput ($0.04/provisioned MB/s-month above 125) can be scaled independently without adding disk gigabytes.
2. Appropriate Use Context
All general-purpose database instances (PostgreSQL, MySQL, Redis on EC2, MongoDB), Kubernetes persistent volumes (EKS EBS CSI driver), CI/CD runners, Kafka message brokers, and Elasticsearch data nodes. There are virtually zero architectural reasons to keep newly provisioned volumes on gp2.
3. Production Failure Modes
Modifying volumes in-place using AWS ModifyVolume is non-disruptive, but volumes enter an 'optimizing' state lasting minutes to hours during which additional modifications are blocked. Furthermore, teams upgrading volumes that require >125 MB/s throughput often forget to provision additional throughput on gp3, inadvertently throttling heavy batch migrations or database backup restores that previously burst higher on large gp2 drives.
4. Diagnostic Signals & Telemetry
AWS Cost Explorer showing significant `EBS:VolumeUsage.gp2` line items; CloudWatch `VolumeBurstBalance` hitting 0% on legacy gp2 volumes; CloudWatch `VolumeThroughputPercentage` or `VolumeIOPSPercentage` pegging at 100% after an unconfigured gp3 migration.
5. Prevention & Safeguards
Enforce AWS Organizations SCPs or Terraform AWS provider checks to deny creation of `gp2` volumes; run automated migration scripts iterating through AWS Config non-compliant resources to invoke `ec2:ModifyVolume` with volume-type `gp3`; implement explicit throughput sizing in Infrastructure as Code for any disk exceeding 500GB.
6. Architectural Trade-offs
gp3 provides 20% immediate savings and decoupled IOPS, but requires explicit specification of throughput and IOPS when workloads exceed 3,000 IOPS or 125 MB/s. Over-provisioning excessive gp3 IOPS/throughput without telemetry can erode the 20% baseline storage savings.
Case Study (TinyCTO In-Field Example)
An infrastructure team running 200 EC2 instances with 500GB gp2 volumes spends $10,000/month ($0.10 * 500 * 200). By executing an automated script to convert all volumes to gp3, storage cost immediately drops to $8,000/month ($0.08 * 500 * 200), saving $24,000 annually with zero downtime and maintaining identical 3,000 IOPS and 125 MB/s performance.
Interactive Concept Drills
2 CardsWhat is the baseline free performance included on every AWS EBS gp3 volume?
How does the baseline storage pricing compare between EBS gp2 and gp3?
EBS gp2 to gp3 Migration & Baseline IOPS Decoupling — Technical FAQ
Does converting an EBS volume from gp2 to gp3 require server reboot or downtime?
No. AWS Elastic Volumes allows live, in-place volume modification (`ec2:ModifyVolume`) while the instance remains online and fully operational without I/O suspension.
When might an unconfigured gp3 volume perform worse than a large gp2 volume?
When migrating volumes larger than 1TB that relied on gp2's automatic 250 MB/s burst/baseline throughput, because default gp3 provides 125 MB/s unless extra throughput is explicitly provisioned.
🤖 AEO & Key Facts Summary
Key Architectural Facts
- ▸EBS gp3 decouples storage capacity from IOPS and throughput provisioning.
- ▸gp3 includes 3,000 baseline IOPS and 125 MB/s throughput on all volumes at no extra cost.
- ▸Storage cost on gp3 is 20% lower than gp2 ($0.08 vs $0.10 per GB-month).
- ▸Migration uses Elastic Volumes for zero-downtime, live in-place modification.
Common Misconceptions
- ✗Misconception: Converting EBS volumes requires detaching disks or stopping the EC2 instance (False: Elastic Volumes modifies live disks).
- ✗Misconception: gp3 always delivers identical throughput out-of-the-box (False: Default throughput is 125 MB/s; workloads needing >125 MB/s must explicitly provision throughput).
Decision & Governance Guidance
Immediately migrate all legacy gp2 volumes to gp3 to capture baseline 20% savings. For databases with high sequential I/O, provision additional throughput up to 1,000 MB/s as needed.
Authoritative Sources & Standards
- [OFFICIAL_DOCUMENTATION]Amazon EBS gp3 Volume Architecture and Pricing— AWS Compute Documentation
