When you run an instance in Amazon Elastic Compute Cloud (EC2), you gain all the power and the responsibility of a server administrator. You can install any software you want and configure your instances as you please, but you must ensure that they work correctly, are properly secured, are resistant to faults, and do not violate Amazon’s acceptable use provisions.
In this chapter we discuss the key features of EC2 instances, as well as the issues you will have to address if you wish to run applications reliably in the EC2 environment. We will discuss how you can customize an instance and permanently save the result as an Amazon Machine Image (AMI), as well as how you can create your own AMIs from scratch to maintain complete control over the content of your images.
This chapter deals with advanced topics, and readers will need to have an in-depth knowledge of Linux systems, or a keen desire to acquire this knowledge, to obtain the full benefit of these powerful EC2 mechanisms. Readers who merely want to get an idea of what is possible, or who have basic requirements, need not feel discouraged; we will take things slowly to start with and progress from simpler examples to more complex ones.
EC2 instances are based on a Xen-compatible Linux kernel compiled with the GNU C Compiler (GCC) version 4.0. The kernel version used in this book was 2.6.16. Unlike standard Linux machines, it is not possible in EC2 to ...