View a markdown version of this page

Controlli dell’integrità approfonditi - Amazon SageMaker AI

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Controlli dell’integrità approfonditi

SageMaker HyperPod esegue controlli approfonditi sullo stato delle istanze del Slurm-orchestrated cluster per garantire l'affidabilità e la stabilità dell'hardware e dell'infrastruttura sottostanti. I controlli approfonditi dello stato possono essere eseguiti automaticamente quando le istanze vengono create o aggiunte a un cluster (all'avvio), oppure è possibile attivarli manualmente in qualsiasi momento (su richiesta) utilizzando l'API. StartClusterHealthCheck Questo approccio proattivo aiuta a identificare e mitigare potenziali problemi durante l'intero ciclo di vita del cluster.

Durante i controlli di integrità approfonditi, i nodi interessati vengono inseriti in una riserva di manutenzione Slurm per evitare che vengano pianificati lavori su di essi. Una volta superati tutti i controlli, i nodi vengono liberati dalla prenotazione e diventano disponibili per i carichi di lavoro.

Importante

Per utilizzare i controlli di integrità approfonditi, è necessario eseguire l'aggiornamento alla versione AMI più recente. Esegui l'aggiornamento UpdateClusterSoftwareall'ultima versione dell'AMI. Se utilizzi una versione dell'AMI precedente, i controlli di integrità approfonditi potrebbero non funzionare come previsto.

Tipi di controlli sanitari approfonditi

SageMaker HyperPod supporta due categorie di controlli di integrità approfonditi per i cluster Slurm:

  • InstanceStress— Esegue test a livello di istanza, tra cui test di stress hardware (CPU, memoria, disco, GPU/PCI verifica), diagnostica GPU DCGM e connettività di loopback EFA. In questo modo viene convalidato lo stato dell'hardware dei singoli nodi.

  • InstanceConnectivity— Esegue test NCCL (NVIDIA Collective Communications Library) a livello di cluster su più nodi per verificare le prestazioni di comunicazione GPU tra nodi. Questo controllo è supportato solo su istanze con funzionalità di comunicazione GPU multinodo.

Elenco dei controlli sanitari approfonditi effettuati da SageMaker HyperPod

SageMaker HyperPod esegue i seguenti controlli sanitari approfonditi.

Instance-level controlli sanitari approfonditi (InstanceStress)

Categoria Nome dell’utilità Compatibilità del tipo di istanza Description
Accelerator GPU/NVLink count GPU Verifica i GPU/NVLink conteggi.
Accelerator Diagnostica DCGM di livello 4 GPU Valuta l’integrità e la funzionalità delle GPU NVIDIA eseguendo la diagnostica DCGM (NVIDIA Data Center GPU Manager) di livello 4, che include test di memoria aggiuntivi. Durata tipica: ~45-90 minuti a seconda del numero di GPU.
Rete EFA GPU Esegue test di latenza e larghezza di banda di loopback EFA sul dispositivo EFA collegato. Durata tipica: ~2-5 minuti.

Cluster-level controlli sanitari approfonditi () InstanceConnectivity

Categoria Nome dell’utilità Compatibilità del tipo di istanza Description
Accelerator Test NCCL GPU Esegue test all_reduce delle prestazioni NCCL su più nodi per verificare la larghezza di banda di comunicazione della GPU tra i nodi. Durata tipica: ~5-15 minuti a seconda del numero di nodi.

On-start controlli sanitari approfonditi

On-start i controlli di integrità approfonditi vengono eseguiti automaticamente quando le istanze vengono fornite per la prima volta, durante la creazione del cluster o quando vengono aggiunte nuove istanze tramite. UpdateCluster Ciò garantisce che ogni nodo superi la convalida hardware prima di accettare carichi di lavoro.

Abilitazione di controlli sanitari approfonditi all'avvio

Per abilitare i controlli di integrità approfonditi all'avvio, specifica il OnStartDeepHealthChecks parametro nella configurazione del gruppo di istanze durante la creazione o l'aggiornamento di un cluster.

Esempio: crea un cluster con controlli di integrità approfonditi all'avvio

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"]}'

Cosa succede durante i controlli sanitari approfonditi all'avvio

