View a markdown version of this page

Comprobaciones de estado exhaustivas - 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.

Comprobaciones de estado exhaustivas

SageMaker HyperPod realiza comprobaciones exhaustivas del estado de las instancias del Slurm-orchestrated clúster para garantizar la fiabilidad y la estabilidad del hardware y la infraestructura subyacentes. Las comprobaciones de estado exhaustivas se pueden ejecutar automáticamente cuando se crean o añaden instancias a un clúster (al inicio), o se pueden activar manualmente en cualquier momento (bajo demanda) mediante la StartClusterHealthCheckAPI. Este enfoque proactivo ayuda a identificar y mitigar los posibles problemas a lo largo del ciclo de vida del clúster.

Durante los controles de estado exhaustivos, los nodos afectados se colocan en una reserva de mantenimiento de Slurm para evitar que se programen trabajos en ellos. Una vez superadas todas las comprobaciones, los nodos se liberan de la reserva y pasan a estar disponibles para las cargas de trabajo.

importante

Para utilizar comprobaciones de estado exhaustivas, debe actualizar a la última versión de la AMI. Ejecute UpdateClusterSoftwarepara actualizar a la versión más reciente de la AMI. Si utiliza una versión anterior de la AMI, es posible que las comprobaciones de estado exhaustivas no funcionen según lo esperado.

Tipos de chequeos de estado exhaustivos

SageMaker HyperPod admite dos categorías de controles de estado exhaustivos para los clústeres de Slurm:

  • InstanceStress— Realiza pruebas a nivel de instancia, incluidas pruebas de stress de hardware (CPU, memoria, disco, GPU/PCI verificación), diagnósticos de GPU DCGM y conectividad de bucle invertido EFA. Esto valida el estado del hardware de los nodos individuales.

  • InstanceConnectivity— Realiza pruebas de NCCL (biblioteca de comunicaciones colectivas de NVIDIA) a nivel de clúster en varios nodos para verificar el rendimiento de la comunicación de la GPU entre nodos. Esta comprobación solo se admite en instancias con capacidades de comunicación mediante GPU de varios nodos.

Lista de controles de estado exhaustivos realizados por SageMaker HyperPod

SageMaker HyperPod ejecuta las siguientes comprobaciones de estado exhaustivas.

Instance-level controles de estado profundos (InstanceStress)

Categoría Nombre de la utilidad Compatibilidad de los tipos de instancias Description (Descripción)
Acelerador GPU/NVLink count GPU Verifica los GPU/NVLink recuentos.
Acelerador Diagnóstico de DCGM de nivel 4 GPU Evalúa el estado y la funcionalidad de las GPU de NVIDIA mediante la ejecución de diagnósticos DCGM (administrador de GPU para centros de datos de NVIDIA) del nivel 4, que incluyen pruebas de memoria adicionales. Duración típica: entre 45 y 90 minutos, según el número de GPU.
Network EFA GPU Realiza pruebas de latencia y ancho de banda de bucle invertido EFA en el dispositivo EFA conectado. Duración típica: entre 2 y 5 minutos.

Cluster-level controles de estado profundos () InstanceConnectivity

Categoría Nombre de la utilidad Compatibilidad de los tipos de instancias Description (Descripción)
Acelerador Prueba de NCCL GPU Realiza pruebas de all_reduce rendimiento de la NCCL en varios nodos para verificar el ancho de banda de comunicación de la GPU entre nodos. Duración típica: entre 5 y 15 minutos, según el número de nodos.

On-start controles de estado profundos

On-start las comprobaciones de estado exhaustivas se ejecutan automáticamente cuando las instancias se aprovisionan por primera vez: durante la creación del clúster o cuando se añaden nuevas instancias mediante UpdateCluster. Esto garantiza que todos los nodos pasen la validación del hardware antes de aceptar las cargas de trabajo.

Permitir controles de estado exhaustivos desde el inicio

Para habilitar las comprobaciones de estado exhaustivas al iniciar el clúster, especifica el OnStartDeepHealthChecks parámetro en la configuración del grupo de instancias al crear o actualizar un clúster.

Ejemplo: crea un clúster con comprobaciones de estado exhaustivas al inicio

