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.
Personalice SageMaker HyperPod los clústeres mediante scripts de ciclo de vida
SageMaker HyperPod siempre ofrece up-and-running clústeres de procesamiento, que son altamente personalizables, ya que puede escribir scripts de ciclo de vida que indiquen SageMaker HyperPod cómo configurar los recursos del clúster. Los siguientes temas son prácticas recomendadas para preparar scripts de ciclo de vida para configurar SageMaker HyperPod clústeres con herramientas de gestión de cargas de trabajo de código abierto.
En los siguientes temas, se analizan en profundidad las mejores prácticas para preparar scripts de ciclo de vida para configurar las configuraciones de Slurm. SageMaker HyperPod
Descripción general de alto nivel
El siguiente procedimiento es el flujo principal de aprovisionamiento de un HyperPod clúster y su configuración con Slurm. Los pasos se ordenan siguiendo un enfoque de abajo hacia arriba.
-
Planifique cómo quiere crear los nodos de Slurm en un clúster. HyperPod Por ejemplo, si quieres configurar dos nodos de Slurm, tendrás que configurar dos grupos de instancias en un clúster. HyperPod
-
Prepara un
provisioning_parameters.json
archivo, que es un. Formulario de configuración para aprovisionar nodos de Slurm en HyperPodprovisioning_parameters.json
debe contener la información de configuración del nodo de Slurm que se va a aprovisionar en el clúster. HyperPod Esto debería reflejar el diseño de los nodos de Slurm del paso 1. -
Prepare un conjunto de scripts de ciclo de vida para configurar Slurm, HyperPod instalar paquetes de software y configurar un entorno en el clúster para su caso de uso. Debe estructurar los scripts del ciclo de vida para que se ejecuten colectivamente en orden en un script de Python central (
lifecycle_script.py
) y escribir un script de shell de punto de entrada (on_create.sh
) para ejecutar el script de Python. El script de shell de punto de entrada es lo que debe proporcionar a una solicitud de creación de HyperPod clústeres más adelante en el paso 5.Además, tenga en cuenta que debe escribir los scripts para esperar
resource_config.json
que se generen HyperPod durante la creación del clúster.resource_config.json
contiene información sobre los recursos del HyperPod clúster, como las direcciones IP, los tipos de instancias yARNs, y es lo que debe usar para configurar Slurm. -
Reúna todos los archivos de los pasos anteriores en una carpeta.
└── lifecycle_files // your local folder ├── provisioning_parameters.json ├── on_create.sh ├── lifecycle_script.py └── ... // more setup scrips to be fed into lifecycle_script.py
-
Cargue todos los archivos en un bucket de S3. Copie y conserve la ruta del depósito de S3. Tenga en cuenta que debe crear una ruta de bucket de S3 empezando por,
sagemaker-
ya que tiene que elegir una conexión IAMrol para SageMaker HyperPod con AmazonSageMakerClusterInstanceRolePolicy, que solo permite las rutas de bucket de S3 que comiencen con el prefijosagemaker-
. El siguiente comando es un ejemplo de comando para cargar todos los archivos en un bucket de S3.aws s3 cp --recursive
./lifecycle_files
s3://sagemaker-hyperpod-lifecycle/src
-
Prepare una solicitud HyperPod de creación de clústeres.
-
Opción 1: Si utiliza el AWS CLI, escriba una solicitud de creación de clústeres en el JSON formato (
create_cluster.json
) siguiendo las instrucciones que se indican enCree un clúster nuevo. -
Opción 2: Si utiliza la interfaz de usuario de la SageMaker consola, rellene el formulario de solicitud de creación de un clúster en la interfaz de usuario de la HyperPod consola siguiendo las instrucciones que se indican enCrea un SageMaker HyperPod clúster.
En esta etapa, asegúrate de crear grupos de instancias con la misma estructura que planeaste en los pasos 1 y 2. Además, asegúrate de especificar el depósito de S3 del paso 5 en los formularios de solicitud.
-
-
Envíe la solicitud de creación del clúster. HyperPod aprovisiona un clúster en función de la solicitud y, a continuación, crea un
resource_config.json
archivo en las instancias del HyperPod clúster y configura Slurm en el clúster ejecutando los scripts del ciclo de vida.
En los siguientes temas se explica y profundiza en los detalles sobre cómo organizar los archivos de configuración y los scripts del ciclo de vida para que funcionen correctamente durante la creación del HyperPod clúster.
Temas
- Comience con los scripts básicos del ciclo de vida proporcionados por HyperPod
- Qué configuraciones particulares se HyperPod administran en los archivos de configuración de Slurm
- Monta Amazon FSx for Lustre en un clúster HyperPod
- Valide los archivos JSON de configuración antes de crear un clúster de Slurm en HyperPod
- Valide el tiempo de ejecución antes de ejecutar cargas de trabajo de producción en un clúster de Slurm en HyperPod
- Desarrolle scripts de ciclo de vida de forma interactiva en un nodo de clúster HyperPod
- Actualice un clúster con scripts de ciclo de vida nuevos o actualizados