Amazon EKS
User Guide

Amazon EKS-Optimized AMI

The Amazon EKS-optimized AMI is built on top of Amazon Linux 2, and is configured to serve as the base image for Amazon EKS worker nodes. The AMI is configured to work with Amazon EKS out of the box, and it includes Docker, kubelet, and the AWS IAM Authenticator.

Note

You can track security or privacy events for Amazon Linux 2 at the Amazon Linux Security Center or subscribe to the associated RSS feed. Security and privacy events include an overview of the issue, what packages are affected, and how to update your instances to correct the issue.

The AMI IDs for the latest Amazon EKS-optimized AMI (with and without GPU support) are shown in the following table.

Note

The Amazon EKS-optimized AMI with GPU support only supports P2 and P3 instance types. Be sure to specify these instance types in your worker node AWS CloudFormation template. Because this AMI includes third-party software that requires an end user license agreement (EULA), you must subscribe to the AMI in the AWS Marketplace and accept the EULA before you can use the AMI in your worker node groups. To subscribe to the AMI, visit the AWS Marketplace.

Region Amazon EKS-optimized AMI with GPU support
US West (Oregon) (us-west-2) ami-0a54c984b9f908c81 ami-0731694d53ef9604b
US East (N. Virginia) (us-east-1) ami-0440e4f6b9713faf6 ami-058bfb8c236caae89
EU (Ireland) (eu-west-1) ami-0c7a4976cb6fafd3a ami-0706dc8a5eed2eed9

Important

These AMIs require the latest AWS CloudFormation worker node template. You cannot use these AMIs with a previous version of the worker node template; they will fail to join your cluster. Be sure to upgrade any existing AWS CloudFormation worker stacks with the latest template (URL shown below) before you attempt to use these AMIs.

https://amazon-eks.s3-us-west-2.amazonaws.com/cloudformation/2018-08-30/amazon-eks-nodegroup.yaml

The AWS CloudFormation worker node template launches your worker nodes with Amazon EC2 user data that triggers a specialized bootstrap script that allows them to discover and connect to your cluster's control plane automatically. For more information, see Launching Amazon EKS Worker Nodes.

Amazon EKS-Optimized AMI Build Scripts

Amazon Elastic Container Service for Kubernetes (Amazon EKS) has open-sourced the build scripts that are used to build the Amazon EKS-optimized AMI. These build scripts are now available on GitHub.

The Amazon EKS-optimized AMI is built on top of Amazon Linux 2, specifically for use as a worker node in Amazon EKS clusters. You can use this repository to view the specifics of how the Amazon EKS team configures kubelet, Docker, the AWS IAM Authenticator for Kubernetes, and more.

The build scripts repository includes a HashiCorp Packer template and build scripts to generate an AMI. These scripts are the source of truth for Amazon EKS-optimized AMI builds, so you can follow the GitHub repository to monitor changes to our AMIs. For example, perhaps you want your own AMI to use the same version of Docker that the EKS team uses for the official AMI.

The GitHub repository also contains the specialized bootstrap script that runs at boot time to configure your instance's certificate data, control plane endpoint, cluster name, and more.

Additionally, the GitHub repository contains our Amazon EKS worker node AWS CloudFormation templates. These templates make it easier to spin up an instance running the Amazon EKS-optimized AMI and register it with a cluster.

For more information, see the repositories on GitHub at https://github.com/awslabs/amazon-eks-ami.