View a markdown version of this page

Configuración del clúster de Amazon EKS para cargas de trabajo de IA y ML - 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.

Configuración del clúster de Amazon EKS para cargas de trabajo de IA y ML

sugerencia

Regístrese en los próximos talleres de IA/ML de Amazon EKS.

En esta sección, se explica cómo crear un clúster de Amazon EKS listo para ejecutar cargas de trabajo de inferencia, incluida la computación con GPU, la pila de supervisión y el almacenamiento en Amazon S3 para los pesos de los modelos, junto con los permisos de AWS IAM necesarios.

Información general de la arquitectura

La configuración crea la siguiente infraestructura:

  • Clúster de EKS con nodos habilitados para GPU: un NodePool administrado por Karpenter que aprovisiona de forma dinámica las instancias de GPU de la familia G con la capacidad de spot y con la reserva bajo demanda.

  • Pila de supervisión: Prometheus raspa las métricas de clústeres, nodos y GPU y las escribe de forma remota en Amazon Managed Service para Prometheus (AMP). Grafana proporciona paneles para la visualización. El Exportador DCGM de NVIDIA agrega métricas específicas de la GPU, como el uso, la memoria, la temperatura, la potencia, el ancho de banda de NVLink y la actividad de los tensores.

  • Bucket de S3 de pesos de modelos: un bucket de Amazon S3 para almacenar los pesos de los modelos, con una asociación de Pod Identity de EKS que otorga acceso de lectura y escritura a los pods de carga de trabajo.

Opciones de computación del clúster

La guía proporciona dos rutas para configurar el clúster. Elija una y sígala de forma coherente a lo largo de todos los pasos.

  • Modo automático de EKS: un solo comando aprovisiona un clúster de EKS con el modo automático de EKS habilitado. Todos los componentes necesarios vienen listos para usar, incluidos el escalado automático basado en Karpenter, el agente de supervisión de nodos de EKS, la extracción rápida de contenedores con SOCI y el complemento para dispositivos de NVIDIA.

  • Karpenter autoadministrado: se instala y configura cada componente de forma explícita; Karpenter mediante eksctl, la reparación automática de nodos mediante la puerta de característica, el agente de supervisión de nodos de EKS como complemento de EKS y el complemento para dispositivos de NVIDIA mediante Helm. También puede crear una EC2NodeClass personalizada que utilice AMI de AL2023 de NVIDIA optimizada para NVIDIA y configura SOCI.

Qué configurará

Paso Descripción

Creación de un clúster

Aprovisione el plano de control del EKS y los componentes del clúster necesarios para las cargas de trabajo de la GPU.

Creación de nodos de GPU aprovisionados dinámicamente

Defina un NodePool de GPU dinámico que aprovisione las instancias de GPU de la familia G a medida que se programen las cargas de trabajo.

Prueba con un pod de muestra

Valide la configuración de principio a fin mediante la ejecución de un pod nvidia-smi que haga que Karpenter aprovisione un nodo habilitado para GPU.

Adición de capacidad reservada (opcional)

Adjunte una reserva de capacidad bajo demanda (ODCR) a su NodeClass para una reserva prioritaria con reserva de spot o bajo demanda

Instale la supervisión

Implemente kube-prometheus-stack (Prometheus + Grafana) con escritura remota en AMP, más el Exportador DCGM de NVIDIA para las métricas de GPU.

Creación de un bucket de pesos del modelo

Cree un bucket de S3 y configure Pod Identity de EKS para que los pods de carga de trabajo puedan leer y escribir los pesos de los modelos.

Introducción

Para obtener instrucciones paso a paso con la AWS CLI, consulte Configuración del clúster de Amazon EKS para cargas de trabajo de IA y ML con la CLI.