Amazon EC2

Amazon Web Service’s Elastic Compute Cloud (EC2) provides a platform for deploying and running applications.

Images

On EC2, cloud images are referred to as Amazon Machine Images (AMIs). Canonical produces a wide variety of images to support numerous features found on EC2:

  • Generally, all images utilize EBS storage and HVM virtualization types. Older releases may also support PV and instance-store, but users benefit from the newer storage and virtualization technologies.
  • Standard server images as well as minimal images for amd64. As well, arm64 images for the standard server set.
  • Daily (untested) and release images are published.

Find Images with SSM

The AWS Systems Manager (SSM) parameter store is used by Canonical to store the latest AMI release versions for EC2. This provides users with a programmatic method of querying for the latest AMI ID.

Canonical stores SSM parameters under /aws/service/canonical/. To find the latest AMI ID user’s can use the AWS CLI:

aws ssm get-parameters --names \
     /aws/service/canonical/ubuntu/server/20.04/stable/current/amd64/hvm/ebs-gp2/ami-id

The path follows the following format:

ubuntu/$PRODUCT/$RELEASE/stable/current/$ARCH/$VIRT_TYPE/$VOL_TYPE/ami-id
  • PRODUCT: server or server-minimal
  • RELEASE: focal, 20.04, bionic, 18.04, xenial, or 16.04
  • ARCH: amd64 or arm64
  • VIRT_TYPE: pv or hvm
  • VOL_TYPE: ebs-gp2, ebs-io1, ebs-standard, or instance-store

The given serial for an image (e.g. 20210222) is also uploaded in place of current:

ubuntu/$PRODUCT/$RELEASE/stable/$SERIAL/$ARCH/$VIRT_TYPE/$VOL_TYPE/ami-id

For more details on SSM check out the following Discourse thread.

Ownership Verification

User’s can verify that an AMI was published by Canonical by ensuring the OwnerId field of an image is 099720109477. This ID is stored in SSM and is discoverable by running:

aws ssm get-parameters --names /aws/service/canonical/meta/publisher-id

With the value returned by that command, user’s can then run the describe-images command against an AMI ID and verify the OwnerId field matches the above ID:

aws ec2 describe-images --image-ids $AMI_ID

Note that listings on the AWS Marketplace will always show the OwnerId as Amazon (e.g. 679593333241). In these cases, users can verify the Amazon ID and look for aws-marketplace/ubuntu in the ImageLocation field.

Image Locator

Canonical also produces a Ubuntu Cloud Image Finder where users can filter down based on a variety of criteria (e.g. region, release, etc. ).

AWS EKS

EKS is a managed Kubernetes service provided by AWS that lets users run Kubernetes applications in the cloud or on-premises.

Canonical provides minimized Ubuntu images customized for use with EKS. These are fully tested release images that cover all Kubernetes versions supported by the EKS service.

The latest EKS AMI ID can be found in the SSM parameter store:

aws ssm get-parameters --names /aws/service/canonical/ubuntu/eks/20.04/1.21/stable/current/amd64/hvm/ebs-gp2/ami-id

The path follows the following format:

ubuntu/eks/$RELEASE/$K8S_VERSION/stable/current/$ARCH/$VIRT_TYPE/$VOL_TYPE/ami-id

For newer Kubernetes versions (>= 1.20), there are also arm64 images available (in addition to the amd64 images)

AWS Marketplace

AWS Marketplace is a digital catalog with thousands of software listings from independent software vendors that make it easy to find, test, buy, and deploy software that runs on AWS.

Canonical maintains image listings for recent Ubuntu releases on AWS Marketplace, including images in minimal and arm64 flavors.

Customers can also use the AWS Marketplace to launch and subscribe to official Ubuntu Pro images that allow users to pay for additional support.

Last updated 23 days ago. Help improve this document in the forum.