| Did this page help you? Yes No Tell us about it... |
An Amazon Machine Image (AMI) contains all information necessary to boot instances of your software. For example, an AMI might contain all the software to act as a web server (e.g., Linux, Apache, and your web site) or it might contain all the software to act as a Hadoop node (e.g., Linux, Hadoop, and a custom application). You launch one or more instances of an AMI. An instance might be one web server within a web server cluster or one Hadoop node.
A large selection of public AMIs is available from Amazon and the Amazon EC2 community. For more information, go to Amazon Machine Images (AMIs) at the AWS web site.
The AWS Management Console (at http://aws.amazon.com/console) enables you to search for AMIs that meet specific criteria, and then launch instances of those AMIs. For example, you can view the AMIs Amazon has provided, or the AMIs the EC2 community has provided, or AMIs that use certain platforms (e.g., Windows, Red Hat, CentOS, Ubuntu).
You might find that public AMIs suit your needs. However, you might want to customize a public AMI and then save that customized AMI for your own use (i.e., create a new AMI). For more information about creating your own AMIs, see Creating Your Own AMIs.
After you create a new AMI, you can keep it private so that only you can use it, or you can share it with only specific AWS accounts that you specify. Another option is to make your customized AMI public so that the EC2 community can use it. Building safe, secure, usable AMIs for public consumption is a fairly straightforward process, if you follow a few simple guidelines. For information on how to use shared AMIs and how to share AMIs, see Using Shared AMIs and Sharing AMIs Safely.
Paid AMIs are AMIs that you purchase from AWS Markplace, developers or AMIs that come with service contracts from organizations such as Red Hat. If you are interested in AWS Marketplace, visit AWS Marketplace. If you're interested in selling an AMI to other developers, go to http://aws.amazon.com/devpay to learn about Amazon DevPay.
To help categorize and manage your AMIs, you can assign tags of your choice to them. For more information, see Using Tags.
All AMIs are categorized as either backed by Amazon EBS or backed by instance store. The former means that the root device is an Amazon EBS snapshot and appears as an Amazon EBS volume when an instance is launched from the AMI. The latter means that the root device is stored in Amazon S3 and appears as instance store when an instance is launched from the AMI.
There are other important differences between the two types of AMIs. For an in-depth discussion of these differences, see Using Amazon EBS-Backed AMIs and Instances. The following table gives a quick summary of the differences.
| Characteristic | Amazon EBS-Backed | Amazon instance store-backed |
|---|---|---|
|
Boot Time |
Usually Less than 1 minute |
Usually Less than 5 minutes |
|
Size Limit |
1 TiB |
10 GiB |
|
Root Device Location |
Amazon EBS volume |
Instance storage |
|
Data Persistence |
Data persists on instance failure and can persist on instance termination |
Data persists for the life of the instance; nonroot devices can use Amazon EBS |
|
Upgrading |
The instance type, kernel, RAM disk, and user data can be changed while the instance is stopped. |
Instance attributes are fixed for the life of an instance |
|
Charges |
Instance usage, Amazon EBS volume usage, and Amazon EBS snapshot charges for AMI storage |
Instance usage and Amazon S3 charges for AMI storage |
|
AMI Creation/Bundling |
Uses a single command/call |
Requires installation and use of AMI tools |
|
Stopped State |
Can be placed in stopped state where instance is not running, but the instance is persisted in Amazon EBS |
Cannot be in stopped state; instances are running or not |