Instalación de paquetes en el clúster de Amazon EKS mediante Helm - Amazon SageMaker AI

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Instalación de paquetes en el clúster de Amazon EKS mediante Helm

Antes de crear un SageMaker HyperPod clúster y adjuntarlo a un clúster de Amazon EKS, debe instalar los paquetes con Helm, un administrador de paquetes para Kubernetes. Helm es una herramienta de código abierto para configurar un proceso de instalación para los clústeres de Kubernetes. Permite la automatización y la optimización de las instalaciones de dependencias y simplifica varias configuraciones necesarias para preparar el clúster de Amazon EKS como el orquestador (plano de control) de un clúster. SageMaker HyperPod

El equipo SageMaker HyperPod de servicio proporciona un paquete de gráficos de Helm, que incluye las dependencias clave, como los complementos del dispositivo o EFA, los complementos, el operador de formación de Kubeflow y las configuraciones de permisos asociadas.

importante

Este paso de instalación de Helm es obligatorio. Si no configura su clúster de Amazon EKS con el diagrama de Helm proporcionado, es posible que el SageMaker HyperPod clúster no funcione correctamente o que el proceso de creación falle por completo. No se puede modificar el nombre del espacio de nombres de aws-hyperpod.

  1. Instale Helm en el equipo local.

  2. Descargue los gráficos de Helm proporcionados SageMaker HyperPod helm_chart/HyperPodHelmChart en el repositorio de SageMaker HyperPod CLI.

    git clone https://github.com/aws/sagemaker-hyperpod-cli.git cd sagemaker-hyperpod-cli/helm_chart
  3. Actualice las dependencias del gráfico de Helm, obtenga una vista previa de los cambios que se realizarán en el clúster de Kubernetes e instale el gráfico de Helm.

    helm dependencies update HyperPodHelmChart
    helm install hyperpod-dependencies HyperPodHelmChart --dry-run
    helm install hyperpod-dependencies HyperPodHelmChart

En resumen, la instalación de Helm configura varios componentes para su clúster de Amazon EKS, como la programación y las colas de tareas (Kueue), la administración del almacenamiento, la MLflow integración y Kubeflow. Además, los gráficos instalan los siguientes componentes para integrarlos con las funciones de resiliencia del SageMaker HyperPod clúster, que son componentes necesarios.

  • Agente de monitoreo de salud: instala el agente de monitoreo de salud proporcionado por. SageMaker HyperPod Esto es necesario si desea que su HyperPod clúster sea monitoreado. Los agentes de supervisión del estado se proporcionan como imágenes de Docker de la siguiente manera. En los values.yaml proporcionados de los gráficos de Helm, la imagen está preestablecida. El agente admite instancias e Trainium-accelerator-based instancias basadas en GPU (trn1,trn1n,inf2). Se instala en el espacio de nombres aws-hyperpod.

    590183648699.dkr.ecr.us-west-2.amazonaws.com/hyperpod-health-monitoring-agent:1.0.230.0_1.0.19.0
  • Comprobación de estado profunda: configura aClusterRole, a ServiceAccount (deep-health-check-service-account) en el espacio de aws-hyperpod nombres y ClusterRoleBinding a para habilitar la función de verificación de estado SageMaker HyperPod profunda. Para obtener más información sobre el archivo RBAC de Kubernetes para una comprobación profunda del estado, consulte el archivo de configuración en deep-health-check-rbac.yamlel repositorio de CLI. SageMaker HyperPod GitHub

  • job-auto-restart- Esto configura aClusterRole, a ServiceAccount (job-auto-restart) en el espacio de aws-hyperpod nombres y aClusterRoleBinding, para habilitar la función de reinicio automático para los trabajos de PyTorch formación en. SageMaker HyperPod Para obtener más información sobre el archivo RBAC de Kubernetesjob-auto-restart, consulte el archivo de configuración en job-auto-restart-rbac.yamlel repositorio CLI. SageMaker HyperPod GitHub

  • Operador de MPI de Kubeflow: el MPI Operator es un operador de Kubernetes que simplifica la ejecución de cargas de trabajo distribuidas de machine learning (ML) y computación de alto rendimiento (HPC) mediante la interfaz de transferencia de mensajes (MPI) en los clústeres de Kubernetes. Instala MPI Operator v0.5. Se instala en el espacio de nombres mpi-operator.

  • nvidia-device-plugin— Se trata de un complemento para dispositivos de Kubernetes que le permite exponer automáticamente NVIDIA GPUs para su consumo en contenedores de su clúster de Amazon EKS. Permite a Kubernetes asignar y proporcionar acceso a lo solicitado para ese contenedor. GPUs Esto es necesario cuando se utiliza un tipo de instancia con GPU.

  • neuron-device-plugin: se trata de un complemento para dispositivos de Kubernetes que le permite exponer automáticamente chips de AWS Inferentia para que los consuman los contenedores del clúster de Amazon EKS. Permite a Kubernetes acceder a los chips AWS Inferentia de los nodos del clúster y utilizarlos. Esto es necesario cuando se utiliza un tipo de instancia de Neuron.

  • aws-efa-k8s-device-plugin— Se trata de un complemento para dispositivos de Kubernetes que permite el uso de AWS Elastic Fabric Adapter (EFA) en los clústeres de Amazon EKS. El EFA es un dispositivo de red que proporciona una comunicación de baja latencia y alto rendimiento entre las instancias de un clúster. Esto es necesario cuando se utiliza un tipo de instancia compatible con EFA.

Para obtener más información sobre el procedimiento de instalación mediante los gráficos de Helm proporcionados, consulte el archivo README en el repositorio SageMaker HyperPod CLI.