EC2 Volumes

Introduction to EC2 Volumes
------------------------------------------

EC2 Volumes (called Elastic Block Storage by Amazon) are essentially disk images that can be mounted on any system running on EC2, and continue to exist even if the system they were attached to is deleted. They are a more permanent place to store data than the filesystem of an EC2 instance, and more easily accessible than S3.

Each volume is typically formatted with a filesystem like EXT3, and is mapped to a device like /dev/sdb1 on the system it is connected to. It can then be mounted with the standard Linux mount command. The size of a volume is typically several GB, and is chosen at creation time. Amazon charges for volumes based on their size and the amount of time they exist.

EC2 Volume Snapshots
----------------------------------

An EC2 volume snapshot is a copy of a volume taken at some point in time, and stored in S3. Once a snapshot has been created, additional volumes can be created from the data in that snapshot. They can be used for backup purposes, or to duplicate or fork the contents of a volume.

Snapshots are differential backups, meaning that only the blocks on the device that have changed since your last snapshot will be incrementally saved. This means that if you have a device with 100 GBs of data, but only 5 GBs of data has changed since your last snapshot, only the 5 additional GBs of snapshot data will be stored back to Amazon S3.

Creating and Managing EC2 Volumes
-------------------------------------------------------

To create an EC2 volume in Cloudmin, do the following :

1. Login to the UI as root and go to *Amazon EC2* -> *EC2 Volumes*.
1. In the *New volume details* form, choose your account from the *EC2 account* menu.
1. Enter a size in the *EC2 account* field, or select a snapshot to copy this volume from.
1. From the *Availability zone* menu, select the zone that your EC2 systems have been created in. A volume can only be attached to systems in the same zone.
1. Click the *Create* button.

Once a volume has been created, it will appear in the list on the *EC2 Volumes* page. To remove it, check the box next to it's ID and click the *Delete Selected Volumes* button. Be careful, as the data on the volume will be lost forever (unless you made a snapshot first).

Creating and Managing EC2 Snapshots
---------------------------------------------------------

Once you have at least one EC2 volume, Cloudmin will allow you to create a snapshot of it as follows :

1. Go to *Amazon EC2* -> *EC2 Volumes*, and click on the *EBS Snapshots* tab.
1. In the *New volume snapshot details* section, select the volume to copy from the *Copy from volume* menu.
1. Click the *Create* button.

Once a snapshot has been created, it can be used to create new volumes as explained above. Snapshots can be deleted on the EBS Snapshots* tab by checking the boxes next to their names and clicking the *Delete Selected Snapshots* button.

Assigning Volumes to Systems
----------------------------------------------

Once a volume has been created, it can be attached to an EC2 instance as a block device, and typically mounted a filesystem. This can be done within Cloudmin like so :

1. Select your system from the left menu, and go to *Resources* -> *Attached EC2 Volumes*.
1. In the *Volume attachment options* form, select the volume from the *Volume to attach* menu.
1. If this is a new volume that has not been mounted anywhere yet, change the *Format with filesystem* to *EXT3*. Otherwise, leave it set to *Dont format* to preserve existing data.
1. To have Cloudmin attempt to mount the volume, enter a path in the *Mount on directory* field like /mnt/disk2 or /home.
1. Click the *Attach EC2 Volume* button.

Once a volume has been attached and mounted, you can use it on your EC2 system however you wish. To detach a volume, go to the *ttached EC2 Volumes* page, check the box next to its ID and click the *Detach Selected Volumes*.