Quando i controlli sanitari approfonditi all'avvio sono abilitati, si verifica il seguente processo:

  1. Provisioning dei nodi: vengono lanciate nuove istanze ed eseguiti gli script del ciclo di vita.

  2. Isolamento dei nodi: l'agente del HyperPod cluster inserisce nuovi nodi in una prenotazione di manutenzione Slurm (hyperpod-deep-health-check) e li aggiunge alla partizione. hyperpod-system-maintenance I nodi sono contrassegnati con la funzione Slurm. SageMakerDeepHealthCheck:InProgress Ciò impedisce la pianificazione dei lavori su questi nodi durante il test.

  3. Esecuzione del test: i seguenti test vengono eseguiti su ciascun nodo come parte del InstanceStress controllo:

    • HARDWARE_CHECK: viene eseguito stress-ng per i test di stress di CPU, memoria e disco, seguiti dalla verifica del conteggio dei dispositivi GPU e PCI. Durata tipica: ~1-2 minuti.

    • DCGM: esegue la diagnostica NVIDIA DCGM al livello 4, inclusi i test della memoria GPU. Durata tipica: ~45-90 minuti a seconda del numero di GPU.

    • EFA: esegue test di latenza e larghezza di banda di loopback EFA. Durata tipica: ~2-5 minuti.

    Se InstanceConnectivity è inoltre abilitato, viene eseguito il seguente test aggiuntivo:

    • NCCL: esegue test all_reduce delle prestazioni NCCL su più nodi per verificare la larghezza di banda di comunicazione della GPU tra i nodi. Durata tipica: ~5-15 minuti a seconda del numero di nodi.

  4. Gestione dei risultati:

    • Pass: il nodo viene rimosso dalla prenotazione di manutenzione, la funzionalità di controllo approfondito dello stato di salute viene disattivata e il nodo diventa disponibile per i lavori nella partizione assegnata.

    • Fallimento: il nodo rimane isolato. SageMaker HyperPod sostituisce automaticamente il nodo guasto ed esegue controlli approfonditi sullo stato del nodo sostitutivo.

Il cluster passa almeno InService una volta al nodo del controller. I nodi di lavoro mostrano DeepHealthCheckInProgress lo stato durante il test e la transizione a Running dopo il superamento.

Monitoraggio dei controlli sanitari approfonditi all'avvio

Puoi monitorare lo stato dei controlli sanitari approfonditi all'avvio utilizzando l'API Amazon SageMaker AI o i comandi Slurm.

Controlla lo stato del nodo utilizzando il AWS Command Line Interface

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

I nodi sottoposti a controlli di integrità approfonditi vengono visualizzati InstanceStatus.Status comeDeepHealthCheckInProgress.

Controlla lo stato di Slurm tramite SSM sul nodo controller

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

I nodi sottoposti a un controllo approfondito dello stato vengono visualizzati nella hyperpod-deep-health-check prenotazione e nella partizione. hyperpod-system-maintenance

Aggiungere nodi a un cluster con controlli di integrità approfonditi all'avvio abilitati

Quando si amplia un cluster già OnStartDeepHealthChecks configurato, i nuovi nodi vengono automaticamente sottoposti a controlli di integrità approfonditi prima di accettare i carichi di lavoro. I nodi esistenti e i processi in esecuzione non sono interessati.

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"] } ]'

I nuovi nodi sono isolati nella riserva di manutenzione durante l'esecuzione di controlli di integrità approfonditi. I lavori che richiedono la capacità aggiuntiva dei nuovi nodi attendono che tali nodi superino i controlli di integrità approfonditi e diventino disponibili. I lavori che possono essere soddisfatti dai nodi disponibili esistenti non sono interessati.

On-demand controlli sanitari approfonditi

On-demand i controlli di integrità approfonditi consentono di attivare la convalida dell'hardware sui nodi del cluster esistenti in qualsiasi momento utilizzando l'StartClusterHealthCheckAPI. Ciò è utile per la convalida periodica dello stato o in caso di sospetti problemi hardware.

Nota

On-demand i controlli di integrità approfonditi non sono supportati sui cluster impostati su. NodeProvisioningMode Continuous

Esecuzione di controlli di integrità approfonditi su richiesta dalla console

Puoi eseguire controlli approfonditi sullo stato delle istanze HyperPod del cluster direttamente dalla console SageMaker AI.

