CloudTask interface
Batch försöker utföra uppgifter igen när en återställningsåtgärd utlöses på en nod. Exempel på återställningsåtgärder är (men är inte begränsade till) när en nod med feltillstånd startas om eller en beräkningsnod försvinner på grund av värdfel. Återförsök på grund av återställningsåtgärder är oberoende av och räknas inte mot maxTaskRetryCount. Även om maxTaskRetryCount är 0 kan ett internt återförsök på grund av en återställningsåtgärd inträffa. Därför bör alla aktiviteter vara idempotent. Det innebär att Uppgifter måste tolerera att avbrytas och startas om utan att orsaka skada eller duplicera data. Bästa praxis för långvariga uppgifter är att använda någon form av kontrollpunkter.
Egenskaper
| affinity |
En lokalitetstips som kan användas av Batch-tjänsten för att välja en beräkningsnod som den nya aktiviteten ska startas på. |
| application |
En lista över paket som Batch-tjänsten distribuerar till beräkningsnoden innan kommandoraden körs. Programpaket laddas ned och distribueras till en delad katalog, inte arbetskatalogen Aktivitet. Om ett refererat paket redan finns på noden och är uppdaterat laddas det därför inte ned igen. den befintliga kopian på beräkningsnoden används. Om det inte går att installera ett refererat paket, till exempel på grund av att paketet har tagits bort eller eftersom nedladdningen misslyckades, misslyckas uppgiften. |
| authentication |
Inställningarna för en autentiseringstoken som aktiviteten kan använda för att utföra Batch-tjänståtgärder. Om den här egenskapen anges tillhandahåller Batch-tjänsten uppgiften med en autentiseringstoken som kan användas för att autentisera Batch-tjänståtgärder utan att kräva en kontoåtkomstnyckel. Token tillhandahålls via miljövariabeln AZ_BATCH_AUTHENTICATION_TOKEN. Vilka åtgärder som aktiviteten kan utföra med hjälp av token beror på inställningarna. En aktivitet kan till exempel begära jobbbehörigheter för att lägga till andra aktiviteter i jobbet, eller kontrollera status för jobbet eller andra aktiviteter under jobbet. |
| command |
Kommandoraden för uppgiften. För aktiviteter med flera instanser körs kommandoraden som den primära aktiviteten, efter att den primära aktiviteten och alla underaktiviteter har kört samordningskommandoraden. Kommandoraden körs inte under ett gränssnitt och kan därför inte dra nytta av gränssnittsfunktioner som miljövariabelexpansion. Om du vill dra nytta av sådana funktioner bör du anropa gränssnittet på kommandoraden, till exempel med hjälp av "cmd /c MyCommand" i Windows eller "/bin/sh -c MyCommand" i Linux. Om kommandoraden refererar till filsökvägar bör den använda en relativ sökväg (i förhållande till arbetskatalogen Uppgift) eller använda miljövariabeln i Batch (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). |
| constraints | De körningsbegränsningar som gäller för den här aktiviteten. |
| container |
Inställningarna för containern som aktiviteten körs under. Om den pool som ska köra den här aktiviteten har containerConfiguration inställd måste även detta anges. Om den pool som ska köra den här aktiviteten inte har containerConfiguration inställd får detta inte anges. När detta anges mappas alla kataloger rekursivt under AZ_BATCH_NODE_ROOT_DIR (roten för Azure Batch-kataloger på noden) till containern, alla miljövariabler för aktivitet mappas till containern och kommandoraden Aktivitet körs i containern. Filer som skapas i containern utanför AZ_BATCH_NODE_ROOT_DIR kanske inte återspeglas på värddisken, vilket innebär att Batch-fil-API:er inte kommer att kunna komma åt dessa filer. |
| creation |
Skapandetiden för uppgiften. |
| depends |
Vilka uppgifter den här aktiviteten är beroende av. Den här aktiviteten schemaläggs inte förrän alla aktiviteter som den är beroende av har slutförts. Om någon av dessa uppgifter misslyckas och uttömmer antalet återförsök kommer den här aktiviteten aldrig att schemaläggas. |
| display |
Ett visningsnamn för aktiviteten. Visningsnamnet behöver inte vara unikt och kan innehålla unicode-tecken upp till en maximal längd på 1024. |
| environment |
En lista över miljövariabelinställningar för aktiviteten. |
| e |
ETag för uppgiften. Det här är en ogenomskinlig sträng. Du kan använda den för att identifiera om aktiviteten har ändrats mellan begäranden. I synnerhet kan du skicka ETag när du uppdaterar en aktivitet för att ange att ändringarna endast ska börja gälla om ingen annan har ändrat aktiviteten under tiden. |
| execution |
Information om körningen av uppgiften. |
| exit |
Hur Batch-tjänsten ska svara när uppgiften är klar. |
| id | En sträng som unikt identifierar uppgiften i jobbet. ID:t kan innehålla valfri kombination av alfanumeriska tecken, inklusive bindestreck och understreck, och får inte innehålla fler än 64 tecken. |
| last |
Den senaste ändrade tiden för aktiviteten. |
| multi |
Ett objekt som anger att uppgiften är en aktivitet med flera instanser och innehåller information om hur du kör aktiviteten för flera instanser. |
| node |
Information om beräkningsnoden som aktiviteten kördes på. |
| output |
En lista över filer som Batch-tjänsten laddar upp från beräkningsnoden när kommandoraden har körts. För aktiviteter med flera instanser laddas filerna bara upp från beräkningsnoden där den primära aktiviteten körs. |
| previous |
Föregående tillstånd för uppgiften. Den här egenskapen anges inte om aktiviteten är i sitt ursprungliga aktiva tillstånd. Möjliga värden är: "aktiv", "förbereder", "körs", "slutförd" |
| previous |
Tidpunkten då aktiviteten övergick till sitt tidigare tillstånd. Den här egenskapen anges inte om aktiviteten är i sitt ursprungliga aktiva tillstånd. |
| required |
Antalet schemaläggningsplatser som aktiviteten kräver för att köras. Standardvärdet är 1. En aktivitet kan bara schemaläggas att köras på en beräkningsnod om noden har tillräckligt med lediga schemaläggningsplatser tillgängliga. För uppgifter med flera instanser måste detta vara 1. |
| resource |
En lista över filer som Batch-tjänsten laddar ned till beräkningsnoden innan du kör kommandoraden. För aktiviteter med flera instanser laddas resursfilerna bara ned till beräkningsnoden där den primära aktiviteten körs. Det finns en maximal storlek för listan över resursfiler. När maxstorleken överskrids misslyckas begäran och svarsfelkoden requestEntityTooLarge. Om detta inträffar måste samlingen av ResourceFiles minskas i storlek. Detta kan uppnås med hjälp av .zip filer, programpaket eller Docker-containrar. |
| state | Aktivitetens aktuella tillstånd. Möjliga värden är: "aktiv", "förbereder", "körs", "slutförd" |
| state |
Tidpunkten då aktiviteten övergick till sitt aktuella tillstånd. |
| stats | Resursanvändningsstatistik för aktiviteten. |
| url | Aktivitetens URL. |
| user |
Användaridentiteten som aktiviteten körs under. Om den utelämnas körs aktiviteten som en icke-administrativ användare som är unik för aktiviteten. |
Egenskapsinformation
affinityInfo
En lokalitetstips som kan användas av Batch-tjänsten för att välja en beräkningsnod som den nya aktiviteten ska startas på.
affinityInfo?: AffinityInformation
Egenskapsvärde
applicationPackageReferences
En lista över paket som Batch-tjänsten distribuerar till beräkningsnoden innan kommandoraden körs. Programpaket laddas ned och distribueras till en delad katalog, inte arbetskatalogen Aktivitet. Om ett refererat paket redan finns på noden och är uppdaterat laddas det därför inte ned igen. den befintliga kopian på beräkningsnoden används. Om det inte går att installera ett refererat paket, till exempel på grund av att paketet har tagits bort eller eftersom nedladdningen misslyckades, misslyckas uppgiften.
applicationPackageReferences?: ApplicationPackageReference[]
Egenskapsvärde
authenticationTokenSettings
Inställningarna för en autentiseringstoken som aktiviteten kan använda för att utföra Batch-tjänståtgärder. Om den här egenskapen anges tillhandahåller Batch-tjänsten uppgiften med en autentiseringstoken som kan användas för att autentisera Batch-tjänståtgärder utan att kräva en kontoåtkomstnyckel. Token tillhandahålls via miljövariabeln AZ_BATCH_AUTHENTICATION_TOKEN. Vilka åtgärder som aktiviteten kan utföra med hjälp av token beror på inställningarna. En aktivitet kan till exempel begära jobbbehörigheter för att lägga till andra aktiviteter i jobbet, eller kontrollera status för jobbet eller andra aktiviteter under jobbet.
authenticationTokenSettings?: AuthenticationTokenSettings
Egenskapsvärde
commandLine
Kommandoraden för uppgiften. För aktiviteter med flera instanser körs kommandoraden som den primära aktiviteten, efter att den primära aktiviteten och alla underaktiviteter har kört samordningskommandoraden. Kommandoraden körs inte under ett gränssnitt och kan därför inte dra nytta av gränssnittsfunktioner som miljövariabelexpansion. Om du vill dra nytta av sådana funktioner bör du anropa gränssnittet på kommandoraden, till exempel med hjälp av "cmd /c MyCommand" i Windows eller "/bin/sh -c MyCommand" i Linux. Om kommandoraden refererar till filsökvägar bör den använda en relativ sökväg (i förhållande till arbetskatalogen Uppgift) eller använda miljövariabeln i Batch (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).
commandLine?: string
Egenskapsvärde
string
constraints
De körningsbegränsningar som gäller för den här aktiviteten.
constraints?: TaskConstraints
Egenskapsvärde
containerSettings
Inställningarna för containern som aktiviteten körs under. Om den pool som ska köra den här aktiviteten har containerConfiguration inställd måste även detta anges. Om den pool som ska köra den här aktiviteten inte har containerConfiguration inställd får detta inte anges. När detta anges mappas alla kataloger rekursivt under AZ_BATCH_NODE_ROOT_DIR (roten för Azure Batch-kataloger på noden) till containern, alla miljövariabler för aktivitet mappas till containern och kommandoraden Aktivitet körs i containern. Filer som skapas i containern utanför AZ_BATCH_NODE_ROOT_DIR kanske inte återspeglas på värddisken, vilket innebär att Batch-fil-API:er inte kommer att kunna komma åt dessa filer.
containerSettings?: TaskContainerSettings
Egenskapsvärde
creationTime
Skapandetiden för uppgiften.
creationTime?: Date
Egenskapsvärde
Date
dependsOn
Vilka uppgifter den här aktiviteten är beroende av. Den här aktiviteten schemaläggs inte förrän alla aktiviteter som den är beroende av har slutförts. Om någon av dessa uppgifter misslyckas och uttömmer antalet återförsök kommer den här aktiviteten aldrig att schemaläggas.
dependsOn?: TaskDependencies
Egenskapsvärde
displayName
Ett visningsnamn för aktiviteten. Visningsnamnet behöver inte vara unikt och kan innehålla unicode-tecken upp till en maximal längd på 1024.
displayName?: string
Egenskapsvärde
string
environmentSettings
En lista över miljövariabelinställningar för aktiviteten.
environmentSettings?: EnvironmentSetting[]
Egenskapsvärde
eTag
ETag för uppgiften. Det här är en ogenomskinlig sträng. Du kan använda den för att identifiera om aktiviteten har ändrats mellan begäranden. I synnerhet kan du skicka ETag när du uppdaterar en aktivitet för att ange att ändringarna endast ska börja gälla om ingen annan har ändrat aktiviteten under tiden.
eTag?: string
Egenskapsvärde
string
executionInfo
Information om körningen av uppgiften.
executionInfo?: TaskExecutionInformation
Egenskapsvärde
exitConditions
Hur Batch-tjänsten ska svara när uppgiften är klar.
exitConditions?: ExitConditions
Egenskapsvärde
id
En sträng som unikt identifierar uppgiften i jobbet. ID:t kan innehålla valfri kombination av alfanumeriska tecken, inklusive bindestreck och understreck, och får inte innehålla fler än 64 tecken.
id?: string
Egenskapsvärde
string
lastModified
Den senaste ändrade tiden för aktiviteten.
lastModified?: Date
Egenskapsvärde
Date
multiInstanceSettings
Ett objekt som anger att uppgiften är en aktivitet med flera instanser och innehåller information om hur du kör aktiviteten för flera instanser.
multiInstanceSettings?: MultiInstanceSettings
Egenskapsvärde
nodeInfo
Information om beräkningsnoden som aktiviteten kördes på.
nodeInfo?: ComputeNodeInformation
Egenskapsvärde
outputFiles
En lista över filer som Batch-tjänsten laddar upp från beräkningsnoden när kommandoraden har körts. För aktiviteter med flera instanser laddas filerna bara upp från beräkningsnoden där den primära aktiviteten körs.
outputFiles?: OutputFile[]
Egenskapsvärde
previousState
Föregående tillstånd för uppgiften. Den här egenskapen anges inte om aktiviteten är i sitt ursprungliga aktiva tillstånd. Möjliga värden är: "aktiv", "förbereder", "körs", "slutförd"
previousState?: TaskState
Egenskapsvärde
previousStateTransitionTime
Tidpunkten då aktiviteten övergick till sitt tidigare tillstånd. Den här egenskapen anges inte om aktiviteten är i sitt ursprungliga aktiva tillstånd.
previousStateTransitionTime?: Date
Egenskapsvärde
Date
requiredSlots
Antalet schemaläggningsplatser som aktiviteten kräver för att köras. Standardvärdet är 1. En aktivitet kan bara schemaläggas att köras på en beräkningsnod om noden har tillräckligt med lediga schemaläggningsplatser tillgängliga. För uppgifter med flera instanser måste detta vara 1.
requiredSlots?: number
Egenskapsvärde
number
resourceFiles
En lista över filer som Batch-tjänsten laddar ned till beräkningsnoden innan du kör kommandoraden. För aktiviteter med flera instanser laddas resursfilerna bara ned till beräkningsnoden där den primära aktiviteten körs. Det finns en maximal storlek för listan över resursfiler. När maxstorleken överskrids misslyckas begäran och svarsfelkoden requestEntityTooLarge. Om detta inträffar måste samlingen av ResourceFiles minskas i storlek. Detta kan uppnås med hjälp av .zip filer, programpaket eller Docker-containrar.
resourceFiles?: ResourceFile[]
Egenskapsvärde
state
Aktivitetens aktuella tillstånd. Möjliga värden är: "aktiv", "förbereder", "körs", "slutförd"
state?: TaskState
Egenskapsvärde
stateTransitionTime
Tidpunkten då aktiviteten övergick till sitt aktuella tillstånd.
stateTransitionTime?: Date
Egenskapsvärde
Date
stats
url
Aktivitetens URL.
url?: string
Egenskapsvärde
string
userIdentity
Användaridentiteten som aktiviteten körs under. Om den utelämnas körs aktiviteten som en icke-administrativ användare som är unik för aktiviteten.
userIdentity?: UserIdentity