Storage on AWS
Elastic Block Store
Overview of EBS
Simple Storage Service
Advanced services: Glacier and Storage Gateway
Overview of EBS

Storage is a central part of any computing infrastructure. Amazon provides many services on the cloud to replace traditional, on-premises storage systems, ranging from short-term storage for running instances who are doing computation on smal batches of data, up to long-term archives saved in redundant disks or even tapes.

In this course, the Computer Engineer and Cloud Expert Mohammad Ali Tabibi will give you an overview of the AWS storage services like EBS, S3, Glacier and Storage Gateway, to better understand what they are for, how they are built, and how they can be best used.

Who should take this course

Being a beginner course, no prerequisites are needed to understand the concepts of this course. Nevertheless, having some knowledge of what AWS is, and having some experience with the Linux Command Line Interface, might be helpful to follow along the course.

If you want to test your knowledge on the basic topics covered in this course, we strongly suggest to take our AWS questions. Also, if you want to learn more about the other AWS services, please consider checking out our other AWS courses.


Amazon Elastic Block Store provides persistent block level storage volumes for use with Amazon EC2 instances in the Amazon web services cloud. EBS volumes are off-instance storage that persist independently from the life of an instance. Each EBS volume is automatically replicated within its availability zone to protect you from component failure, offering high availability, durability and scalability, paying for only what you provision. There are many benefits to using Amazon EBS. Each Amazon EBS volume is automatically replicated within its availability zone to protect against component failure. EBS encryption provides seamless support for data at rest security and data in motion security between EC2 instances and EBS volumes. Amazon's flexible access control policies allow you to specify who can access which EBS volumes. Access control plus encryption offers a strong in-depth defense strategy for your data. EBS general purpose volumes and Amazon EBS provisioned IOPS volumes deliver low latency through solid state drive or SSD technology and consistent input/output performance scaled to the needs of your application. You can also stripe multiple volumes together to achieve even higher input/output performance. You can back up your data by taking point-in-time snapshots of your Amazon EBS volumes and use Amazon EBS snapshots to create new EC2 instances. You can increase or decrease the amount of your storage and adjust performance in minutes, exploiting the AWS elastic capabilities. Amazon EBS provides the ability to copy snapshots across AWS regions enabling geographical expansion, data center migration and disaster recovery.

There are several effective use cases for Amazon EBS. Thanks to its elastic properties, EBS can be excellent support for both relational and no-SQL databases especially when used with provisioned IOPS. Still thanks to the provisioned IOPS feature which grants stable performance, you can take advantage of EBS for enterprise applications which require continuity of business. Differently from S3, you can create file systems on Amazon EBS to store your files and applications securely and support distributed file sharing. Snapshotting your instances and moving them across regions, you can minimize data loss and recovery time by regularly backing up your data and launching new Amazon machine images in other AZs or regions. Amazon EBS provides three volume types: General purpose solid-state drive, provisioned input/output operations per second solid-state drive, and magnetic. The three volume types differ in performance characteristics and costs so you can choose the right storage performance and price for the needs of your applications.

All EBS volume types offer the same durable snapshot capabilities and are designed for 99.99% availability. General purpose volumes of the default EBS volume type for Amazon EC2 instances. General purpose volumes are backed by solid state drives or SSD and are suitable for a broad range of workloads including small to medium sized databases, development and test environments and boot volumes.

General purpose volumes provide the ability to burst up to 3,000 input/output operations per second or IOPS per volume independently of volume size to meet the performance needs of most applications and also deliver consistent baseline of three IOPS per GB. Input/output is included in the price of general purpose volumes so you pay only for each gigabyte of storage you provision.

If you need a greater number of IOPS than general purpose volumes provide or you have a workload where performance consistency is critical, AWS recommends that you use Amazon EBS provisioned IOPS volumes. Provisioned IOPS volumes offers storage with consistent and low-latency performance and are designed for applications with IO intensive workloads such as databases. Backed by solid state drives, provisioned IOPS volumes support up to 30 IOPS per gigabyte which enables you to provision 4,000 IOPS on a volume as small as 134 gigabytes. You can also stripe multiple volumes together to achieve up to 48,000 IOPS when attached to larger EC2 instances. To maximize the benefit of provisioned IOPS volumes, AWS recommends using EBS optimized EC2 instances. When attached to EBS optimized instances, provisioned IOPS volumes can achieve single digit millisecond latencies and are designed to deliver the provisioned performance 99.9% of the time.

Magnetic volumes provide the lowest cost per gigabyte of all EBS volume types. Magnetic volumes are backed by magnetic drives and are ideal for workloads where data is accessed infrequently and scenarios where very low of storage cost is important. Magnetic volumes provide approximately 100 IOPS on average with an ability to burst to hundreds of IOPS. If you need a greater number of IOPS or higher performance than what a magnetic volume will provide, AWS recommends that you consider Amazon EBS general purpose or provisioned IOPS volumes. You can create a new Amazon EBS volume that you can then attach to any Amazon EC2 instance within the same availability zone. You can also choose to create an encrypted Amazon EBS volume but encrypted volumes may only be attached to selected instance types. To create a new Amazon EBS volume, open the Amazon EC2 console.

From the navigation bar, select the region in which you'd like to create your volume. This choice is important because some Amazon EC2 resources can be shared between regions while others can't. In this example, the EU is chosen. Click volumes in the navigation pane then above upper pane, click create volume. In the create volume dialog box in the volume type list, select general purpose, provisioned IOPS or magnetic according to your needs. In this example, we'll choose general purpose. Now in the size box, enter the size of the volume in gigabytes. If you chose provisioned IOPS volumes, in the IOPS box enter the maximum number of input/output operations per second or IOPS that the volume should support. In the availability zone list, select the availability zone in which to create the volume. To create the encrypted volume, select the encrypted box. Note that encrypted volumes may only be attached to selected instance types. This feature is optional. Now click create. As you can see, after the volume has been created, information about it appears in the lower pane.

About the Author
Mohammad Ali Tabibi
Software Engineer

Computer Engineer and Cloud Expert