Choosing an AMI

An Amazon Machine Image (AMI) specifies the operating system, architecture (32-bit or 64-bit), AWS Region, and virtualization type (Paravirtualization or HVM) for a virtual machine (also known as an instance) that you launch in AWS.

The virtualization type depends on the instance type that you use. After selecting an instance type based on the expected storage and computational load, check the supported virtualization types. Then, identify the correct AMI based on architecture, AWS Region, and virtualization type.

Finding Available AMIs

There are two ways of finding available AMIs:
  • Using the AWS Management Console.
  • By generating a list of AMIs using the AWS CLI.
    To generate a list of RHEL 64-bit AMIs using the AWS CLI, perform the following steps:
    1. Install the AWS CLI.
      $ sudo pip install awscli
    2. Configure the AWS CLI.
      $ aws configure

      Follow the prompts. Choose any output format. The following example command defines "table" as the format.

    3. Run the following query:
      aws ec2 describe-images \
        --output table \
        --query 'Images[*].[VirtualizationType,Name,ImageId]' \
        --owners 309956199498 \
        --filters \
          Name=root-device-type,Values=ebs \
          Name=image-type,Values=machine \
          Name=is-public,Values=true \
          Name=hypervisor,Values=xen \
          Name=architecture,Values=x86_64

      AWS returns a table of available images in the region you configured.