AWS: EBS at a Glance

Mar 26, 2019

Share this post

Elastic Block Store- EBS

Volume Types

4 volume types

SSD – Solid State Drive

HDD – Hard Disk Drive

General Purpose – gp2

Provisioned IOPS – io1

Throughput Optimized HDD – st1

Cold HDD – sc1

Size 1GB – 16TB Size 4GB – 16TB Size 4GB – 16TB Size 4GB – 16TB
Max IOPS 16000 Max IOPS 64000 – For Nitro
32000 – For  All other
Max IOPS 500 Max IOPS 250
Max Throughput 250 MiB/s Max Throughput Max Throughput 500 MiB/s Max Throughput 250 MiB/s
MiBs/GB MiBs/GB MiBs/GB 40 MiBs/GB 12
Use Cases: transactional, IOPS-intensive database workloads, boot volumes, and workloads that require high IOPS Use Cases: throughput-intensive and big-data workloads, large I/O sizes, and sequential I/O patterns.
Note: 5333 GB will give max IOPS, adding more space to volume does not help you in terms of IOPS Note: We can Assign IOPS manually as per volume’s GB, however not more than 50 IOPS/GB rate.


Scope in terms of Region and AZ
 – Snapshots can be copied within or to other regions.
– Using a snapshot, volumes can be created in any AZ within the same region as of Snapshot.


Scope in terms of Region and AZ
 – Volumes are locked to specific to an AZ.
To migrate to Different AZ or Region
 – Create an EBS Snapshot of the Volume.
– Copy Volume to Different Region(if you willing to migrate to Diff Region)
– Create new EBS volume from the snapshot in AZ you are willing to have.


Encryption Types
KMS (AES-256)
Encrypted EBS Volume
 – Data at rest is encrypted inside the volume.
– All the data in flight moving between the instance and the volume is encrypted.
– All Snapshots are encrypted.
– All Volumes created from Snapshot are encrypted.
Encrypt an Unencrypted volume
 – Create an EBS Snapshot of the Volume.
– Encrypt the EBS snapshot (Using Copy).
– Create new EBS volume from the snapshot – The volume will also be Encrypted.
– Attach the Encrypted Volume to the Original Instance.


 – Depends on whether OS supports or not – Linux and Windows OS Support RAID.
RAID 0  – Can combine more than 1 EBS volumes to single RAID 0 Array.
– The resulting size of a RAID 0 array is the sum of the sizes of the volumes within it.
– The bandwidth is the sum of the available bandwidth of the volumes within it.
– For example, two 500 GiB Amazon EBS io1 volumes with 4,000 provisioned IOPS each will create a 1000 GiB RAID 0 array with an available bandwidth of 8,000 IOPS and 1,000 MB/s of throughput
– Use Case: When I/O performance is more important than fault tolerance; for example, as in a heavily used database (where data replication is already set up separately).
–  Disadvantage – Loss of a single volume results in a complete data loss for the array.
RAID 1  – RAID 1 array offers a “mirror” of your data for extra redundancy.
– The resulting size and bandwidth of a RAID 1 array is equal to the size and bandwidth of the volumes in the array.
– For example, two 500 GiB Amazon EBS io1 volumes with 4,000 provisioned IOPS each will create a 500 GiB RAID 1 array with an available bandwidth of 4,000 IOPS and 500 MB/s of throughput.
– Use Case: When fault tolerance is more important than I/O performance; for example, as in a critical application.
–  Disadvantage -Does not provide a write performance improvement; requires more Amazon EC2 to Amazon EBS bandwidth than non-RAID configurations because the data is written to multiple volumes simultaneously.
RAID 5  – Not recommended by AWS.
RAID 6  – Not recommended by AWS.

Instance Store

 – Instances not coming with Root EBS volumes having their own instance store (ephemeral storage).
– Instance store is physically attached to the machine.
– Advantages:
Better I/O as no network latency.
Good for buffer / cache/ scratch data/ temporary content.
Data Survives Reboot/restart – Not Stop and Start!!!–  Disadvantages:
Data will be lost upon instance stop or termination.
Manually cannot resize an instance store.
No automated backup.
Additional Notes:
– Data is stored as Blocks.
– EBS is a network drive.
– Provisioned IOPS volumes can achieve single digit millisecond latencies.
– You can stripe multiple volumes together to achieve up to 75,000 IOPS or 1,750 MiB/s when attached to larger EC2 instances. However, performance for st1 and sc1 scales linearly with volume size so there may not be as much of a benefit to stripe these volumes together.