Amazon EBS
Tags: ebs, javascript, storage
Published: 2022-01-29 16:27:49

An Amazon Elastic Block Store (EBS) volume is a durable block-level storage device you can attach to a single EC2 instance.

Mostly used as the primary storage for data that requires frequent updates e.g. Instance system Drive. 

Dynamically increase, modify provisioned IOPS(Input Output per second) capacity and change volume type on live production volumes.

**Types of EBS volume**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pteuowmifm31io3ymfed.png)
Root Volume:

1. General Purpose SSD
2. Provisioned IOPS SSD 
3. Magnetic HDD

Other:
1. Throughput Optimized HDD
2. Cold HDD

**General Purpose SSD (gp2)**
It balances price and performance for a wide variety of workloads.
Use Case: System boot volumes, Virtual Desktops

**Provisioned IOPS SSD (io1)**
Highest performance SSD volume for mission critical, low latency or high throughput workloads.
Use Case: Large database workloads

**Throughput Optimized HDD (st1)**
Low-cost HDD volume designed for frequently accessed throughput intensive workloads
Use Case: Big Data

**Cold HDD (sc1)**
Lowest cost HDD designed for less frequently accessed workloads
Use Case: Large volumes of data that is infrequently accessed

**Advantages**

- AWS replicates the volume within the same AZ for high availability.

- An EBS volume data persist independently from the life of an instance.

- Detached EBS volume can be reattached to a new  instance enabling quick data recovery.

- EBS-backed instance can be stopped and restarted without affecting data stored in the attached volume.

- Store sensitive data on volume protected by Amazon EBS encryption.

- Amazon uses AWS Key Management Service (AWS KMS) master keys when creating encrypted volume and snapshots

NB: Data is encrypted using 256-bit AES Advanced Encryption Standard algorithms (AES-256) 

- Data on volume can be backed as snapshots and stored on Amazon S3 for redundancy.

- Data can be backed-up or snapshots taken when volume is attached to running instance.

- Volumes restored from encrypted snapshots are automatically encrypted.

**EBS Snapshot**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m5tkg5le6qm1lhmfiwtp.png)
- Point in time backup of data that is stored on EBS Volume

- Each snapshot contains all the information needed to restore your data

- Are Incremental: Only the blocks on the device that have changed after your recent snapshot are saved

- Snapshots are constrained to the same region it was created. (Volumes can be created in the same region only)

- Snapshots support cross-region copy

- Snapshots of encrypted volume are automatically encrypted 

- Volumes created from encrypted snapshots are automatically encrypted.

**What is RAID?**
Redundant array of independent disk (RAID) is a data storage virtualization technology that combines one or more logical units for the purposes of data redundancy, performance or both.

- RAID 0 (Performance)
RAID 0 allows you to achieve a higher level of performance for a file system than you can provision on a single Amazon EBS volume.

- RAID 1 (Fault Tolerance)
Create a RAID 1 when fault tolerance is more important than I/O performance.