Creación de una AMI de Amazon Linux optimizada para EKS personalizada - Amazon EKS

Ayude a mejorar esta página

Para contribuir a esta guía del usuario, elija el enlace Edit this page on GitHub que se encuentra en el panel derecho de cada página.

Creación de una AMI de Amazon Linux optimizada para EKS personalizada

aviso

Amazon EKS dejó de publicar las AMI optimizadas para EKS de Amazon Linux 2 (AL2) el 26 de noviembre de 2025. Las AMI basadas en AL2023 y Bottlerocket para Amazon EKS están disponibles para todas las versiones de Kubernetes compatibles, lo que incluye la versión 1.33 y posteriores.

Amazon EKS proporciona scripts de creación de código abierto en el repositorio de especificaciones de creación de la AMI de Amazon EKS que podrá utilizar para ver las configuraciones de kubelet, el tiempo de ejecución y el autenticador de AWS IAM para Kubernetes, así como crear su propia AMI basada en AL desde cero.

Este repositorio contiene el script de arranque para AL2 especializado y la herramienta nodeadm para AL2023 que se ejecuta en el momento del arranque. Estos scripts configuran los datos de certificado de la instancia, el punto de conexión del plano de control, el nombre del clúster, etcétera. Estos scripts se consideran el origen de información verdadera para las creaciones de la AMI optimizada para Amazon EKS, de modo que puede seguir el repositorio de GitHub para supervisar los cambios en nuestras AMI.

Al crear AMI personalizadas con las AMI optimizadas para EKS como base, no se recomienda ni se admite ejecutar una actualización del sistema operativo (por ejemplo, dnf upgrade) ni actualizar cualquiera de los paquetes de Kubernetes o GPU que se incluyen en las AMI optimizadas para EKS, ya que se corre el riesgo de interrumpir la compatibilidad de los componentes. Si actualiza el sistema operativo o los paquetes que se incluyen en las AMI optimizadas para EKS, se recomienda llevar a cabo pruebas exhaustivas en un entorno de desarrollo o ensayo antes de implementarlas en producción.

Al crear AMI personalizadas para instancias de GPU, se recomienda crear AMI personalizadas independientes para cada familia y generación del tipo de instancia que vaya a ejecutar. Las AMI aceleradas optimizadas para EKS instalan de forma selectiva los controladores y paquetes en tiempo de ejecución en función de la familia y generación del tipo de instancia subyacentes. Para obtener más información, consulte los scripts de AMI de EKS para la instalación y el tiempo de ejecución.

Requisitos previos

Inicio rápido

En este inicio rápido, se muestran los comandos para crear una AMI personalizada en su cuenta de AWS. Para obtener más información sobre las configuraciones disponibles para personalizar la AMI, consulte las variables de plantilla en la página Amazon Linux 2023.

Requisitos previos

Instale el complemento de Amazon necesario. Por ejemplo:

packer plugins install github.com/hashicorp/amazon

Paso 1. Configure su entorno

Clone o bifurque el repositorio de AMI oficial de Amazon EKS. Por ejemplo:

git clone https://github.com/awslabs/amazon-eks-ami.git cd amazon-eks-ami

Compruebe que Packer esté instalado:

packer --version

Paso 2. Para crear una AMI de personalizada

A continuación, se muestran ejemplos de comandos para varias AMI personalizadas.

AMI de NVIDIA AL2 básica:

make k8s=1.31 os_distro=al2 \ enable_accelerator=nvidia \ nvidia_driver_major_version=560 \ enable_efa=true

AMI de NVIDIA AL2023 básica:

make k8s=1.31 os_distro=al2023 \ enable_accelerator=nvidia \ nvidia_driver_major_version=560 \ enable_efa=true

AMI de Neuron AL2023 compatible con STIG:

make k8s=1.31 os_distro=al2023 \ enable_accelerator=neuron \ enable_fips=true \ source_ami_id=ami-0abcd1234efgh5678 \ kms_key_id=alias/aws-stig

Tras ejecutar estos comandos, Packer hará lo siguiente: * Lanzará una instancia temporal de Amazon EC2. * Instalará los componentes, los controladores y las configuraciones de Kubernetes. * Creará la AMI en su cuenta de AWS.

El resultado esperado debe tener el siguiente aspecto:

==> Wait completed after 8 minutes 42 seconds ==> Builds finished. The artifacts of successful builds are: --> amazon-ebs: AMIs were created: us-west-2: ami-0e139a4b1a7a9a3e9 --> amazon-ebs: AMIs were created: us-west-2: ami-0e139a4b1a7a9a3e9 --> amazon-ebs: AMIs were created: us-west-2: ami-0e139a4b1a7a9a3e9

Paso 3. Vea los valores predeterminados

Para ver los valores predeterminados y las opciones adicionales, ejecute el siguiente comando:

make help