aws sagemaker create-cluster \ --cluster-name my-slurm-cluster \ --instance-groups '[ { "InstanceGroupName": "controller-group", "InstanceType": "ml.m5.xlarge", "InstanceCount": 1, "LifeCycleConfig": { "SourceS3Uri": "s3://my-bucket/lifecycle-scripts/", "OnCreate": "on_create.sh" }, "ExecutionRole": "arn:aws:iam::111122223333:role/my-role", "ThreadsPerCore": 1 }, { "InstanceGroupName": "worker-group", "InstanceType": "ml.p4d.24xlarge", "InstanceCount": 4, "LifeCycleConfig": { "SourceS3Uri": "s3://my-bucket/lifecycle-scripts/", "OnCreate": "on_create.sh" }, "ExecutionRole": "arn:aws:iam::111122223333:role/my-role", "ThreadsPerCore": 1, "OnStartDeepHealthChecks": ["InstanceStress", "InstanceConnectivity"] } ]' \ --vpc-config '{"SecurityGroupIds":["sg-12345678"],"Subnets":["subnet-12345678"]}'

¿Qué ocurre durante los controles de estado profundos al inicio

Cuando se activan las comprobaciones de estado exhaustivas durante el inicio, se produce el siguiente proceso:

  1. Aprovisionamiento de nodos: se lanzan nuevas instancias y se ejecutan los scripts de ciclo de vida.

  2. Aislamiento de nodos: el agente de HyperPod clúster coloca los nuevos nodos en una reserva de mantenimiento de Slurm (hyperpod-deep-health-check) y los añade a la partición. hyperpod-system-maintenance Los nodos se marcan con la función Slurm. SageMakerDeepHealthCheck:InProgress Esto evita que los trabajos se programen en estos nodos durante las pruebas.

  3. Ejecución de la prueba: las siguientes pruebas se ejecutan en cada nodo como parte de la InstanceStress comprobación:

    • HARDWARE_CHECK: se ejecuta stress-ng para realizar pruebas de stress de CPU, memoria y disco, seguidas de la verificación del recuento de dispositivos PCI y GPU. Duración típica: entre 1 y 2 minutos.

    • DCGM: ejecuta los diagnósticos DCGM de NVIDIA en el nivel 4, incluidas las pruebas de memoria de la GPU. Duración típica: entre 45 y 90 minutos, según el número de GPU.

    • EFA: ejecuta pruebas de latencia y ancho de banda con bucle invertido de la EFA. Duración típica: entre 2 y 5 minutos.

    Si también InstanceConnectivity está habilitada, se ejecuta la siguiente prueba adicional:

    • NCCL: ejecuta pruebas de all_reduce rendimiento de la NCCL en varios nodos para verificar el ancho de banda de comunicación de la GPU entre nodos. Duración típica: entre 5 y 15 minutos, según el número de nodos.

  4. Manejo de resultados:

    • Aprobar: el nodo se elimina de la reserva de mantenimiento, se borra la función de comprobación exhaustiva de su estado y el nodo queda disponible para realizar tareas en la partición asignada.

    • Error: el nodo permanece aislado. SageMaker HyperPod reemplaza automáticamente el nodo averiado y realiza comprobaciones exhaustivas del estado del nodo sustituido.

El clúster pasa a funcionar al menos InService una vez que el nodo controlador esté en ejecución. Los nodos trabajadores muestran DeepHealthCheckInProgress su estado durante las pruebas y pasan a él una Running vez superados.

Supervisión de los controles de estado exhaustivos desde el inicio

Puede supervisar el estado de las comprobaciones de estado exhaustivas al iniciar mediante la API Amazon SageMaker AI o los comandos de Slurm.

Compruebe el estado de los nodos mediante el AWS Command Line Interface

aws sagemaker list-cluster-nodes \ --cluster-name my-slurm-cluster

Los nodos sometidos a controles de estado exhaustivos InstanceStatus.Status se muestran comoDeepHealthCheckInProgress.

Compruebe el estado de Slurm mediante SSM en el nodo controlador

# View node states sinfo -a -N -l # View maintenance reservation scontrol show reservations # View running DHC jobs squeue -a

Los nodos sometidos a un control exhaustivo de estado aparecen en la hyperpod-deep-health-check reserva y en la partición. hyperpod-system-maintenance

Añadir nodos a un clúster con las comprobaciones de estado profundas activadas durante el inicio

