Condividi tramite


StartTask interface

In alcuni casi l'attività di avvio può essere rieseguita anche se il nodo non è stato riavviato. A causa di questo, le attività di avvio devono essere idempotenti e uscire normalmente se la configurazione che sta eseguendo è già stata eseguita. È consigliabile prestare particolare attenzione per evitare di avviare attività che creano processi di interruzione o installano/avviano i servizi dalla directory di lavoro dell'attività di avvio, in quanto in questo modo Batch non sarà in grado di eseguire di nuovo l'attività di avvio.

Proprietà

commandLine

La riga di comando non viene eseguita in una shell e pertanto non può sfruttare le funzionalità della shell, ad esempio l'espansione delle variabili di ambiente. Se si desidera sfruttare tali funzionalità, è necessario richiamare la shell nella riga di comando, ad esempio usando "cmd /c MyCommand" in Windows o "/bin/sh -c MyCommand" in Linux. Obbligatorio se vengono specificate altre proprietà di startTask.

containerSettings

Quando viene specificato, tutte le directory vengono mappate in modo ricorsivo al di sotto del AZ_BATCH_NODE_ROOT_DIR (la radice delle directory di Azure Batch nel nodo) nel contenitore, tutte le variabili di ambiente delle attività vengono mappate nel contenitore e la riga di comando dell'attività viene eseguita nel contenitore.

environmentSettings

Elenco delle impostazioni delle variabili di ambiente per l'attività di avvio.

maxTaskRetryCount

Il servizio Batch ripete un'attività se il relativo codice di uscita è diverso da zero. Si noti che questo valore controlla specificamente il numero di tentativi. Il servizio Batch eseguirà l'attività una volta e quindi ripeterà l'esecuzione fino al limite di tentativi specificato. Ad esempio, se il numero massimo di tentativi è 3, Batch prova l'attività fino a 4 volte (un tentativo iniziale e 3 tentativi). Se il numero massimo di tentativi è 0, il servizio Batch non ritenta l'attività. Se il numero massimo di tentativi è -1, il servizio Batch ritenta l'attività senza limiti. Il valore predefinito è 0

resourceFiles

Elenco di file che il servizio Batch scaricherà nel nodo di calcolo prima di eseguire la riga di comando.

userIdentity

Se omesso, l'attività viene eseguita come utente non amministrativo univoco per l'attività.

waitForSuccess

Se true e l'attività di avvio non riesce in un nodo di calcolo, il servizio Batch ritenta l'attività di avvio fino al numero massimo di tentativi (maxTaskRetryCount). Se l'attività non è ancora stata completata correttamente dopo tutti i tentativi, il servizio Batch contrassegna il nodo di calcolo inutilizzabile e non pianifica le attività. Questa condizione può essere rilevata tramite lo stato del nodo e i dettagli dell'errore di pianificazione. Se false, il servizio Batch non attenderà il completamento dell'attività di avvio. In questo caso, altre attività possono avviare l'esecuzione nel nodo di calcolo mentre l'attività di avvio è ancora in esecuzione; e anche se l'attività di avvio non riesce, le nuove attività continueranno a essere pianificate nel nodo. Il valore predefinito è true.

Dettagli proprietà

commandLine

La riga di comando non viene eseguita in una shell e pertanto non può sfruttare le funzionalità della shell, ad esempio l'espansione delle variabili di ambiente. Se si desidera sfruttare tali funzionalità, è necessario richiamare la shell nella riga di comando, ad esempio usando "cmd /c MyCommand" in Windows o "/bin/sh -c MyCommand" in Linux. Obbligatorio se vengono specificate altre proprietà di startTask.

commandLine?: string

Valore della proprietà

string

containerSettings

Quando viene specificato, tutte le directory vengono mappate in modo ricorsivo al di sotto del AZ_BATCH_NODE_ROOT_DIR (la radice delle directory di Azure Batch nel nodo) nel contenitore, tutte le variabili di ambiente delle attività vengono mappate nel contenitore e la riga di comando dell'attività viene eseguita nel contenitore.

containerSettings?: TaskContainerSettings

Valore della proprietà

environmentSettings

Elenco delle impostazioni delle variabili di ambiente per l'attività di avvio.

environmentSettings?: EnvironmentSetting[]

Valore della proprietà

maxTaskRetryCount

Il servizio Batch ripete un'attività se il relativo codice di uscita è diverso da zero. Si noti che questo valore controlla specificamente il numero di tentativi. Il servizio Batch eseguirà l'attività una volta e quindi ripeterà l'esecuzione fino al limite di tentativi specificato. Ad esempio, se il numero massimo di tentativi è 3, Batch prova l'attività fino a 4 volte (un tentativo iniziale e 3 tentativi). Se il numero massimo di tentativi è 0, il servizio Batch non ritenta l'attività. Se il numero massimo di tentativi è -1, il servizio Batch ritenta l'attività senza limiti. Il valore predefinito è 0

maxTaskRetryCount?: number

Valore della proprietà

number

resourceFiles

Elenco di file che il servizio Batch scaricherà nel nodo di calcolo prima di eseguire la riga di comando.

resourceFiles?: ResourceFile[]

Valore della proprietà

userIdentity

Se omesso, l'attività viene eseguita come utente non amministrativo univoco per l'attività.

userIdentity?: UserIdentity

Valore della proprietà

waitForSuccess

Se true e l'attività di avvio non riesce in un nodo di calcolo, il servizio Batch ritenta l'attività di avvio fino al numero massimo di tentativi (maxTaskRetryCount). Se l'attività non è ancora stata completata correttamente dopo tutti i tentativi, il servizio Batch contrassegna il nodo di calcolo inutilizzabile e non pianifica le attività. Questa condizione può essere rilevata tramite lo stato del nodo e i dettagli dell'errore di pianificazione. Se false, il servizio Batch non attenderà il completamento dell'attività di avvio. In questo caso, altre attività possono avviare l'esecuzione nel nodo di calcolo mentre l'attività di avvio è ancora in esecuzione; e anche se l'attività di avvio non riesce, le nuove attività continueranno a essere pianificate nel nodo. Il valore predefinito è true.

waitForSuccess?: boolean

Valore della proprietà

boolean