Per eseguire controlli approfonditi sullo stato di salute su richiesta dalla console
  1. Apri la console SageMaker AI nella console SageMaker AI.

  2. Nel riquadro di navigazione, sotto HyperPod, scegli Clusters.

  3. Scegli il nome del cluster per aprire la pagina dei dettagli del cluster.

  4. Nella tabella Istanze, seleziona una o più istanze su cui desideri eseguire controlli approfonditi dello stato.

    Nota

    Le famiglie di istanze supportate includono g5, p4 e p5. Non-accelerated le istanze vengono ignorate automaticamente.

  5. Scegli Azioni, quindi scegli Esegui controlli di integrità approfonditi.

  6. Seleziona Stress check, Connectivity check o entrambi:

    • Stress check: convalida l'hardware dell'acceleratore sotto carico (corrisponde aInstanceStress).

    • Controllo della connettività: convalida la comunicazione di rete tra i nodi (corrisponde a). InstanceConnectivity

  7. Scegli Esegui controlli sanitari.

Un banner di successo conferma che i controlli sono stati avviati. Le istanze non sono disponibili per i carichi di lavoro durante i controlli, che possono richiedere più di un'ora. Monitora lo stato dell'istanza nella tabella Istanze: mostra il Deep Health Check in corso durante l'esecuzione. Quando vengono rilevati problemi e il ripristino automatico è abilitato, riavvia o sostituisce SageMaker HyperPod automaticamente le istanze difettose.

Attivazione di controlli sanitari approfonditi su richiesta utilizzando il AWS Command Line Interface

È possibile specificare quali gruppi di istanze e quali controlli eseguire. Può essere attiva solo una richiesta di controllo approfondito dello stato su richiesta per cluster alla volta.

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

Comportamento con i carichi di lavoro in esecuzione

Quando vengono attivati controlli di integrità approfonditi su richiesta sui nodi che eseguono processi:

  • I lavori in esecuzione non vengono interrotti o terminati.

  • Il controllo approfondito dello stato è in coda e attende il completamento del lavoro corrente. Se il processo in esecuzione non viene completato entro 10 minuti, il nodo viene escluso dal controllo di integrità approfondito.

  • I nodi vengono inseriti nella riserva di manutenzione per impedire la pianificazione di nuovi lavori durante il test.

Log dei controlli dell’integrità approfonditi

Di seguito sono riportati alcuni esempi di log tratti dai controlli sanitari SageMaker HyperPod approfonditi.

Cluster-level logs

I log dei controlli sanitari approfonditi a livello di cluster sono archiviati nel gruppo di log in. CloudWatch /aws/sagemaker/Clusters/<cluster_name>/<cluster_id>

I flussi di log vengono registrati in DeepHealthCheckResults/<log_stream_id>.

Instance-level logs

Su ogni nodo, i log dei controlli sanitari approfonditi sono archiviati in. /var/log/aws/clusters/sagemaker-deep-health-check.log

È possibile accedere al registro tramite SSM:

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

Quindi visualizza il registro:

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

Esempio di output 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

Esempio di uscita 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

Esempio di output 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

Esempio di risultato di un controllo approfondito dello stato di salute

{ "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 comportamento con controlli sanitari approfonditi

Se non sono abilitati controlli di integrità approfonditi, quando un nodo viene sostituito durante la ripresa automatica, il nodo sostitutivo viene immediatamente aggiunto al cluster e il processo ripreso automaticamente può essere pianificato immediatamente su di esso.

Con i controlli di integrità approfonditi abilitati, il nodo sostitutivo deve superare tutti i controlli di integrità approfonditi configurati prima di diventare disponibile. Tuttavia, il processo ripreso automaticamente non deve attendere il nodo sostitutivo: può essere pianificato su qualsiasi altro nodo disponibile nel cluster. Il processo attende solo se non sono disponibili altri nodi.

Ulteriori considerazioni

  • I controlli di integrità approfonditi richiedono la versione AMI più recente. Esegui UpdateClusterSoftwareper aggiornare il cluster prima di abilitare i controlli approfonditi dello stato.

  • On-demand i controlli di integrità approfonditi non sono supportati sui cluster NodeProvisioningMode impostati su. Continuous

  • I controlli di integrità approfonditi vengono eseguiti solo sui nodi di lavoro. I controller e i nodi di accesso non sono soggetti a controlli sanitari approfonditi.

  • Può essere attiva solo una richiesta di controllo approfondito dello stato su richiesta per cluster alla volta.

  • Se un controllo su richiesta attiva il riavvio o la sostituzione del nodo, il nodo sostitutivo esegue controlli approfonditi dello stato solo se OnStartDeepHealthChecks è abilitato nel gruppo di istanze. In caso contrario, il nodo si ricongiunge senza eseguire nuovamente i controlli di integrità approfonditi.