EBS
An EBS (Elastic Block Store) Volume is a network drive you can attach to your instances while they run
It uses the network to communicate the instance, which means there might be a bit of latency
It can be detached from an EC2 instance and attached to another one quickly
They are bound to a specific availability zone
An EBS Volume in us-east-1a cannot be attached to us-east-1b
To move a volume across, you first need to snapshot it
Have a provisioned capacity (size in GBs, and IOPS)
You get billed for all the provisioned capacity, although you can increase over time.
EC2 Instance Store
EBS volumes are network drives with good but “limited” performance
EC2 Instance Store has better performance and IOPS then EBS
EC2 Instance Store lose their storage if they’re stopped (ephemeral)
Good for buffer / cache / scratch data / temporary content
Risk of data loss if hardware fails, ( Backup, Replication are your duty )
EBS Volume Types
gp2 / gp3 (SSD): General purpose SSD volume that balances price and performance for a wide variety of workloads
io1 / io2 (SSD): Highest-performance SSD volume for mission-critical low-latency or high-throughput workloads
st1 (HDD): Low cost HDD volume designed for frequently accessed, throughput-intensive workloads
sc1 (HDD): Lowest cost HDD volume designed for less frequently accessed workloads
Only gp2/gp3 and io1/io2 can be used as boot volumes
General Purpose SSD
1 GiB - 16 TiB
Can increase IOPS up to 16,000 and throughput up to 1000 MiB/s
Provisioned IOPS (PIOPS) SSD
Critical business applications with sustained IOPS performance
applications that need more than 16,000 IOPS
Max PIOPS: 64,000 for Nitro EC2 instances & 32,000 for other
Supports EBS Multi-attach