In this video, Jeff Winesett introduces AWS Elastic Block Storage. EBS volumes are used as file storage devices on EC2 instances. EBS volumnes offer point-in-time snapshots to help with data distribution, redundancy and disaster recovery.
- [Instructor] Elastic Block Storage, or EBS for short, are storage resources that are created separately from EC2 instances. Unlike local instance storage, data stored on EBS volumes can live beyond the life of the instance itself. EBS volumes are attached to EC2 instances. Once attached, they can be used like any other block device. Running a file system for data storage is a good example of using this type of storage device.
There are two types of EBS volumes: standard volumes and provisioned IOPS volumes. Provisioned IOPS EBS volumes allow for the specification of consistent performance parameters. Standard and provisioned IOPS volumes differ in price and performance, and choosing one over the other will depend on the specific application needs and budget. With EBS, volumes can be created up to one terabyte in size and attached to EC2 instances.
Multiple EBS volumes can be attached to a single instance. I/O performance is specified by creating provisioned IOPS volumes. EBS volumes can be formatted with the file system and used as file storage. Point-in-time snapshots of EBS volumes can be created and persisted to Amazon S3. These can then be used to instantiate new volumes. This allows application data to be copied and replicated across AWS regions.
CloudWatch can be used to monitor performance on EBS volumes. This provides insight into metrics, such as throughput and latency. The point-in-time snapshot feature is important with regard to designing for failure. Because this allows volumes and data to easily be shared and copied across zones and regions. When created, EBS volumes are stored on S3. Each snapshot is stored incrementally, which means only the blocks that have changed since the last snapshot are saved.
Amazon only charges for the changes, so if a device has 100 gigabytes of data, but only five gigabytes have changed since the last snapshot, the subsequent snapshot consumes only five additional gigabytes. When a snapshot is deleted, only the data not needed by any other snapshot is removed. All active snapshots contain all the information needed to restore the volume to the instant at which the snapshot was taken.
Snapshots can be used to create new volumes and new locations. Once on S3, snapshots can be copied to additional availability zones. And new EBS volumes can be created there. And similarly, they can be created across regions. Restored snapshots can be accessed immediately. When creating a new volume from a snapshot, all of the snapshot data stored in S3 has to be transferred to this newly created volume.
This takes time. However, the volume can be used right away. The restoring of new volumes from EBS snapshots implements a lazy loading approach. Any data initially being accessed will be prioritized during the transfer. And if not already there, it will be immediately retrieved upon the first request. Snapshots are also useful for resizing volumes. When creating a new Amazon EBS volume based on a snapshot, a new size can be specified.
Design for failure lesson number 6. Utilize EBS to keep persistent data independent of EC2 instances. And take advantage of the portability and power of incremental EBS snapshots to replicate data across availability zones and regions.
- Benefits of cloud services
- Making architectures scalable
- Examining cloud constraints
- Virtual servers, EC2, and Elastic IP
- Using the Amazon machine image
- Elastic load balancing
- Using CloudWatch for monitoring
- Security Models
- Elastic block storage
- S3, CloudFront, and Elastic Beanstalk
- Handling queues, workflows, and notifications
- Caching options and services
- Identity and access management
- Creating a custom server image
- Application deployment strategies
- Serverless architectures