

 **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.

# Uso de AMI aceleradas optimizadas para EKS para instancias de GPU
<a name="ml-eks-optimized-ami"></a>

Amazon EKS admite las AMI de Amazon Linux y Bottlerocket optimizadas para EKS para instancias de GPU. Las AMI aceleradas optimizadas para EKS simplifican la ejecución de cargas de trabajo de IA y ML en los clústeres de EKS al proporcionar imágenes del sistema operativo validadas y prediseñadas para la pila de Kubernetes acelerada. Además de los componentes principales de Kubernetes que se incluyen en las AMI estándar optimizadas para EKS, las AMI aceleradas optimizadas para EKS incluyen los módulos de kernel y los controladores necesarios para ejecutar las instancias de EC2 `G` y `P` de GPU de NVIDIA y las instancias de EC2 de GPU de AWS [Inferentia](https://aws.amazon.com/machine-learning/inferentia/) y [Trainium](https://aws.amazon.com/machine-learning/trainium/) en los clústeres de EKS.

En la siguiente tabla, se muestran los tipos de instancias de GPU compatibles para cada variante de AMI acelerada optimizada para EKS. Consulte las [versiones de AL2023](https://github.com/awslabs/amazon-eks-ami/releases) y las [versiones de Bottlerocket](https://github.com/bottlerocket-os/bottlerocket/blob/develop/CHANGELOG.md) optimizadas para EKS en GitHub para ver las actualizaciones más recientes de las variantes de AMI.


| Variante de AMI de EKS | Tipos de instancias de EC2 | 
| --- | --- | 
|  AL2023 x86\$164 de NVIDIA  |  p6-b300, p6-b200, p5, p5e, p5en, p4d, p4de, p3, p3dn, g7e, gr6, g6, g6e, g6f, gr6f, g5, g4dn  | 
|  ARM de AL2023 de NVIDIA  |  p6e-gb200, p6e-gb300, g5g  | 
|  AL2023 x86\$164 de Neuron  |  inf1, inf2, trn1, trn2  | 
|  Bottlerocket x86\$164 aws-k8s-nvidia  |  p6-b300, p6-b200, p5, p5e, p5en, p4d, p4de, p3, p3dn, g7e, gr6, g6, g6e, g6f, gr6f, g5, g4dn  | 
|  Bottlerocket aarch64/arm64 aws-k8s-nvidia  |  g5g  | 
|  Bottlerocket x86\$164 aws-k8s  |  inf1, inf2, trn1, trn2  | 

## AMI de NVIDIA optimizadas para EKS
<a name="eks-amis-nvidia"></a>

Al utilizar las AMI de NVIDIA optimizadas para EKS, acepta el [Contrato de licencia de usuario final (EULA) de NVIDIA para la nube](https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf).

Para encontrar las AMI de NVIDIA optimizadas para EKS más recientes, consulte [Obtención de los ID de AMI de Amazon Linux recomendados](retrieve-ami-id.md) y [Recuperación de los ID de AMI de Bottlerocket recomendados](retrieve-ami-id-bottlerocket.md).

Si utiliza Amazon Elastic Fabric Adaptor (EFA) con las AMI de NVIDIA de AL2023 o Bottlerocket optimizadas para EKS, debe instalar el complemento para dispositivos de EFA por separado. Para obtener más información, consulte [Impartición de formación en machine learning en Amazon EKS con Elastic Fabric Adapter](node-efa.md).

## AMI de NVIDIA de AL2023 de EKS
<a name="eks-amis-nvidia-al2023"></a>

Cuando utilice el [operador de GPU de NVIDIA](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/latest/overview.html) con las AMI de NVIDIA de AL2023 optimizadas para EKS, debe desactivar la instalación del controlador y el kit de herramientas por parte del operador, ya que se incluyen en las AMI de EKS. Las AMI de NVIDIA de AL2023 optimizadas para EKS no incluyen el complemento para dispositivos de Kubernetes de NVIDIA ni el controlador NVIDIA de DRA, que deben instalarse por separado. Para obtener más información, consulte [Administración de dispositivos GPU NVIDIA en Amazon EKS](device-management-nvidia.md).

Además de los componentes estándar de AMI de EKS, las AMI de NVIDIA de AL2023 optimizadas para EKS incluyen los siguientes componentes.
+ Controlador de NVIDIA
+ Controlador de modo de usuario CUDA de NVIDIA
+ Kit de herramientas de contenedores de NVIDIA
+ NVIDIA Fabric Manager
+ NVIDIA con persistencia
+ Controlador de IMEX de NVIDIA
+ Administrador de subredes NVLink de NVIDIA
+ EFA mínimo (módulo de kernel y rdma-core)

Para obtener más información sobre el controlador de modo de usuario CUDA de NVIDIA y el tiempo de ejecución y las bibliotecas de CUDA que se utilizan en los contenedores de aplicaciones, consulte la [documentación de NVIDIA](https://docs.nvidia.com/deploy/cuda-compatibility/why-cuda-compatibility.html#why-cuda-compatibility). La versión de CUDA que se muestra en `nvidia-smi` es la versión del controlador de modo de usuario CUDA de NVIDIA instalada en el host, que debe ser compatible con el tiempo de ejecución y las bibliotecas de CUDA que se utilizan en los contenedores de aplicaciones.

Las AMI de NVIDIA de AL2023 optimizadas para EKS admiten el kernel 6.12 para las versiones 1.33 y posteriores de Kubernetes, y la versión 580 del controlador de NVIDIA para todas las versiones de Kubernetes. Se requiere el controlador de NVIDIA 580 para utilizar CUDA 13\$1.

Consulte las [versiones de AL2023](https://github.com/awslabs/amazon-eks-ami/releases) optimizadas para EKS en GitHub para obtener información sobre las versiones de los componentes incluidas en las AMI. Consulte el [script de instalación](https://github.com/awslabs/amazon-eks-ami/blob/main/templates/al2023/provisioners/install-nvidia-driver.sh) de la AMI de NVIDIA de AL2023 de EKS y el [script de carga del kernel](https://github.com/awslabs/amazon-eks-ami/blob/main/templates/al2023/runtime/gpu/nvidia-kmod-load.sh) para obtener información sobre cómo las AMI de EKS configuran las dependencias de NVIDIA. Puede encontrar la lista de paquetes instalados y sus versiones en una instancia de EC2 en ejecución con el comando `dnf list installed`.

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](https://github.com/awslabs/amazon-eks-ami/blob/main/templates/al2023/provisioners/install-nvidia-driver.sh) y el [tiempo de ejecución](https://github.com/awslabs/amazon-eks-ami/blob/main/templates/al2023/runtime/gpu/nvidia-kmod-load.sh).

## AMI de NVIDIA de Bottlerocket de EKS
<a name="eks-amis-nvidia-bottlerocket"></a>

Cuando utilice el [operador de GPU de NVIDIA](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/latest/overview.html) con las AMI de NVIDIA de Bottlerocket optimizadas para EKS, debe desactivar la instalación del controlador, el kit de herramientas y el complemento para dispositivos por parte del operador, ya que se incluyen en las AMI de EKS.

Además de los componentes estándar de AMI de EKS, las AMI de NVIDIA de Bottlerocket optimizadas para EKS incluyen los siguientes componentes. Las dependencias mínimas de EFA (módulo del kernel y rdma-core) están instaladas en todas las variantes de Bottlerocket.
+ Complemento para dispositivos de Kubernetes de NVIDIA
+ Controlador de NVIDIA
+ Controlador de modo de usuario CUDA de NVIDIA
+ Kit de herramientas de contenedores de NVIDIA
+ NVIDIA Fabric Manager
+ NVIDIA con persistencia
+ Controlador de IMEX de NVIDIA
+ Administrador de subredes NVLink de NVIDIA
+ MIG Manager de NVIDIA

Para obtener más información sobre el controlador de modo de usuario CUDA de NVIDIA y el tiempo de ejecución y las bibliotecas de CUDA que se utilizan en los contenedores de aplicaciones, consulte la [documentación de NVIDIA](https://docs.nvidia.com/deploy/cuda-compatibility/why-cuda-compatibility.html#why-cuda-compatibility). La versión de CUDA que se muestra en `nvidia-smi` es la versión del controlador de modo de usuario CUDA de NVIDIA instalada en el host, que debe ser compatible con el tiempo de ejecución y las bibliotecas de CUDA que se utilizan en los contenedores de aplicaciones.

Consulte la información sobre la versión de Bottlerocket en la [documentación de Bottlerocket](https://bottlerocket.dev/en/) para obtener detalles sobre los paquetes instalados y sus versiones. Las AMI de NVIDIA de Bottlerocket optimizadas para EKS admiten el kernel 6.12 para las versiones 1.33 y posteriores de Kubernetes, y la versión 580 del controlador de NVIDIA para las versiones 1.34 y posteriores de Kubernetes. Se requiere el controlador de NVIDIA 580 para utilizar CUDA 13\$1.

## AMI de Neuron optimizadas para EKS
<a name="eks-amis-neuron"></a>

Para obtener información sobre cómo ejecutar cargas de trabajo de entrenamiento e inferencia que utilizan Neuron con Amazon EKS, consulte las siguientes referencias:
+  [Contenedores - Kubernetes - Introducción](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/containers/kubernetes-getting-started.html) en la documentación de AWS Neuron
+  [Training example](https://github.com/aws-neuron/aws-neuron-eks-samples/blob/master/README.md#training) en las muestras de EKS de AWS Neuron en GitHub
+  [Implementación de cargas de trabajo de inferencia de ML con Inferentia en Amazon EKS](inferentia-support.md) 

Para encontrar las AMI de Neuron optimizadas para EKS más recientes, consulte [Obtención de los ID de AMI de Amazon Linux recomendados](retrieve-ami-id.md) y [Recuperación de los ID de AMI de Bottlerocket recomendados](retrieve-ami-id-bottlerocket.md).

Si utiliza Amazon Elastic Fabric Adaptor (EFA) con las AMI de Neuron de AL2023 o Bottlerocket optimizadas para EKS, debe instalar el complemento para dispositivos de EFA por separado. Para obtener más información, consulte [Impartición de formación en machine learning en Amazon EKS con Elastic Fabric Adapter](node-efa.md).

## AMI de Neuron de AL2023 de EKS
<a name="eks-amis-neuron-al2023"></a>

Las AMI de Neuron de AL2023 optimizadas para EKS no incluyen el controlador de DRA de Neuron, el complemento para dispositivos de Kubernetes de Neuron ni la [extensión del programador de Kubernetes de Neuron](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/containers/tutorials/k8s-neuron-scheduler.html), que deben instalarse por separado. Para obtener más información, consulte [Administración de los dispositivos Neuron en Amazon EKS](device-management-neuron.md).

Además de los componentes estándar de AMI de EKS, las AMI de Neuron de AL2023 optimizadas para EKS incluyen los siguientes componentes.
+ Controlador de Neuron (aws-neuronx-dkms)
+ Herramientas de Neuron (aws-neuronx-tools)
+ EFA mínimo (módulo de kernel y rdma-core)

Consulte el [script de instalación](https://github.com/awslabs/amazon-eks-ami/blob/main/templates/al2023/provisioners/install-neuron-driver.sh) de la AMI de Neuron de AL2023 de EKS para obtener información sobre cómo las AMI de EKS configuran las dependencias de Neuron. Consulte las [versiones de AL2023](https://github.com/awslabs/amazon-eks-ami/releases) optimizadas para EKS en GitHub para ver las versiones de los componentes incluidas en las AMI. Puede encontrar la lista de paquetes instalados y sus versiones en una instancia de EC2 en ejecución con el comando `dnf list installed`.

## AMI de Neuron de Bottlerocket de EKS
<a name="eks-amis-neuron-bottlerocket"></a>

Las variantes estándar de Bottlerocket (aws-k8s) incluyen las dependencias de Neuron, que se detectan y cargan automáticamente cuando se ejecutan en instancias de EC2 de AWS Inferentia o Trainium.

Las AMI de Bottlerocket optimizadas para EKS no incluyen el controlador de DRA de Neuron, el complemento para dispositivos de Kubernetes de Neuron ni la [extensión del programador de Kubernetes de Neuron](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/containers/tutorials/k8s-neuron-scheduler.html), que deben instalarse por separado. Para obtener más información, consulte [Administración de los dispositivos Neuron en Amazon EKS](device-management-neuron.md).

Además de los componentes estándar de AMI de EKS, las AMI de Neuron de Bottlerocket optimizadas para EKS incluyen los siguientes componentes.
+ Controlador de Neuron (aws-neuronx-dkms)
+ EFA mínimo (módulo de kernel y rdma-core)

Al utilizar las AMI de Bottlerocket optimizadas para EKS con instancias de Neuron, se debe configurar lo siguiente en los datos del usuario de Bottlerocket. Esta configuración permite que el contenedor obtenga la propiedad del dispositivo de Neuron montado en función de los valores `runAsUser` y `runAsGroup` proporcionados en la especificación de la carga de trabajo. Para obtener más información sobre la compatibilidad de Neuron con Bottlerocket, consulte [Quickstart on EKS readme](https://github.com/bottlerocket-os/bottlerocket/blob/develop/QUICKSTART-EKS.md#neuron-support) en GitHub.

```
[settings]
[settings.kubernetes]
device-ownership-from-security-context = true
```

Consulte el [registro de cambios del kit de kernel de Bottlerocket](https://github.com/bottlerocket-os/bottlerocket-kernel-kit/blob/develop/CHANGELOG.md) para obtener información sobre la versión del controlador de Neuron incluida en las AMI de Bottlerocket optimizadas para EKS.