Delen via


StartTask Klas

In sommige gevallen kan de begintaak opnieuw worden uitgevoerd, zelfs als het knooppunt niet opnieuw is opgestart. Daarom moeten starttaken idempotent zijn en probleemloos worden afgesloten als de installatie die ze uitvoeren al is uitgevoerd. Zorg er met name voor dat er geen starttaken worden gestart die een breakaway-proces maken of services installeren/starten vanuit de werkmap van de begintaak, omdat Batch hierdoor de starttaak niet opnieuw kan uitvoeren.

Overname
azure.mgmt.batch._serialization.Model
StartTask

Constructor

StartTask(*, command_line: str | None = None, resource_files: List[_models.ResourceFile] | None = None, environment_settings: List[_models.EnvironmentSetting] | None = None, user_identity: _models.UserIdentity | None = None, max_task_retry_count: int = 0, wait_for_success: bool | None = None, container_settings: _models.TaskContainerSettings | None = None, **kwargs: Any)

Keyword-Only Parameters

Name Description
command_line
str

De opdrachtregel wordt niet uitgevoerd onder een shell en kan daarom niet profiteren van shell-functies zoals uitbreiding van omgevingsvariabelen. Als u van dergelijke functies wilt profiteren, moet u de shell in de opdrachtregel aanroepen, bijvoorbeeld met 'cmd /c MyCommand' in Windows of '/bin/sh -c MyCommand' in Linux. Vereist als er andere eigenschappen van de startTask zijn opgegeven.

resource_files

Een lijst met bestanden die door de Batch-service worden gedownload naar het rekenknooppunt voordat de opdrachtregel wordt uitgevoerd.

environment_settings

Een lijst met omgevingsvariabeleinstellingen voor de begintaak.

user_identity

Als u dit weglaat, wordt de taak uitgevoerd als een gebruiker zonder beheerdersrechten die uniek is voor de taak.

max_task_retry_count
int

De Batch-service voert een taak opnieuw uit als de afsluitcode een andere is dan nul. Houd er rekening mee dat deze waarde specifiek het aantal nieuwe pogingen bepaalt. De Batch-service probeert de taak eenmaal uit te voeren en kan het vervolgens opnieuw proberen tot deze limiet. Als het maximumaantal nieuwe pogingen bijvoorbeeld 3 is, probeert Batch de taak maximaal 4 keer (één eerste poging en 3 nieuwe pogingen). Als het maximumaantal nieuwe pogingen 0 is, voert de Batch-service de taak niet opnieuw uit. Als het maximumaantal nieuwe pogingen -1 is, probeert de Batch-service de taak opnieuw zonder limiet. De standaardwaarde is 0.

wait_for_success

Als waar is en de begintaak mislukt op een rekenknooppunt, probeert de Batch-service de starttaak opnieuw tot het maximale aantal nieuwe pogingen (maxTaskRetryCount). Als de taak na alle nieuwe pogingen nog steeds niet is voltooid, markeert de Batch-service het rekenknooppunt als onbruikbaar en worden er geen taken naar gepland. Deze voorwaarde kan worden gedetecteerd via de status van het knooppunt en de details van de planningsfout. Indien onwaar, wacht de Batch-service niet totdat de begintaak is voltooid. In dit geval kunnen andere taken worden uitgevoerd op het rekenknooppunt terwijl de begintaak nog wordt uitgevoerd; en zelfs als de begintaak mislukt, worden er nog steeds nieuwe taken gepland op het knooppunt. De standaardwaarde is true.

container_settings

Wanneer dit is opgegeven, worden alle mappen recursief onder de AZ_BATCH_NODE_ROOT_DIR (de hoofdmap van Azure Batch mappen op het knooppunt) toegewezen aan de container, worden alle taakomgevingsvariabelen toegewezen aan de container en wordt de taakopdrachtregel uitgevoerd in de container.

Variabelen

Name Description
command_line
str

De opdrachtregel wordt niet uitgevoerd onder een shell en kan daarom niet profiteren van shell-functies zoals uitbreiding van omgevingsvariabelen. Als u van dergelijke functies wilt profiteren, moet u de shell in de opdrachtregel aanroepen, bijvoorbeeld met 'cmd /c MyCommand' in Windows of '/bin/sh -c MyCommand' in Linux. Vereist als er andere eigenschappen van de startTask zijn opgegeven.

resource_files

Een lijst met bestanden die door de Batch-service worden gedownload naar het rekenknooppunt voordat de opdrachtregel wordt uitgevoerd.

environment_settings

Een lijst met omgevingsvariabeleinstellingen voor de begintaak.

user_identity

Als u dit weglaat, wordt de taak uitgevoerd als een gebruiker zonder beheerdersrechten die uniek is voor de taak.

max_task_retry_count
int

De Batch-service voert een taak opnieuw uit als de afsluitcode een andere is dan nul. Houd er rekening mee dat deze waarde specifiek het aantal nieuwe pogingen bepaalt. De Batch-service probeert de taak eenmaal uit te voeren en kan het vervolgens opnieuw proberen tot deze limiet. Als het maximumaantal nieuwe pogingen bijvoorbeeld 3 is, probeert Batch de taak maximaal 4 keer (één eerste poging en 3 nieuwe pogingen). Als het maximumaantal nieuwe pogingen 0 is, voert de Batch-service de taak niet opnieuw uit. Als het maximumaantal nieuwe pogingen -1 is, probeert de Batch-service de taak opnieuw zonder limiet. De standaardwaarde is 0.

wait_for_success

Als waar is en de begintaak mislukt op een rekenknooppunt, probeert de Batch-service de starttaak opnieuw tot het maximale aantal nieuwe pogingen (maxTaskRetryCount). Als de taak na alle nieuwe pogingen nog steeds niet is voltooid, markeert de Batch-service het rekenknooppunt als onbruikbaar en worden er geen taken naar gepland. Deze voorwaarde kan worden gedetecteerd via de status van het knooppunt en de details van de planningsfout. Indien onwaar, wacht de Batch-service niet totdat de begintaak is voltooid. In dit geval kunnen andere taken worden uitgevoerd op het rekenknooppunt terwijl de begintaak nog wordt uitgevoerd; en zelfs als de begintaak mislukt, worden er nog steeds nieuwe taken gepland op het knooppunt. De standaardwaarde is true.

container_settings

Wanneer dit is opgegeven, worden alle mappen recursief onder de AZ_BATCH_NODE_ROOT_DIR (de hoofdmap van Azure Batch mappen op het knooppunt) toegewezen aan de container, worden alle taakomgevingsvariabelen toegewezen aan de container en wordt de taakopdrachtregel uitgevoerd in de container.