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.
Uso de la API REST de Slurm para la gestión de trabajos en PCS AWS
Descripción general de la API REST de Slurm
La API REST de Slurm proporciona acceso programático a las funciones de administración de clústeres a través de solicitudes HTTP. Comprender estas características clave le ayudará a utilizar la API con PCS de forma eficaz: AWS
Protocolo de acceso: la API utiliza HTTP (no HTTPS) para la comunicación dentro de la red privada del clúster.
Detalles de la conexión: accede a la API mediante la dirección IP privada del clúster y el
slurmrestdpuerto (normalmente el 6820). El formato de URL base completo eshttp://.<privateIpAddress>:6820Control de versiones de la API: la versión de la API corresponde a su instalación de Slurm. Para Slurm 25.05, utilice la versión v0.0.43. El número de versión cambia con cada versión de Slurm. Puede encontrar las versiones de API actualmente compatibles en las notas de la versión de Slurm
. Estructura de URL: La estructura de URL de la API REST de Slurm es.
http://Puede encontrar información detallada sobre el uso de los puntos finales de la API REST en la documentación de Slurm.<privateIpAddress>:<port>/<api-version>/<endpoint>
Requisitos previos
Antes de usar la API REST de Slurm, asegúrese de tener:
-
Configuración del clúster: clúster de AWS PCS con Slurm 25.05+ y la API REST habilitadas.
-
Autenticación: token JWT válido con las declaraciones de identidad de usuario adecuadas.
-
Acceso a la red: conectividad dentro de la VPC del clúster con un grupo de seguridad que permita el puerto 6820.
Procedimiento
Para enviar un trabajo mediante la API REST
-
Cree una solicitud de envío de trabajos con los parámetros necesarios:
{ "job": { "name": "my-job", "partition": "compute", "nodes": 1, "tasks": 1, "script": "#!/bin/bash\necho 'Hello from Slurm REST API'", "environment": ["PATH=/usr/local/bin:/usr/bin:/bin"] } } -
Envíe el trabajo mediante una solicitud HTTP POST:
curl -X POST \ -H "Authorization: Bearer<jwt>" \ -H "Content-Type: application/json" \ -d '<job-json>' \ https://<privateIpAddress>:6820/slurm/v0.0.43/job/submit -
Anote el ID de trabajo que aparece en la respuesta para fines de supervisión.
Para supervisar el estado del trabajo
-
Obtenga información sobre un trabajo específico:
curl -X GET -H "Authorization: Bearer<jwt>" \ https://<privateIpAddress>:6820/slurm/v0.0.43/job/<job-id> -
Enumere todos los trabajos del usuario autenticado:
curl -X GET -H "Authorization: Bearer<jwt>" \ https://<privateIpAddress>:6820/slurm/v0.0.43/jobs
Para cancelar un trabajo
-
Envíe una solicitud de ELIMINACIÓN para cancelar un trabajo específico:
curl -X DELETE -H "Authorization: Bearer<jwt>" \ https://<privateIpAddress>:6820/slurm/v0.0.43/job/<job-id>