Getting Familiar with Amazon EC2

Web posted: April 15, 2015 Due: April 24 2015.

The main goal of this hands-on homework is to become faimilar with the Amazon elastic compute cloud (EC2) platform.

The exercise involves a series of steps. Please follow the instructions carefully to execute these steps. Each step provides familiarity with a certain functionality provided by EC2.

You will need security credentials (certificates and keys) to carry out the assignment. The TA will provide these credentials to you soon.

Please turn in a short (1-2 page) report with your observations and output from some of the key steps in this assignment. You will also required to provide an estimate (approximate estimates are OK) on how much your EC2 operations will cost the instructor. Use Amazon's pricing policy and monitoring data to compute your estimates. Please remember that we are paying actual money to Amazon based on your usage -- so be very careful with the resources you use, and if you are unclear on any aspect, ask us for clarifications.

WARNING: All users in this class will be placed in the same security group - which means that you have privileges to terminate a server started by another fellow student. Please do not abuse these privileges.

We may add further explanations on some of these steps to clarify - we will notify the class by email if we do so.

Step 1: Install EC2 tools

We will download and install the tools in the EDlab machines, but for those who want to create an environment in their local machine, here is what you need to do (Linux/Unix only; might work on Macs with suitable modifications)

Step 2: Create an Instance and record its approximate starting time

In this step, you will start up a new Linux server on the EC2 cloud. A server is refered to as an EC2 instance. To start a server, you need to specify a machine image (think of it as a boot disk). Machine images are called AMI (amazon machine image) in EC2 terminology.

One can create an EC2 instance by specifying an ami-id. But before you create an instance you need to know what kind of ami to use. This is how you would do it