Amazon EBS (Elastic Block Store)
Amazon Elastic Block Store is a cloud-based block storage system provided by Amazon Web Services (AWS) that is best used for storing persistent data.
The service, often incorrectly referred to as Elastic Block Storage, provides highly available block-level storage volumes for use with Amazon Elastic Compute Cloud (EC2) instances. Amazon EBS enables you to keep data persistently on a file system, even after you shut down your EC2 instance.
Amazon also provides local storage for EC2 instances that you can use while you run the instance, but you lose the data when you shut down the instance. This means, if you want to save that data, you need to store it on Amazon EBS.
How to use Amazon EBS
To begin, create an EBS volume, pick a size for it and attach that to any one of your EC2 instances. You can only attach an EBS volume to one instance at a time, but an instance can have multiple volumes attached to it.
You can also take a snapshot of a volume, which captures the data at a point in time to provide the equivalent of a backup. You can also use the snapshot to create another volume that you can attach to another instance.
You can share EBS snapshots with a team member or make them available publicly if you modify the snapshot permissions. Additionally, you can copy EBS snapshots to other AWS regions for disaster recovery and migration purposes.
Amazon EBS volume types
AWS provides different EBS volume options for a variety of workloads and use cases. A customer can choose between volumes backed by either a solid-state drive (SSD) or a hard disk drive (HDD).
SSD-backed volumes typically fit higher-performance workloads that require low latency and high IOPS. HDD-backed volumes typically suit high-volume, throughput-intensive workloads.
AWS' current generation of EBS volumes includes:
- EBS Provisioned IOPS SSD (io1) -- the highest performance option. Provides high IOPS per volume and a high maximum throughput per volume and is ideal for database workloads.
- EBS General Purpose SSD (gp2) -- the default EBS volume. Offers high IOPS per volume, but at a lower rate and cost than io1, and is intended for dev-test workloads, virtual desktops and low-latency apps.
- Throughput Optimized HDD (st1) -- offers high throughput per volume and a large volume size, and is ideal for data warehouses and log processing.
- Cold HDD (sc1) – meant for less frequently accessed workloads, such as cold data, and provides the lowest IOPS per volume at the lowest price of all the EBS volumes.
The Elastic Volumes feature enables you to resize EBS volumes to accommodate changing application needs or snapshot sizes. You can also change any volume type without downtime.
AWS also provides EBS-optimized EC2 instances, which enables full access to an EBS volume's IOPS capabilities and reduces latency to milliseconds for io1 volumes.
Amazon EBS security
Amazon EBS provides encryption for data at rest, both for volumes and snapshots, to help the IT team meet security and compliance requirements. You can use Amazon-managed encryption keys or create and manage keys with AWS Key Management Service.
You can also pair policies for encryption and AWS Identity and Access Management roles to control privileges for EBS volumes.
Amazon EBS pricing
With Amazon EBS, you pay only for what you use. AWS charges according to each GB per month of provisioned storage on all volumes, plus each provisioned IOPS per month for io1 volumes. Additionally, AWS charges for each GB per month of storage of EBS snapshots to Amazon Simple Storage Service.