Amazon Elastic Block Store (EBS) provides persistent block storage volumes for use with Amazon EC2 instances.
Each EBS volume is automatically replicated within its Availability Zone to protect you from component failure.
With EBS, you can scale your usage up or down within minutes.
EBS is designed for application workloads that benefit from fine tuning for performance, cost and capacity.
EBS and EC2
EBS volumes persist independently from the running life of an EC2 instance.
You can attach additional EBS volumes even after launching an instance.
You can attach an EBS volume to only single running instance that is in the same Availability Zone.
You can detach an EBS volume from one instance and attach it to another instance in the same Availability Zone..
You can control whether an EBS root volume is deleted when its associated instance is terminated.
The default delete-on-termination behaviour depends on whether the volume is a root volume, or an additional volume.
By default, the DeleteOnTermination attribute for root volumes is set to 'true.' However, this attribute may be changed at launch by using either the AWS Console or the command line. For an instance that is already running, the DeleteOnTermination attribute must be changed using the CLI.
EBS Volume Encryption
EBS volumes can also be created as encrypted volumes to enable encryption at rest with EC2 and EBS. Data stored at rest on the volume, disk I/O, and snapshots created from the volume are all encrypted.
EBS encryption uses AWS Key Management Service (AWS KMS) master keys; created automatically the first time you create an encrypted EBS volume in a region. Can also select a Customer Master Key (CMK) created using the AWS Key Management Service.
Important Notes (Exam Tips)
EBS volume is automatically replicated within its Availability Zone, and offer consistent and low-latency performance.
EBS supports a number of advanced storage features, including snapshotting and cloning.
You can dynamically change the configuration of a volume attached to an instance.
With EBS, you can scale up or down within minutes with a low cost for only what you provision.
Typical use cases (as per aws.amazon.com/ebs/) include Big Data analytics engines (like the Hadoop/HDFS ecosystem and Amazon EMR clusters), relational and NoSQL databases (like Microsoft SQL Server and MySQL or Cassandra and MongoDB), stream and log processing applications (like Kafka and Splunk), and data warehousing applications (like Vertica and Teradata).
EBS volumes are created from Amazon EBS snapshots as against instance store, which are created from a template stored in Amazon S3.