View a markdown version of this page

Domande frequenti sull'API REST di Slurm in AWS 2 PEZZI - AWS PEZZI

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à.

Domande frequenti sull'API REST di Slurm in AWS 2 PEZZI

Questa sezione risponde alle domande frequenti sull'API REST Slurm in AWS PCS.

Cos'è l'API REST di Slurm?

L'API REST di Slurm è un'interfaccia HTTP che consente di interagire con il gestore del carico di lavoro Slurm in modo programmatico. È possibile utilizzare metodi HTTP standard come GET, POST e DELETE per inviare lavori, monitorare lo stato del cluster e gestire le risorse senza richiedere l'accesso da riga di comando al cluster.

Posso usare i token generati da? scontrol token

No, lo standard scontrol token output non è compatibile con AWS PCS. L'API REST PCS Slurm richiede token JWT arricchiti contenenti dichiarazioni di identità specifiche che includono username (sun), ID utente POSIX () e ID di uid gruppo (). gids I token Slurm standard non dispongono di queste dichiarazioni obbligatorie e verranno rifiutati dall'API.

Posso accedere all'API dall'esterno del mio VPC?

No, l'endpoint dell'API REST è accessibile solo dall'interno del tuo VPC utilizzando l'indirizzo IP privato del controller Slurm. Per abilitare l'accesso esterno, implementa AWS servizi come Application Load Balancer con VPC Link, API Gateway o stabilisci connessioni peering o VPN VPC per una connettività sicura.

Perché l'API utilizza HTTP anziché HTTPS?

L'API REST di Slurm è concepita per essere un endpoint interno all'interno della rete privata del cluster. Per le implementazioni di produzione che richiedono la crittografia, puoi implementare la SSL/TLS terminazione a un livello superiore nella tua architettura, ad esempio tramite un gateway API, un load balancer o un proxy inverso.

Come posso controllare l'accesso all'API REST?

Configura le regole del gruppo di sicurezza del cluster per limitare l'accesso alla porta 6820 sul controller Slurm. Imposta regole in entrata per consentire connessioni solo da intervalli IP affidabili o da fonti specifiche all'interno del tuo VPC, bloccando l'accesso non autorizzato all'endpoint API.

Come faccio a ruotare la chiave di firma JWT?

Metti il tuo cluster in modalità di manutenzione senza istanze attive, quindi avvia la rotazione delle chiavi tramite Secrets Manager. AWS Al termine della rotazione, riattiva le code. Tutti i token JWT esistenti non saranno più validi e dovranno essere rigenerati utilizzando la nuova chiave di firma di Secrets Manager.

Ho bisogno che l'account Slurm sia abilitato per utilizzare l'API REST?

No, la contabilità Slurm non è richiesta per le operazioni di base dell'API REST come l'invio e il monitoraggio dei lavori. Tuttavia, l'intero /slurmdb endpoint richiede che la contabilità sia attiva.

Quali strumenti di terze parti funzionano con l'API REST AWS PCS?

Molti client Slurm REST API esistenti dovrebbero funzionare con AWS PCS, tra cui Slurm Exporter for Prometheus e applicazioni personalizzate che seguono il formato API REST SlurmWeb standard di Slurm. Tuttavia, gli strumenti che si basano sull'autenticazione dovranno essere modificati scontrol token per funzionare con i requisiti PCS JWT. AWS

Sono previsti costi aggiuntivi per l'utilizzo dell'API REST?

No, non sono previsti costi aggiuntivi per l'attivazione o l'utilizzo della funzionalità REST API di Slurm. Come di consueto, paghi solo le risorse del cluster sottostante.

Come posso risolvere i problemi relativi all'API REST?
  • Problemi di connettività di rete

    Se non riesci a raggiungere l'endpoint API, visualizzerai dei timeout di connessione o degli errori di «connessione rifiutata» quando effettui richieste HTTP al controller del cluster.

    Cosa fare: verifica che il client si trovi nello stesso VPC o abbia un routing di rete corretto e conferma che il tuo gruppo di sicurezza consenta il traffico HTTP sulla porta 6820 dall'IP o dalla sottorete di origine.

  • Problemi di autenticazione REST di Slurm

    Se il token JWT non è valido, scaduto o firmato in modo errato, le richieste API restituiranno «Errore di autenticazione del protocollo» nel campo degli errori della risposta.

    Esempio di messaggio di errore:

    { "errors": [ { "description": "Batch job submission failed", "error_number": 1007, "error": "Protocol authentication error", "source": "slurm_submit_batch_job()" } ] }

    Cosa fare: controlla che il token JWT sia formattato correttamente, non scaduto e firmato con la chiave corretta di Secrets Manager. Verifica che il token sia formato correttamente e includa le dichiarazioni richieste e che tu stia utilizzando il formato di intestazione di autenticazione corretto.

  • Impossibile eseguire il processo dopo l'invio

    Se il token JWT è valido ma contiene una struttura o un contenuto interno errati, i lavori potrebbero essere entrati in uno stato di pausa (PD) con codice motivo. JobAdminHead scontrol show job <job-id>Usalo per ispezionare il lavoro: vedraiJobState=PENDING, Reason=JobHeldAdmin, e. SystemComment=slurm_cred_create failure, holding job

    Cosa fare: La causa principale potrebbe essere costituita da valori errati in JWT. Verifica che il token sia strutturato correttamente e includa i claim richiesti secondo la documentazione PCS.

  • Problemi di autorizzazione alla directory di lavoro

    Se l'identità utente specificata nel JWT non dispone dei permessi di scrittura nella directory di lavoro del lavoro, il lavoro avrà esito negativo con errori di autorizzazione, simili all'utilizzo sbatch --chdir con una directory inaccessibile.

    Cosa fare: assicurati che l'utente specificato nel token JWT disponga delle autorizzazioni appropriate per la directory di lavoro del lavoro.

  • Hai ancora problemi?

    1. Consulta la documentazione di SchedMD sulle specifiche dell'API REST.

    2. Controlla i log del controller Slurm per informazioni più dettagliate sugli errori (vedi Registri dell'utilità di pianificazione in PCS AWS per maggiori dettagli).