Al ampliar un clúster que se ha OnStartDeepHealthChecks configurado, los nodos nuevos se someten automáticamente a exhaustivas comprobaciones de estado antes de aceptar cargas de trabajo. Los nodos existentes y los trabajos en ejecución no se ven afectados.

aws sagemaker update-cluster \ --cluster-name my-slurm-cluster \ --instance-groups '[ { "InstanceGroupName": "controller-group", "InstanceType": "ml.m5.xlarge", "InstanceCount": 1, "LifeCycleConfig": { "SourceS3Uri": "s3://my-bucket/lifecycle-scripts/", "OnCreate": "on_create.sh" }, "ExecutionRole": "arn:aws:iam::111122223333:role/my-role", "ThreadsPerCore": 1 }, { "InstanceGroupName": "worker-group", "InstanceType": "ml.p4d.24xlarge", "InstanceCount": 8, "LifeCycleConfig": { "SourceS3Uri": "s3://my-bucket/lifecycle-scripts/", "OnCreate": "on_create.sh" }, "ExecutionRole": "arn:aws:iam::111122223333:role/my-role", "ThreadsPerCore": 1, "OnStartDeepHealthChecks": ["InstanceStress", "InstanceConnectivity"] } ]'

Los nuevos nodos se aíslan en la reserva de mantenimiento mientras se realizan exhaustivas comprobaciones de estado. Los trabajos que requieren la capacidad adicional de los nuevos nodos esperan a que dichos nodos pasen exhaustivos controles de estado y estén disponibles. Los trabajos que pueden ser satisfechos con los nodos disponibles existentes no se ven afectados.

On-demand controles de salud profundos

On-demand Las comprobaciones de estado exhaustivas permiten activar la validación del hardware en los nodos del clúster existentes en cualquier momento mediante la StartClusterHealthCheckAPI. Esto resulta útil para la validación periódica del estado o ante posibles problemas de hardware.

nota

On-demand las comprobaciones de estado exhaustivas no se admiten en los clústeres con el NodeProvisioningMode valor establecido enContinuous.

Realizar comprobaciones de estado exhaustivas bajo demanda desde la consola

Puede realizar comprobaciones de estado exhaustivas en las instancias del HyperPod clúster directamente desde la consola de SageMaker IA.

Para realizar comprobaciones de estado exhaustivas bajo demanda desde la consola
  1. Abre la consola de SageMaker IA en la consola de SageMaker IA.

  2. En el panel de navegación, en HyperPod, selecciona Clústeres.

  3. Elija el nombre del clúster para abrir la página de detalles del clúster.

  4. En la tabla de instancias, selecciona una o más instancias en las que quieras realizar comprobaciones de estado exhaustivas.

    nota

    Las familias de instancias compatibles incluyen g5, p4 y p5. Non-accelerated las instancias se omiten automáticamente.

  5. Selecciona Acciones y, a continuación, selecciona Ejecutar comprobaciones de estado exhaustivas.

  6. Selecciona Comprobación de tensión, Comprobación de conectividad o ambas:

    • Comprobación de tensión: valida el hardware del acelerador bajo carga (corresponde aInstanceStress).

    • Comprobación de conectividad: valida la comunicación de red entre nodos (corresponde a). InstanceConnectivity

  7. Seleccione Ejecutar comprobaciones de estado.

Un aviso de éxito confirma que las comprobaciones se han iniciado. Las instancias no están disponibles para las cargas de trabajo durante las comprobaciones, que pueden tardar más de una hora. Supervisa el estado de las instancias en la tabla de instancias: muestra la comprobación profunda del estado en curso mientras se está ejecutando. Cuando se detectan problemas y se habilita la recuperación automática, se reinicia o reemplaza SageMaker HyperPod automáticamente las instancias defectuosas.

Activar controles de estado exhaustivos bajo demanda mediante el AWS Command Line Interface

Puede especificar qué grupos de instancias y qué comprobaciones se van a ejecutar. Solo puede estar activa una solicitud de verificación profunda de estado bajo demanda por clúster a la vez.

aws sagemaker start-cluster-health-check \ --cluster-name my-slurm-cluster \ --deep-health-check-configurations '[ { "InstanceGroupName": "worker-group", "DeepHealthChecks": ["InstanceStress", "InstanceConnectivity"] } ]'

Comportamiento con cargas de trabajo en ejecución

