View a markdown version of this page

Ciclo di vita dei job per i job MNP - AWS Batch

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

Ciclo di vita dei job per i job MNP

Quando si invia un job parallelo a più nodi, il job entra nello stato. SUBMITTED Quindi, il processo attende il completamento di eventuali dipendenze tra processi. Anche il lavoro passa allo stato. RUNNABLE Infine, effettua il AWS Batch provisioning della capacità dell'istanza necessaria per eseguire il job e avvia queste istanze.

Ogni processo parallelo a più nodi contiene un nodo principale. Il nodo principale è una singola sottoattività che AWS Batch monitora per determinare il risultato del job multinodo inviato. Il nodo principale viene avviato prima e passa allo stato STARTING. Il valore di timeout specificato nel attemptDurationSeconds parametro si applica all'intero processo e non ai nodi.

Quando il nodo principale raggiunge RUNNING lo stato dopo l'esecuzione del contenitore del nodo, i nodi secondari vengono avviati e anch'essi passano allo STARTING stato. I nodi figlio si presentano in ordine casuale. Non ci sono garanzie sui tempi e sull'ordine di avvio del nodo secondario. Per garantire che tutti i nodi dei job siano nello RUNNING stato successivo all'esecuzione del contenitore del nodo, il codice dell'applicazione può interrogare l' AWS Batch API per ottenere le informazioni sul nodo principale e sul nodo figlio. In alternativa, il codice dell'applicazione può attendere che tutti i nodi siano online prima di avviare qualsiasi attività di elaborazione distribuita. L'indirizzo IP privato del nodo principale è disponibile come la variabile d'ambiente AWS_BATCH_JOB_MAIN_NODE_PRIVATE_IPV4_ADDRESS in ogni nodo figlio. Il tuo codice dell'applicazione può utilizzare queste informazioni per coordinare e comunicare i dati tra ciascuna operazione.

Quando i nodi singoli escono, passano allo stato SUCCEEDED o FAILED, a seconda del loro codice di uscita. Se il nodo principale esce, il processo viene considerato completo e tutti i nodi figlio vengono arrestati. Se un nodo figlio muore, AWS Batch non intraprende alcuna azione sugli altri nodi del lavoro. Se non desiderate che il processo continui con un numero ridotto di nodi, dovete includerlo nel codice dell'applicazione. In questo modo si interrompe o si annulla il lavoro.