BatchStartTaskOutput interface
O lote tentará novamente Tarefas quando uma operação de recuperação for acionada em um nó. Exemplos de operações de recuperação incluem (mas não estão limitados a) quando um nó não íntegro é reinicializado ou um nó de computação desaparece devido a falha do host. As novas tentativas devido a operações de recuperação são independentes e não são contabilizadas em relação ao maxTaskRetryCount. Mesmo se maxTaskRetryCount for 0, pode ocorrer uma nova tentativa interna devido a uma operação de recuperação. Por isso, todas as tarefas devem ser idempotentes. Isso significa que as tarefas precisam tolerar ser interrompidas e reiniciadas sem causar corrupção ou dados duplicados. A prática recomendada para tarefas de longa duração é usar alguma forma de ponto de verificação. Em alguns casos, o StartTask pode ser executado novamente mesmo que o nó de computação não tenha sido reinicializado. Cuidado especial deve ser tomado para evitar StartTasks que criam processos separatistas ou instalam/iniciam serviços a partir do diretório de trabalho StartTask, pois isso impedirá que o Batch possa executar novamente o StartTask.
Propriedades
| command |
A linha de comando do StartTask. A linha de comando não é executada sob um shell e, portanto, não pode aproveitar os recursos do shell, como a expansão da variável de ambiente. Se você quiser aproveitar esses recursos, você deve invocar o shell na linha de comando, por exemplo, usando "cmd /c MyCommand" no Windows ou "/bin/sh -c MyCommand" no Linux. Se a linha de comando se referir a caminhos de arquivo, ela deverá usar um caminho relativo (relativo ao diretório de trabalho Tarefa) ou usar a variável de ambiente Batch provided (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables). |
| container |
As configurações para o contêiner sob o qual o StartTask é executado. Quando isso é especificado, todos os diretórios recursivamente abaixo do AZ_BATCH_NODE_ROOT_DIR (a raiz dos diretórios do Lote do Azure no nó) são mapeados no contêiner, todas as variáveis de ambiente de Tarefa são mapeadas no contêiner e a linha de comando Tarefa é executada no contêiner. Os arquivos produzidos no contêiner fora de AZ_BATCH_NODE_ROOT_DIR podem não ser refletidos no disco host, o que significa que as APIs de arquivo em lote não poderão acessar esses arquivos. |
| environment |
Uma lista de configurações de variáveis de ambiente para o StartTask. |
| max |
O número máximo de vezes que a Tarefa pode ser repetida. O serviço de lote tenta novamente uma tarefa se seu código de saída for diferente de zero. Observe que esse valor controla especificamente o número de tentativas. O serviço de lote tentará a tarefa uma vez e, em seguida, poderá tentar novamente até esse limite. Por exemplo, se a contagem máxima de tentativas for 3, o Batch tentará a Tarefa até 4 vezes (uma tentativa inicial e 3 tentativas). Se a contagem máxima de tentativas for 0, o serviço Batch não repetirá a Tarefa. Se a contagem máxima de tentativas for -1, o serviço em lote repetirá a tarefa sem limite, no entanto, isso não é recomendado para uma tarefa inicial ou qualquer tarefa. O valor padrão é 0 (sem tentativas). |
| resource |
Uma lista de arquivos que o serviço em lote baixará para o nó de computação antes de executar a linha de comando. Há um tamanho máximo para a lista de arquivos de recursos. Quando o tamanho máximo for excedido, a solicitação falhará e o código de erro de resposta será RequestEntityTooLarge. Se isso ocorrer, a coleção de ResourceFiles deve ser reduzida em tamanho. Isso pode ser feito usando arquivos .zip, pacotes de aplicativos ou contêineres do Docker. Os arquivos listados sob este elemento estão localizados no diretório de trabalho da tarefa. |
| user |
A identidade do usuário sob a qual o StartTask é executado. Se omitida, a Tarefa é executada como um usuário não administrativo exclusivo para a Tarefa. |
| wait |
Se o serviço em lote deve aguardar a conclusão bem-sucedida do StartTask (ou seja, sair com o código de saída 0) antes de agendar quaisquer tarefas no nó de computação. Se true e o StartTask falhar em um nó, o serviço Batch tentará novamente o StartTask até sua contagem máxima de tentativas (maxTaskRetryCount). Se a Tarefa ainda não tiver sido concluída com êxito após todas as tentativas, o serviço Lote marcará o Nó como inutilizável e não agendará Tarefas para ele. Esta condição pode ser detetada através do estado do nó de computação e detalhes de informações de falha. Se false, o serviço Batch não aguardará a conclusão do StartTask. Nesse caso, outras tarefas podem começar a ser executadas no nó de computação enquanto o StartTask ainda está em execução; e mesmo que o StartTask falhe, novas tarefas continuarão a ser agendadas no nó de computação. O padrão é true. |
Detalhes de Propriedade
commandLine
A linha de comando do StartTask. A linha de comando não é executada sob um shell e, portanto, não pode aproveitar os recursos do shell, como a expansão da variável de ambiente. Se você quiser aproveitar esses recursos, você deve invocar o shell na linha de comando, por exemplo, usando "cmd /c MyCommand" no Windows ou "/bin/sh -c MyCommand" no Linux. Se a linha de comando se referir a caminhos de arquivo, ela deverá usar um caminho relativo (relativo ao diretório de trabalho Tarefa) ou usar a variável de ambiente Batch provided (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables).
commandLine: string
Valor de Propriedade
string
containerSettings
As configurações para o contêiner sob o qual o StartTask é executado. Quando isso é especificado, todos os diretórios recursivamente abaixo do AZ_BATCH_NODE_ROOT_DIR (a raiz dos diretórios do Lote do Azure no nó) são mapeados no contêiner, todas as variáveis de ambiente de Tarefa são mapeadas no contêiner e a linha de comando Tarefa é executada no contêiner. Os arquivos produzidos no contêiner fora de AZ_BATCH_NODE_ROOT_DIR podem não ser refletidos no disco host, o que significa que as APIs de arquivo em lote não poderão acessar esses arquivos.
containerSettings?: BatchTaskContainerSettingsOutput
Valor de Propriedade
environmentSettings
Uma lista de configurações de variáveis de ambiente para o StartTask.
environmentSettings?: EnvironmentSettingOutput[]
Valor de Propriedade
maxTaskRetryCount
O número máximo de vezes que a Tarefa pode ser repetida. O serviço de lote tenta novamente uma tarefa se seu código de saída for diferente de zero. Observe que esse valor controla especificamente o número de tentativas. O serviço de lote tentará a tarefa uma vez e, em seguida, poderá tentar novamente até esse limite. Por exemplo, se a contagem máxima de tentativas for 3, o Batch tentará a Tarefa até 4 vezes (uma tentativa inicial e 3 tentativas). Se a contagem máxima de tentativas for 0, o serviço Batch não repetirá a Tarefa. Se a contagem máxima de tentativas for -1, o serviço em lote repetirá a tarefa sem limite, no entanto, isso não é recomendado para uma tarefa inicial ou qualquer tarefa. O valor padrão é 0 (sem tentativas).
maxTaskRetryCount?: number
Valor de Propriedade
number
resourceFiles
Uma lista de arquivos que o serviço em lote baixará para o nó de computação antes de executar a linha de comando. Há um tamanho máximo para a lista de arquivos de recursos. Quando o tamanho máximo for excedido, a solicitação falhará e o código de erro de resposta será RequestEntityTooLarge. Se isso ocorrer, a coleção de ResourceFiles deve ser reduzida em tamanho. Isso pode ser feito usando arquivos .zip, pacotes de aplicativos ou contêineres do Docker. Os arquivos listados sob este elemento estão localizados no diretório de trabalho da tarefa.
resourceFiles?: ResourceFileOutput[]
Valor de Propriedade
userIdentity
A identidade do usuário sob a qual o StartTask é executado. Se omitida, a Tarefa é executada como um usuário não administrativo exclusivo para a Tarefa.
userIdentity?: UserIdentityOutput
Valor de Propriedade
waitForSuccess
Se o serviço em lote deve aguardar a conclusão bem-sucedida do StartTask (ou seja, sair com o código de saída 0) antes de agendar quaisquer tarefas no nó de computação. Se true e o StartTask falhar em um nó, o serviço Batch tentará novamente o StartTask até sua contagem máxima de tentativas (maxTaskRetryCount). Se a Tarefa ainda não tiver sido concluída com êxito após todas as tentativas, o serviço Lote marcará o Nó como inutilizável e não agendará Tarefas para ele. Esta condição pode ser detetada através do estado do nó de computação e detalhes de informações de falha. Se false, o serviço Batch não aguardará a conclusão do StartTask. Nesse caso, outras tarefas podem começar a ser executadas no nó de computação enquanto o StartTask ainda está em execução; e mesmo que o StartTask falhe, novas tarefas continuarão a ser agendadas no nó de computação. O padrão é true.
waitForSuccess?: boolean
Valor de Propriedade
boolean