Cuando se activan comprobaciones de estado exhaustivas bajo demanda en los nodos que están ejecutando tareas:

  • Los trabajos en ejecución no se interrumpen ni finalizan.

  • La comprobación de estado profunda está en cola y espera a que se complete el trabajo actual. Si el trabajo en ejecución no se completa en 10 minutos, el nodo se omite de la comprobación de estado profunda.

  • Los nodos se colocan en la reserva de mantenimiento para evitar que se programen nuevos trabajos durante las pruebas.

Registros de las comprobaciones de estado exhaustivas

Los siguientes son ejemplos de registros de las comprobaciones de estado SageMaker HyperPod exhaustivas.

Cluster-level logs

Los registros de comprobaciones de estado exhaustivas a nivel de clúster se almacenan en su CloudWatch grupo de registros en. /aws/sagemaker/Clusters/<cluster_name>/<cluster_id>

Los flujos de registros se registran en DeepHealthCheckResults/<log_stream_id>.

Instance-level logs

En cada nodo, los registros de controles de estado exhaustivos se almacenan en. /var/log/aws/clusters/sagemaker-deep-health-check.log

Puede acceder al registro a través de SSM:

aws ssm start-session \ --target "sagemaker-cluster:<cluster_id>_<instance_group>-<instance_id>"

A continuación, consulte el registro:

cat /var/log/aws/clusters/sagemaker-deep-health-check.log

Ejemplo de salida de HARDWARE_CHECK

2026-03-29T18:03:14Z info Executing Hardware stress check with command: stress-ng 2026-03-29T18:04:20Z info stress-ng success 2026-03-29T18:04:20Z info GpuPci Count check success

Ejemplo de salida DCGM

2026-03-29T18:35:02Z info DCGM diagnostic health summary: dcgmCheckLevel: 4 dcgmVersion: 3.3.7 gpuDriverVersion: 535.183.01 gpuDeviceIds: [2237] replacementRequired: false rebootRequired: false

Ejemplo de salida EFA

2026-03-29T18:36:28Z info EFA Loopback check passed for device: rdmap0s29 MaxBw: 58.59, AvgBw: 32.42, MaxTypicalLat: 30.87, AvgLat: 21.63

Ejemplo de resultado de un control de estado exhaustivo

{ "level": "error", "ts": "2026-03-29T19:15:22Z", "msg": "Encountered FaultyInstance. Replace the Instance. Region: us-west-2, InstanceType: ml.g5.8xlarge. ERROR: Bandwidth has less than threshold: Expected minimum threshold: 80, NCCL Test output Bw: 30" }

Auto-resume comportamiento con controles de estado exhaustivos

Si no se habilitan las comprobaciones de estado exhaustivas, cuando se reemplaza un nodo durante la reanudación automática, el nodo de reemplazo se agrega inmediatamente al clúster y el trabajo que se reanuda automáticamente se puede programar en él de inmediato.

Con las comprobaciones de estado exhaustivas activadas, el nodo de reemplazo debe superar todas las comprobaciones de estado exhaustivas configuradas antes de que esté disponible. Sin embargo, el trabajo que se reanuda automáticamente no tiene que esperar al nodo de reemplazo; se puede programar en cualquier otro nodo disponible del clúster. El trabajo solo espera si no hay otros nodos disponibles.

Consideraciones adicionales

  • Las comprobaciones de estado profundas requieren la última versión de la AMI. Ejecute UpdateClusterSoftwarepara actualizar el clúster antes de activar las comprobaciones de estado exhaustivas.

  • On-demand las comprobaciones de estado profundas no se admiten en los clústeres con el NodeProvisioningMode valor establecido enContinuous.

  • Los controles de estado exhaustivos solo se ejecutan en los nodos de trabajo. El controlador y los nodos de inicio de sesión no están sujetos a controles de estado exhaustivos.

  • Solo puede estar activa una solicitud de control de estado exhaustivo bajo demanda por clúster a la vez.

  • Si una comprobación bajo demanda desencadena el reinicio o el reemplazo de un nodo, el nodo de reemplazo solo ejecuta comprobaciones de estado exhaustivas si OnStartDeepHealthChecks está habilitado en el grupo de instancias. De lo contrario, el nodo vuelve a unirse sin volver a realizar comprobaciones de estado exhaustivas.