Use an existing AMI

Use an Amazon- or partner-provided Amazon Machine Image (AMI). We advise against prebaked AMIs because they incur additional maintenance costs.

Use AMI mappings

Do not hardcode AMI IDs. Instead, use AMI mappings in your AWS CloudFormation template. We’ve developed a standard format for AMI mappings that enables our tools to automatically update AMIs in all Regions. To implement this format, create a subsection called AWSAMIRegionMap in the Mappings section of your template, and add all Regions and their corresponding AMIs to this subsection. Example:

...
"Mappings": {
    "AWSAMIRegionMap": {
        "AMI": {
            "US1404HVM": "ubuntu/images/hvm-ssd/ubuntu-trusty-14.04-amd64-server-20160627",
            "WS2012R2": "Windows_Server-2012-R2_RTM-English-64Bit-Base-2016.08.11"
        },
        "ap-northeast-1": {
            "US1404HVM": "ami-2e63924f",
            "WS2012R2": "ami-281ad849"
        },
        "ap-northeast-2": {
            "US1404HVM": "ami-979258f9",
            "WS2012R2": "ami-ab549ec5"
        },
        "ap-south-1": {
            "US1404HVM": "ami-4a90fa25",
            "WS2012R2": "ami-4b7d0824"
        },
        "ap-southeast-1": {
            "US1404HVM": "ami-ea2bf989",
            "WS2012R2": "ami-d6f32ab5"
        },
        "ap-southeast-2": {
            "US1404HVM": "ami-396a415a",
            "WS2012R2": "ami-47bf8b24"
        },
        "eu-central-1": {
            "US1404HVM": "ami-4bd03b24",
            "WS2012R2": "ami-1db84972"
        },
        "eu-west-1": {
            "US1404HVM": "ami-02b62c71",
            "WS2012R2": "ami-a8592cdb"
        },
        "us-east-1": {
            "US1404HVM": "ami-2d39803a",
            "WS2012R2": "ami-bd3ba0aa"
        },
        "us-west-1": {
            "US1404HVM": "ami-992661f9",
            "WS2012R2": "ami-69febd09"
        },
        "us-west-2": {
            "US1404HVM": "ami-42569022",
            "WS2012R2": "ami-1712d877"
        }
    }
},
...

In this example, the AMI section contains the name of a specific type of AMI: WS2012R2 is set to Windows_Server-2012-R2_RTM-English-64Bit-Base-2016.08.11. Therefore, all WS2012R2 AMIs in the name-value pairs are set to this version. Two Regions cannot have different AMI names for the same type of AMI. Also, all AMI types are associated with a codename.

Email us (the AWS Integration & Automation team) to discuss the AMI you want to use so we can ensure that it’s part of our codenames list.

Follow guidelines for using AWS Marketplace AMIs

Partner Solutions support AMIs published in the AWS Marketplace. Follow these guidelines when using Marketplace AMIs:

  • Use a naming standard that’s programmatically easy to read and write. For example, consider using lowercase with hyphen delimiters in the format vendor-product-version-timestamp, e.g., friendly-partner-awesome-product-1.0-20170716.
  • Update the timestamp whenever a new AMI is created.
  • Update the version when a significant or new version of the product is released.