BatchTask interface
Batch voert taken opnieuw uit wanneer een herstelbewerking wordt geactiveerd op een knooppunt. Voorbeelden van herstelbewerkingen zijn (maar zijn niet beperkt tot) wanneer een beschadigd knooppunt opnieuw wordt opgestart of een rekenknooppunt is verdwenen vanwege een hostfout. Nieuwe pogingen vanwege herstelbewerkingen zijn onafhankelijk van en worden niet meegeteld voor maxTaskRetryCount. Zelfs als maxTaskRetryCount 0 is, kan er een interne nieuwe poging worden uitgevoerd vanwege een herstelbewerking. Daarom moeten alle taken idempotent zijn. Dit betekent dat taken moeten worden onderbroken en opnieuw moeten worden gestart zonder beschadiging of dubbele gegevens te veroorzaken. De aanbevolen procedure voor langlopende taken is om een vorm van controlepunten te gebruiken.
Eigenschappen
| affinity |
Een localiteitstip die door de batchservice kan worden gebruikt om een Compute Node te selecteren waarop de nieuwe Taak wordt gestart. |
| application |
Een lijst van pakketten die de batchservice zal uitrollen naar de Compute Node voordat de opdrachtregel wordt uitgevoerd. Applicatiepakketten worden gedownload en uitgezonden naar een gedeelde map, niet naar de Task-werkmap. Daarom, als een referentiepakket al op de Node staat en up-to-date is, wordt het niet opnieuw gedownload; de bestaande kopie op de Compute Node wordt gebruikt. Als een referentiepakket niet kan worden geïnstalleerd, bijvoorbeeld omdat het pakket is verwijderd of omdat de download mislukte, faalt de taak. |
| command |
De commandoregel van de Taak. Voor multi-instance Tasks wordt de commandoregel uitgevoerd als de primaire Taak, nadat de primaire Taak en alle subtaken de coördinatiecommandoregel hebben uitgevoerd. De opdrachtregel wordt niet uitgevoerd onder een shell en kan daarom niet profiteren van shell-functies zoals uitbreiding van omgevingsvariabelen. Als je van zulke functies wilt profiteren, moet je de shell aanroepen in de opdrachtregel, bijvoorbeeld met "cmd /c MyCommand" in Windows of "/bin/sh -c MyCommand" in Linux. Als de opdrachtregel verwijst naar bestandspaden, moet deze een relatief pad gebruiken (ten opzichte van de werkmap Taak) of de door Batch geleverde omgevingsvariabele (https://dotnet.territoriali.olinfo.it/azure/batch/batch-compute-node-environment-variables). |
| constraints | De uitvoeringsbeperkingen die op deze taak van toepassing zijn. |
| container |
De instellingen voor de container waaronder de taak draait. Als de Pool die deze taak uitvoert containerConfiguration heeft ingesteld, moet dit ook worden ingesteld. Als de pool die deze taak uitvoert geen containerConfiguration heeft ingesteld, mag dit niet worden ingesteld. Wanneer dit wordt gespecificeerd, worden alle directories recursief onder de AZ_BATCH_NODE_ROOT_DIR (de wortel van Azure Batch directories op de node) in de container gemapt, worden alle Task-omgevingsvariabelen in de container gemapt en wordt de Task-commandoregel uitgevoerd in de container. Bestanden die buiten AZ_BATCH_NODE_ROOT_DIR in de container worden geproduceerd, worden mogelijk niet teruggespiegeld naar de hostdisk, wat betekent dat Batch-bestands-API's geen toegang tot die bestanden hebben. |
| creation |
De creatietijd van de Taak. |
| depends |
De taken waarop deze taak afhangt. Deze taak wordt pas ingepland nadat alle taken waarop hij afhankelijk is succesvol zijn voltooid. Als een van die taken faalt en hun aantal herpogingen opmaakt, wordt deze taak nooit gepland. |
| display |
Een weergavenaam voor de Taak. De weergavenaam hoeft niet uniek te zijn en mag unicode-tekens bevatten tot een maximale lengte van 1024. |
| environment |
Een lijst met instellingen voor omgevingsvariabelen voor de Taak. |
| e |
De ETag van de taak. Dit is een ondoorzichtige tekenreeks. Je kunt het gebruiken om te detecteren of de taak tussen verzoeken is veranderd. In het bijzonder kun je de ETag doorgeven bij het bijwerken van een Task om aan te geven dat je wijzigingen alleen van kracht mogen worden als niemand anders de Task in de tussentijd heeft aangepast. |
| execution |
Informatie over de uitvoering van de taak. |
| exit |
Hoe de Batch-service zou moeten reageren wanneer de taak is voltooid. |
| id | Een string die de Taak binnen de Taak uniek identificeert. De id kan elke combinatie van alfanumerieke tekens bevatten, inclusief afbreekstreepjes en onderstrepingstekens, en mag niet meer dan 64 tekens bevatten. |
| last |
De laatste gewijzigde tijd van de Taak. |
| multi |
Een object dat aangeeft dat de taak een multi-instance Task is, en bevat informatie over hoe de multi-instance Task moet worden uitgevoerd. |
| node |
Informatie over de rekenknoop waarop de taak draaide. |
| output |
Een lijst van bestanden die de Batch-service zal uploaden vanaf de Compute Node nadat de opdrachtregel is uitgevoerd. Voor multi-instance taken worden de bestanden alleen geüpload vanaf de Compute Node waarop de primaire Task wordt uitgevoerd. |
| previous |
De vorige staat van de Taak. Deze eigenschap wordt niet ingesteld als de Taak zich in zijn initiële actieve toestand bevindt. |
| previous |
Het moment waarop de Taak in zijn vorige staat kwam. Deze eigenschap wordt niet ingesteld als de Taak zich in zijn initiële actieve toestand bevindt. |
| required |
Het aantal planningsslots dat de Taak nodig heeft om uit te voeren. De standaardwaarde is één. Een Task kan alleen worden gepland om op een compute-node te draaien als de node genoeg vrije planningsslots beschikbaar heeft. Voor multi-instance taken moet dit 1 zijn. |
| resource |
Een lijst met bestanden die de Batch-service naar het rekenknooppunt downloadt voordat u de opdrachtregel uitvoert. Voor multi-instance taken worden de resourcebestanden alleen gedownload naar de Compute Node waarop de primaire Task wordt uitgevoerd. Er is een maximale grootte voor de lijst met resourcebestanden. Wanneer de maximale grootte wordt overschreden, mislukt de aanvraag en is de antwoordfoutcode RequestEntityTooLarge. Als dit het geval is, moet de verzameling ResourceFiles worden verkleind. Dit kan worden bereikt met behulp van .zip bestanden, toepassingspakketten of Docker-containers. |
| state | De huidige staat van de Taak. |
| state |
Het moment waarop de Task zijn huidige staat bereikte. |
| task |
Statistieken over het gebruik van middelen voor de Taak. |
| url | De URL van de taak. |
| user |
De gebruikersidentiteit waaronder de taak draait. Als deze wordt weggelaten, draait de taak als een niet-administratieve gebruiker die uniek is voor de taak. |
Eigenschapdetails
affinityInfo
Een localiteitstip die door de batchservice kan worden gebruikt om een Compute Node te selecteren waarop de nieuwe Taak wordt gestart.
affinityInfo?: BatchAffinityInfo
Waarde van eigenschap
applicationPackageReferences
Een lijst van pakketten die de batchservice zal uitrollen naar de Compute Node voordat de opdrachtregel wordt uitgevoerd. Applicatiepakketten worden gedownload en uitgezonden naar een gedeelde map, niet naar de Task-werkmap. Daarom, als een referentiepakket al op de Node staat en up-to-date is, wordt het niet opnieuw gedownload; de bestaande kopie op de Compute Node wordt gebruikt. Als een referentiepakket niet kan worden geïnstalleerd, bijvoorbeeld omdat het pakket is verwijderd of omdat de download mislukte, faalt de taak.
applicationPackageReferences?: BatchApplicationPackageReference[]
Waarde van eigenschap
commandLine
De commandoregel van de Taak. Voor multi-instance Tasks wordt de commandoregel uitgevoerd als de primaire Taak, nadat de primaire Taak en alle subtaken de coördinatiecommandoregel hebben uitgevoerd. De opdrachtregel wordt niet uitgevoerd onder een shell en kan daarom niet profiteren van shell-functies zoals uitbreiding van omgevingsvariabelen. Als je van zulke functies wilt profiteren, moet je de shell aanroepen in de opdrachtregel, bijvoorbeeld met "cmd /c MyCommand" in Windows of "/bin/sh -c MyCommand" in Linux. Als de opdrachtregel verwijst naar bestandspaden, moet deze een relatief pad gebruiken (ten opzichte van de werkmap Taak) of de door Batch geleverde omgevingsvariabele (https://dotnet.territoriali.olinfo.it/azure/batch/batch-compute-node-environment-variables).
commandLine: string
Waarde van eigenschap
string
constraints
De uitvoeringsbeperkingen die op deze taak van toepassing zijn.
constraints?: BatchTaskConstraints
Waarde van eigenschap
containerSettings
De instellingen voor de container waaronder de taak draait. Als de Pool die deze taak uitvoert containerConfiguration heeft ingesteld, moet dit ook worden ingesteld. Als de pool die deze taak uitvoert geen containerConfiguration heeft ingesteld, mag dit niet worden ingesteld. Wanneer dit wordt gespecificeerd, worden alle directories recursief onder de AZ_BATCH_NODE_ROOT_DIR (de wortel van Azure Batch directories op de node) in de container gemapt, worden alle Task-omgevingsvariabelen in de container gemapt en wordt de Task-commandoregel uitgevoerd in de container. Bestanden die buiten AZ_BATCH_NODE_ROOT_DIR in de container worden geproduceerd, worden mogelijk niet teruggespiegeld naar de hostdisk, wat betekent dat Batch-bestands-API's geen toegang tot die bestanden hebben.
containerSettings?: BatchTaskContainerSettings
Waarde van eigenschap
creationTime
De creatietijd van de Taak.
creationTime: Date
Waarde van eigenschap
Date
dependsOn
De taken waarop deze taak afhangt. Deze taak wordt pas ingepland nadat alle taken waarop hij afhankelijk is succesvol zijn voltooid. Als een van die taken faalt en hun aantal herpogingen opmaakt, wordt deze taak nooit gepland.
dependsOn?: BatchTaskDependencies
Waarde van eigenschap
displayName
Een weergavenaam voor de Taak. De weergavenaam hoeft niet uniek te zijn en mag unicode-tekens bevatten tot een maximale lengte van 1024.
displayName?: string
Waarde van eigenschap
string
environmentSettings
Een lijst met instellingen voor omgevingsvariabelen voor de Taak.
environmentSettings?: EnvironmentSetting[]
Waarde van eigenschap
eTag
De ETag van de taak. Dit is een ondoorzichtige tekenreeks. Je kunt het gebruiken om te detecteren of de taak tussen verzoeken is veranderd. In het bijzonder kun je de ETag doorgeven bij het bijwerken van een Task om aan te geven dat je wijzigingen alleen van kracht mogen worden als niemand anders de Task in de tussentijd heeft aangepast.
eTag: string
Waarde van eigenschap
string
executionInfo
Informatie over de uitvoering van de taak.
executionInfo?: BatchTaskExecutionInfo
Waarde van eigenschap
exitConditions
Hoe de Batch-service zou moeten reageren wanneer de taak is voltooid.
exitConditions?: ExitConditions
Waarde van eigenschap
id
Een string die de Taak binnen de Taak uniek identificeert. De id kan elke combinatie van alfanumerieke tekens bevatten, inclusief afbreekstreepjes en onderstrepingstekens, en mag niet meer dan 64 tekens bevatten.
id: string
Waarde van eigenschap
string
lastModified
De laatste gewijzigde tijd van de Taak.
lastModified: Date
Waarde van eigenschap
Date
multiInstanceSettings
Een object dat aangeeft dat de taak een multi-instance Task is, en bevat informatie over hoe de multi-instance Task moet worden uitgevoerd.
multiInstanceSettings?: MultiInstanceSettings
Waarde van eigenschap
nodeInfo
Informatie over de rekenknoop waarop de taak draaide.
nodeInfo?: BatchNodeInfo
Waarde van eigenschap
outputFiles
Een lijst van bestanden die de Batch-service zal uploaden vanaf de Compute Node nadat de opdrachtregel is uitgevoerd. Voor multi-instance taken worden de bestanden alleen geüpload vanaf de Compute Node waarop de primaire Task wordt uitgevoerd.
outputFiles?: OutputFile[]
Waarde van eigenschap
previousState
De vorige staat van de Taak. Deze eigenschap wordt niet ingesteld als de Taak zich in zijn initiële actieve toestand bevindt.
previousState?: BatchTaskState
Waarde van eigenschap
previousStateTransitionTime
Het moment waarop de Taak in zijn vorige staat kwam. Deze eigenschap wordt niet ingesteld als de Taak zich in zijn initiële actieve toestand bevindt.
previousStateTransitionTime?: Date
Waarde van eigenschap
Date
requiredSlots
Het aantal planningsslots dat de Taak nodig heeft om uit te voeren. De standaardwaarde is één. Een Task kan alleen worden gepland om op een compute-node te draaien als de node genoeg vrije planningsslots beschikbaar heeft. Voor multi-instance taken moet dit 1 zijn.
requiredSlots?: number
Waarde van eigenschap
number
resourceFiles
Een lijst met bestanden die de Batch-service naar het rekenknooppunt downloadt voordat u de opdrachtregel uitvoert. Voor multi-instance taken worden de resourcebestanden alleen gedownload naar de Compute Node waarop de primaire Task wordt uitgevoerd. Er is een maximale grootte voor de lijst met resourcebestanden. Wanneer de maximale grootte wordt overschreden, mislukt de aanvraag en is de antwoordfoutcode RequestEntityTooLarge. Als dit het geval is, moet de verzameling ResourceFiles worden verkleind. Dit kan worden bereikt met behulp van .zip bestanden, toepassingspakketten of Docker-containers.
resourceFiles?: ResourceFile[]
Waarde van eigenschap
state
stateTransitionTime
Het moment waarop de Task zijn huidige staat bereikte.
stateTransitionTime: Date
Waarde van eigenschap
Date
taskStatistics
Statistieken over het gebruik van middelen voor de Taak.
taskStatistics?: BatchTaskStatistics
Waarde van eigenschap
url
De URL van de taak.
url: string
Waarde van eigenschap
string
userIdentity
De gebruikersidentiteit waaronder de taak draait. Als deze wordt weggelaten, draait de taak als een niet-administratieve gebruiker die uniek is voor de taak.
userIdentity?: UserIdentity