Sdílet prostřednictvím


Task - Add

Přidá úkol do zadané úlohy.
Maximální životnost úkolu od přidání k dokončení je 180 dnů. Pokud úkol nedokončil do 180 dnů od jeho přidání, služba Batch ji ukončí a zůstane v libovolném stavu, ve které byla v daném okamžiku.

POST {batchUrl}/jobs/{jobId}/tasks?api-version=2024-07-01.20.0
POST {batchUrl}/jobs/{jobId}/tasks?timeout={timeout}&api-version=2024-07-01.20.0

Parametry identifikátoru URI

Name V Vyžadováno Typ Description
batchUrl
path True

string

Základní adresa URL pro všechny požadavky služby Azure Batch.

jobId
path True

string

ID úlohy, do které má být úkol přidán.

api-version
query True

string

Verze rozhraní API klienta.

timeout
query

integer

int32

Maximální doba, po kterou může server strávit zpracováním požadavku v sekundách. Výchozí hodnota je 30 sekund. Pokud je hodnota větší než 30, použije se výchozí hodnota.

Hlavička požadavku

Media Types: "application/json; odata=minimalmetadata"

Name Vyžadováno Typ Description
client-request-id

string

uuid

Identita požadavku vygenerovaná volajícím ve formě identifikátoru GUID bez dekorace, jako jsou složené závorky, například 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.

return-client-request-id

boolean

Určuje, jestli má server v odpovědi vrátit ID požadavku klienta.

ocp-date

string

date-time-rfc1123

Čas vydání žádosti. Klientské knihovny obvykle nastavily aktuální systémový čas; explicitně ji nastavte, pokud voláte přímo rozhraní REST API.

Text požadavku

Media Types: "application/json; odata=minimalmetadata"

Name Vyžadováno Typ Description
commandLine True

string

Příkazový řádek úkolu.
U úloh s více instancemi se příkazový řádek spustí jako primární úkol, jakmile primární úkol a všechny dílčí úkoly dokončí provádění koordinačního příkazového řádku. Příkazový řádek se nespustí pod prostředím, a proto nemůže využívat funkce prostředí, jako je rozšíření proměnné prostředí. Pokud chcete tyto funkce využít, měli byste vyvolat prostředí na příkazovém řádku, například pomocí příkazu cmd /c MyCommand ve Windows nebo /bin/sh -c MyCommand v Linuxu. Pokud příkazový řádek odkazuje na cesty k souborům, měl by použít relativní cestu (relativní k pracovnímu adresáři úkolu) nebo použít proměnnou prostředí poskytovanou službou Batch (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables).

id True

string

Řetězec, který jednoznačně identifikuje úkol v rámci úlohy.
ID může obsahovat libovolnou kombinaci alfanumerických znaků včetně pomlček a podtržítka a nesmí obsahovat více než 64 znaků. ID nerozlišuje velká a malá a velká písmena (to znamená, že v úloze nesmíte mít dvě ID, která se liší pouze v případě).

affinityInfo

AffinityInformation

Nápovědu k umístění, kterou může služba Batch použít k výběru výpočetního uzlu, na kterém se má spustit nový úkol.

applicationPackageReferences

ApplicationPackageReference[]

Seznam balíčků, které služba Batch nasadí do výpočetního uzlu před spuštěním příkazového řádku.
Balíčky aplikací se stáhnou a nasadí do sdíleného adresáře, nikoli do pracovního adresáře Úlohy. Proto pokud odkazovaný balíček je již v uzlu a je aktuální, pak se znovu nestáhnou; Použije se existující kopie výpočetního uzlu. Pokud odkazovaný balíček nelze nainstalovat, například protože balíček byl odstraněn nebo protože stahování selhalo, úloha selže.

authenticationTokenSettings

AuthenticationTokenSettings

Nastavení ověřovacího tokenu, který může úloha použít k provádění operací služby Batch.
Pokud je tato vlastnost nastavená, služba Batch poskytuje úlohu ověřovací token, který se dá použít k ověřování operací služby Batch, aniž by vyžadovala přístupový klíč účtu. Token se poskytuje prostřednictvím proměnné prostředí AZ_BATCH_AUTHENTICATION_TOKEN. Operace, které může úloha provádět pomocí tokenu, závisí na nastavení. Úkol může například požádat o oprávnění úlohy, aby mohl do úlohy přidat další úkoly, nebo zkontrolovat stav úlohy nebo jiných úkolů v rámci úlohy.

constraints

TaskConstraints

Omezení provádění, která platí pro tuto úlohu.
Pokud nezadáte omezení, maxTaskRetryCount je hodnota maxTaskRetryCount zadaná pro úlohu, maxWallClockTime je nekonečná a doba uchování je 7 dní.

containerSettings

TaskContainerSettings

Nastavení kontejneru, pod kterým se úloha spouští.
Pokud má fond, který bude tuto úlohu spouštět, nastavený kontejnerConfiguration, musí být také nastaven. Pokud fond, který spustí tuto úlohu, nemá nastavenou konfiguraci kontejneru, nesmí být nastavena. Po zadání se všechny adresáře rekurzivně pod AZ_BATCH_NODE_ROOT_DIR (kořen adresářů Azure Batch na uzlu) mapují do kontejneru, všechny proměnné prostředí úloh se mapují do kontejneru a v kontejneru se spustí příkazový řádek úkolu. Soubory vytvořené v kontejneru mimo AZ_BATCH_NODE_ROOT_DIR se nemusí projevit na hostitelském disku, což znamená, že rozhraní API souborů batch nebudou mít přístup k těmto souborům.

dependsOn

TaskDependencies

Úkoly, na které tento úkol závisí.
Tento úkol nebude naplánován, dokud nebudou všechny úkoly, na kterých závisí, úspěšně dokončeny. Pokud některý z těchto úkolů selže a vyčerpá počet opakování, nebude tento úkol nikdy naplánován. Pokud úloha nemá použitíTaskDependencies nastavena na true a tento prvek je přítomn, požadavek selže s kódem chyby TaskDependenciesNotSpecifiedOnJob.

displayName

string

Zobrazovaný název úkolu.
Zobrazovaný název nemusí být jedinečný a může obsahovat libovolné znaky Unicode až do maximální délky 1024.

environmentSettings

EnvironmentSetting[]

Seznam nastavení proměnných prostředí pro úlohu

exitConditions

ExitConditions

Určuje, jak má služba Batch reagovat po dokončení úlohy.
Jak by služba Batch měla reagovat po dokončení úlohy.

multiInstanceSettings

MultiInstanceSettings

Objekt, který označuje, že úloha je úloha s více instancemi a obsahuje informace o tom, jak spustit úlohu s více instancemi.
Úlohy s více instancemi se běžně používají k podpoře úloh MPI. Pokud některý z dílčích úkolů v případě MPI selže (například kvůli ukončení s nenulovým ukončovacím kódem), selže celá úloha s více instancemi. Úloha s více instancemi se pak ukončí a opakuje až do limitu opakování.

outputFiles

OutputFile[]

Seznam souborů, které služba Batch nahraje z výpočetního uzlu po spuštění příkazového řádku
U úloh s více instancemi se soubory nahrají jenom z výpočetního uzlu, na kterém je spuštěn primární úkol.

requiredSlots

integer

Počet slotů plánování, které úloha vyžaduje ke spuštění.
Výchozí hodnota je 1. Úkol je možné naplánovat tak, aby běžel pouze na výpočetním uzlu, pokud má uzel k dispozici dostatek volných slotů plánování. U úloh s více instancemi musí být tato možnost 1.

resourceFiles

ResourceFile[]

Seznam souborů, které služba Batch stáhne do výpočetního uzlu před spuštěním příkazového řádku.
U úloh s více instancemi se soubory prostředků stáhnou jenom do výpočetního uzlu, na kterém je spuštěn primární úkol. Seznam souborů prostředků má maximální velikost. Při překročení maximální velikosti požadavek selže a kód chyby odpovědi bude RequestEntityTooLarge. Pokud k tomu dojde, musí být kolekce ResourceFiles zmenšena velikostí. Toho lze dosáhnout pomocí .zip souborů, balíčků aplikací nebo kontejnerů Dockeru.

userIdentity

UserIdentity

Identita uživatele, pod kterou se úloha spouští.
Pokud tento parametr vynecháte, úloha se spustí jako uživatel, který není správcem, který je pro úlohu jedinečný.

Odpovědi

Name Typ Description
201 Created

Požadavek na službu Batch byl úspěšný.

Hlavičky

  • client-request-id: string
  • request-id: string
  • ETag: string
  • Last-Modified: string
  • DataServiceId: string
Other Status Codes

BatchError

Chyba ze služby Batch.

Zabezpečení

azure_auth

Tok ověřovacího kódu Microsoft Entra OAuth 2.0

Typ: oauth2
Tok: implicit
URL autorizace: https://login.microsoftonline.com/common/oauth2/authorize

Rozsahy

Name Description
user_impersonation Zosobnění uživatelského účtu

Authorization

Typ: apiKey
V: header

Příklady

Add a basic task
Add a container task with container data isolation
Add a container task with container data isolation bad request duplicate sources
Add a task with container settings
Add a task with exit conditions
Add a task with extra slot requirement

Add a basic task

Ukázkový požadavek

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2024-07-01.20.0



{
  "id": "task1",
  "commandLine": "cmd /c echo task1"
}

Ukázková odpověď

Add a container task with container data isolation

Ukázkový požadavek

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2024-07-01.20.0



{
  "id": "taskId",
  "commandLine": "bash -c 'echo hello'",
  "containerSettings": {
    "imageName": "ubuntu",
    "containerHostBatchBindMounts": [
      {
        "source": "Task",
        "isReadOnly": true
      }
    ]
  },
  "userIdentity": {
    "autoUser": {
      "scope": "task",
      "elevationLevel": "nonadmin"
    }
  }
}

Ukázková odpověď

Add a container task with container data isolation bad request duplicate sources

Ukázkový požadavek

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2024-07-01.20.0



{
  "id": "taskId",
  "commandLine": "bash -c 'echo hello'",
  "containerSettings": {
    "imageName": "ubuntu",
    "containerHostBatchBindMounts": [
      {
        "source": "Task",
        "isReadOnly": true
      },
      {
        "source": "Task",
        "isReadOnly": true
      }
    ]
  },
  "userIdentity": {
    "autoUser": {
      "scope": "task",
      "elevationLevel": "nonadmin"
    }
  }
}

Ukázková odpověď

Add a task with container settings

Ukázkový požadavek

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2024-07-01.20.0



{
  "id": "taskId",
  "commandLine": "bash -c 'echo hello'",
  "containerSettings": {
    "imageName": "ubuntu",
    "containerRunOptions": "--rm"
  },
  "userIdentity": {
    "autoUser": {
      "scope": "task",
      "elevationLevel": "nonadmin"
    }
  }
}

Ukázková odpověď

Add a task with exit conditions

Ukázkový požadavek

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2024-07-01.20.0



{
  "id": "taskId",
  "commandLine": "cmd /c exit 3",
  "exitConditions": {
    "exitCodeRanges": [
      {
        "start": 2,
        "end": 4,
        "exitOptions": {
          "jobAction": "terminate"
        }
      }
    ]
  },
  "userIdentity": {
    "autoUser": {
      "scope": "task",
      "elevationLevel": "nonadmin"
    }
  }
}

Ukázková odpověď

Add a task with extra slot requirement

Ukázkový požadavek

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2024-07-01.20.0



{
  "id": "task1",
  "requiredSlots": 2,
  "commandLine": "cmd /c echo task1"
}

Ukázková odpověď

Definice

Name Description
AccessScope

Prostředky služby Batch, ke kterým token uděluje přístup.

AffinityInformation

Nápovědu k lokalitě, kterou může služba Batch použít k výběru výpočetního uzlu, na kterém chcete spustit úlohu.

ApplicationPackageReference

Odkaz na balíček, který se má nasadit do výpočetních uzlů.

AuthenticationTokenSettings

Nastavení ověřovacího tokenu, který může úloha použít k provádění operací služby Batch.

AutoUserScope

Obor automatického uživatele

AutoUserSpecification

Určuje parametry pro automatického uživatele, který spouští úlohu ve službě Batch.

BatchError

Odpověď na chybu přijatá ze služby Azure Batch

BatchErrorDetail

Položka dalších informací zahrnutých v odpovědi na chybu služby Azure Batch

ComputeNodeIdentityReference

Odkaz na identitu přiřazenou uživatelem přidruženou k fondu Batch, který bude používat výpočetní uzel.

ContainerHostBatchBindMountEntry

Vstup cesty a režimu připojení, který chcete připojit k kontejneru úloh.

ContainerHostDataPath

Cesty, které budou připojeny ke kontejneru úlohy kontejneru.

ContainerRegistry

Privátní registr kontejneru.

ContainerWorkingDirectory

Umístění pracovního adresáře úlohy kontejneru.

DependencyAction

Akce, kterou služba Batch provádí na úkolech závislých na tomto úkolu.

ElevationLevel

Úroveň zvýšení úrovně uživatele

EnvironmentSetting

Proměnná prostředí, která se má nastavit v procesu úkolu.

ErrorMessage

V odpovědi na chybu služby Azure Batch se zobrazila chybová zpráva.

ExitCodeMapping

Jak by služba Batch měla reagovat, pokud úloha skončí s konkrétním ukončovacím kódem.

ExitCodeRangeMapping

Rozsah ukončovací kódy a způsob reakce služby Batch na ukončovací kódy v daném rozsahu.

ExitConditions

Určuje, jak má služba Batch reagovat po dokončení úlohy.

ExitOptions

Určuje, jak služba Batch reaguje na konkrétní výstupní podmínku.

HttpHeader

Pár název-hodnota hlavičky HTTP

JobAction

Akce, která se má provést u úlohy obsahující úkol, pokud úkol dokončí s danou podmínkou ukončení a vlastnost Job onTaskFailed je performExitOptionsJobAction.

MultiInstanceSettings

Nastavení, která určují, jak spustit úlohu s více instancemi.

OutputFile

Specifikace pro nahrání souborů z výpočetního uzlu Služby Azure Batch do jiného umístění po dokončení provádění procesu úlohy

OutputFileBlobContainerDestination

Určuje cíl nahrání souboru v kontejneru úložiště objektů blob v Azure.

OutputFileDestination

Cíl, do kterého se má soubor nahrát.

OutputFileUploadCondition

Podmínky, za kterých se má nahrát výstupní soubor úkolu nebo sada souborů.

OutputFileUploadOptions

Podrobnosti o operaci nahrávání výstupního souboru, včetně toho, za jakých podmínek se má nahrávání provést.

ResourceFile

Jeden soubor nebo více souborů, které se mají stáhnout do výpočetního uzlu.

TaskAddParameter

Úkol služby Azure Batch, který chcete přidat.

TaskConstraints

Omezení provádění, která se mají použít pro úlohu.

TaskContainerSettings

Nastavení kontejneru pro úlohu.

TaskDependencies

Určuje všechny závislosti úkolu. Všechny úlohy, které jsou explicitně zadány nebo v rámci rozsahu závislostí musí být dokončeny před naplánování závislého úkolu.

TaskIdRange

Rozsah ID úkolů, na které může úkol záviset. Všechny úkoly s ID v rozsahu musí být úspěšně dokončeny, aby bylo možné naplánovat závislý úkol.

UserIdentity

Definice identity uživatele, pod kterou je úloha spuštěna.

AccessScope

Prostředky služby Batch, ke kterým token uděluje přístup.

Name Typ Description
job

string

Uděluje přístup k provádění všech operací v úloze obsahující úkol.

AffinityInformation

Nápovědu k lokalitě, kterou může služba Batch použít k výběru výpočetního uzlu, na kterém chcete spustit úlohu.

Name Typ Description
affinityId

string

Neprůhlený řetězec představující umístění výpočetního uzlu nebo úlohy, která byla spuštěna dříve.
Id spřažení uzlu můžete předat, aby bylo možné označit, že tento úkol musí běžet na tomto výpočetním uzlu. Všimněte si, že se jedná jen o měkké spřažení. Pokud je cílový výpočetní uzel zaneprázdněný nebo nedostupný v době, kdy je úkol naplánován, bude úkol naplánován jinde.

ApplicationPackageReference

Odkaz na balíček, který se má nasadit do výpočetních uzlů.

Name Typ Description
applicationId

string

ID aplikace, která se má nasadit.
Při vytváření fondu musí být ID aplikace balíčku plně kvalifikované (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}).

version

string

Verze aplikace, která se má nasadit. Pokud tuto hodnotu vynecháte, nasadí se výchozí verze.
Pokud se tento parametr vynechá ve fondu a pro tuto aplikaci není zadána žádná výchozí verze, požadavek selže s kódem chyby InvalidApplicationPackageReferences a stavovým kódem HTTP 409. Pokud je tento parametr vynechán u úlohy a pro tuto aplikaci není zadána žádná výchozí verze, úloha selže s chybou předběžného zpracování.

AuthenticationTokenSettings

Nastavení ověřovacího tokenu, který může úloha použít k provádění operací služby Batch.

Name Typ Description
access

AccessScope[]

Prostředky služby Batch, ke kterým token uděluje přístup.
Ověřovací token uděluje přístup k omezené sadě operací služby Batch. V současné době je jedinou podporovanou hodnotou vlastnosti přístupu úloha, která uděluje přístup ke všem operacím souvisejícím s úlohou, která obsahuje úkol.

AutoUserScope

Obor automatického uživatele

Name Typ Description
pool

string

Určuje, že úloha se spustí jako běžný účet automatického uživatele, který se vytvoří na každém výpočetním uzlu ve fondu.

task

string

Určuje, že služba by měla pro úlohu vytvořit nového uživatele.

AutoUserSpecification

Určuje parametry pro automatického uživatele, který spouští úlohu ve službě Batch.

Name Typ Description
elevationLevel

ElevationLevel

Úroveň zvýšení oprávnění automatického uživatele
Výchozí hodnota neníadmin.

scope

AutoUserScope

Obor automatického uživatele
Výchozí hodnota je fond. Pokud fond používá Systém Windows, měla by být zadána hodnota Úlohy, pokud je vyžadována přísnější izolace mezi úlohami. Pokud například úloha ztlumí registr způsobem, který by mohl mít vliv na jiné úkoly, nebo pokud byly ve fondu zadány certifikáty, které by neměly být přístupné běžnými úkoly, ale měly by být přístupné nástrojem StartTasks.

BatchError

Odpověď na chybu přijatá ze služby Azure Batch

Name Typ Description
code

string

Identifikátor chyby. Kódy jsou invariantní a mají být využity programově.

message

ErrorMessage

Zpráva popisující chybu, která má být vhodná pro zobrazení v uživatelském rozhraní.

values

BatchErrorDetail[]

Kolekce párů klíč-hodnota obsahující další podrobnosti o chybě.

BatchErrorDetail

Položka dalších informací zahrnutých v odpovědi na chybu služby Azure Batch

Name Typ Description
key

string

Identifikátor určující význam vlastnosti Value.

value

string

Další informace zahrnuté v odpovědi na chybu.

ComputeNodeIdentityReference

Odkaz na identitu přiřazenou uživatelem přidruženou k fondu Batch, který bude používat výpočetní uzel.

Name Typ Description
resourceId

string

ID prostředku ARM identity přiřazené uživatelem.

ContainerHostBatchBindMountEntry

Vstup cesty a režimu připojení, který chcete připojit k kontejneru úloh.

Name Typ Description
isReadOnly

boolean

Připojte tuto zdrojovou cestu jako režim jen pro čtení nebo ne. Výchozí hodnota je false (režim čtení a zápisu).
Pokud tuto cestu pro Linux připojíte jako režim pro čtení a zápis, neznamená to, že všichni uživatelé v kontejneru mají pro cestu přístup pro čtení a zápis, závisí na přístupu na hostitelském virtuálním počítači. Pokud je tato cesta připojená jen pro čtení, nebudou moct změnit cestu všichni uživatelé v kontejneru.

source

ContainerHostDataPath

Cestu, která se připojí k zákazníkovi kontejneru, může vybrat.

ContainerHostDataPath

Cesty, které budou připojeny ke kontejneru úlohy kontejneru.

Name Typ Description
Applications

string

Cesta k aplikacím.

JobPrep

string

Cesta úkolu přípravy úlohy.

Shared

string

Cesta pro úlohu s více instancemi ke sdílení souborů.

Startup

string

Cesta ke spouštěcímu úkolu.

Task

string

Cesta k úkolu.

VfsMounts

string

Cesta obsahuje všechny virtuální systémy souborů, které jsou připojené k tomuto uzlu.

ContainerRegistry

Privátní registr kontejneru.

Name Typ Description
identityReference

ComputeNodeIdentityReference

Odkaz na identitu přiřazenou uživatelem, která se má použít pro přístup ke službě Azure Container Registry místo uživatelského jména a hesla.
Odkaz na identitu přiřazenou uživatelem přidruženou k fondu Batch, který bude používat výpočetní uzel.

password

string

Heslo pro přihlášení k serveru registru.

registryServer

string

Adresa URL registru.
Pokud tuto hodnotu vynecháte, výchozí hodnota je docker.io.

username

string

Uživatelské jméno pro přihlášení k serveru registru.

ContainerWorkingDirectory

Umístění pracovního adresáře úlohy kontejneru.

Name Typ Description
containerImageDefault

string

Použijte pracovní adresář definovaný v imagi kontejneru. Mějte na pozor, že tento adresář nebude obsahovat soubory prostředků stažené službou Batch.

taskWorkingDirectory

string

Použijte standardní pracovní adresář úlohy služby Batch, který bude obsahovat soubory zdrojů úkolů naplněné službou Batch.

DependencyAction

Akce, kterou služba Batch provádí na úkolech závislých na tomto úkolu.

Name Typ Description
block

string

Blokuje úkoly čekající na tento úkol, což jim brání v naplánování.

satisfy

string

Plnění úkolů čekajících na tento úkol; jakmile budou všechny závislosti splněné, bude úloha naplánována tak, aby se spustila.

ElevationLevel

Úroveň zvýšení úrovně uživatele

Name Typ Description
admin

string

Uživatel je uživatel se zvýšeným přístupem a pracuje s úplnými oprávněními správce.

nonadmin

string

Uživatel je standardní uživatel bez zvýšeného přístupu.

EnvironmentSetting

Proměnná prostředí, která se má nastavit v procesu úkolu.

Name Typ Description
name

string

Název proměnné prostředí.

value

string

Hodnota proměnné prostředí.

ErrorMessage

V odpovědi na chybu služby Azure Batch se zobrazila chybová zpráva.

Name Typ Description
lang

string

Kód jazyka chybové zprávy

value

string

Text zprávy.

ExitCodeMapping

Jak by služba Batch měla reagovat, pokud úloha skončí s konkrétním ukončovacím kódem.

Name Typ Description
code

integer

Ukončovací kód procesu.

exitOptions

ExitOptions

Jak by služba Batch měla reagovat, pokud úloha skončí s tímto ukončovacím kódem.

ExitCodeRangeMapping

Rozsah ukončovací kódy a způsob reakce služby Batch na ukončovací kódy v daném rozsahu.

Name Typ Description
end

integer

Poslední ukončovací kód v rozsahu.

exitOptions

ExitOptions

Jak by služba Batch měla reagovat, pokud úloha skončí s ukončovacím kódem v rozsahu od začátku do konce (včetně).

start

integer

První ukončovací kód v oblasti.

ExitConditions

Určuje, jak má služba Batch reagovat po dokončení úlohy.

Name Typ Description
default

ExitOptions

Jak by služba Batch měla reagovat, pokud úloha selže s výstupní podmínkou, na kterou se nevztahuje žádná z ostatních vlastností.
Tato hodnota se používá v případě, že úloha skončí s jakýmkoli nenulovým ukončovacím kódem, který není uveden v exitCodes nebo exitCodeRanges kolekce, s chybou předběžného zpracování, pokud preProcessingError vlastnost není k dispozici, nebo s chybou nahrání souboru, pokud souborUploadError vlastnost není k dispozici. Pokud chcete jiné než výchozí chování při ukončovacím kódu 0, musíte ho explicitně vypsat pomocí exitCodes nebo exitCodeRanges kolekce.

exitCodeRanges

ExitCodeRangeMapping[]

Seznam oblastí ukončovacího kódu úkolu a způsob reakce služby Batch na ně

exitCodes

ExitCodeMapping[]

Seznam jednotlivých ukončovacích kódů úkolů a způsob reakce služby Batch na ně

fileUploadError

ExitOptions

Jak by služba Batch měla reagovat, pokud dojde k chybě nahrávání souboru.
Pokud úloha ukončila ukončovací kód zadaný prostřednictvím exitCodes nebo exitCodeRanges a pak došlo k chybě nahrání souboru, má přednost akce určená ukončovacím kódem.

preProcessingError

ExitOptions

Jak by služba Batch měla reagovat, pokud se úloha nespustí kvůli chybě.

ExitOptions

Určuje, jak služba Batch reaguje na konkrétní výstupní podmínku.

Name Typ Description
dependencyAction

DependencyAction

Akce, kterou služba Batch provádí na úkolech závislých na tomto úkolu.
Možné hodnoty jsou "uspokojeny" (což umožňuje průběh závislých úkolů) a "blok" (závislé úkoly nadále čekají). Služba Batch zatím nepodporuje zrušení závislých úkolů.

jobAction

JobAction

Akce, která se má provést u úlohy obsahující úkol, pokud úkol dokončí s danou podmínkou ukončení a vlastnost Job onTaskFailed je performExitOptionsJobAction.
Výchozí hodnota není pro ukončovací kód 0 a ukončuje se pro všechny ostatní podmínky ukončení. Pokud vlastnost onTaskFailed úlohy není žádná akce, zadání této vlastnosti vrátí chybu a přidání požadavku na úkol selže s chybou neplatné hodnoty vlastnosti; Pokud voláte přímo rozhraní REST API, stavový kód HTTP je 400 (chybný požadavek).

HttpHeader

Pár název-hodnota hlavičky HTTP

Name Typ Description
name

string

Název hlavičky bez rozlišování malých a velkých písmen, který se má použít při nahrávání výstupních souborů

value

string

Hodnota hlavičky, která se má použít při nahrávání výstupních souborů

JobAction

Akce, která se má provést u úlohy obsahující úkol, pokud úkol dokončí s danou podmínkou ukončení a vlastnost Job onTaskFailed je performExitOptionsJobAction.

Name Typ Description
disable

string

Zakažte úlohu. To je ekvivalent volání rozhraní API pro zakázání úlohy s hodnotou disableTasks requeue.

none

string

Proveďte žádnou akci.

terminate

string

Ukončete úlohu. Funkce terminateReason v sadě Job's executionInfo je nastavena na "TaskFailed".

MultiInstanceSettings

Nastavení, která určují, jak spustit úlohu s více instancemi.

Name Typ Description
commonResourceFiles

ResourceFile[]

Seznam souborů, které služba Batch stáhne před spuštěním příkazového řádku koordinace.
Rozdíl mezi běžnými soubory zdrojů a soubory zdrojů úkolů spočívá v tom, že se společné soubory zdrojů stahují pro všechny dílčí úkoly, včetně primárních, zatímco soubory zdrojů úkolů se stahují jenom pro primární. Všimněte si také, že tyto soubory prostředků se nestáhnou do pracovního adresáře Úlohy, ale místo toho se stáhnou do kořenového adresáře úkolu (jeden adresář nad pracovním adresářem). Seznam souborů prostředků má maximální velikost. Při překročení maximální velikosti požadavek selže a kód chyby odpovědi bude RequestEntityTooLarge. Pokud k tomu dojde, musí být kolekce ResourceFiles zmenšena velikostí. Toho lze dosáhnout pomocí .zip souborů, balíčků aplikací nebo kontejnerů Dockeru.

coordinationCommandLine

string

Příkazový řádek, který se má spustit na všech výpočetních uzlech, aby bylo možné je koordinovat, když primární spustí hlavní příkaz Úlohy.
Typický příkazový řádek koordinace spustí službu na pozadí a ověří, že je služba připravená zpracovávat zprávy mezi uzly.

numberOfInstances

integer

Počet výpočetních uzlů vyžadovaných úlohou
Pokud tuto hodnotu vynecháte, výchozí hodnota je 1.

OutputFile

Specifikace pro nahrání souborů z výpočetního uzlu Služby Azure Batch do jiného umístění po dokončení provádění procesu úlohy

Name Typ Description
destination

OutputFileDestination

Cíl výstupních souborů

filePattern

string

Vzor označující, které soubory se mají nahrát.
Podporují se relativní i absolutní cesty. Relativní cesty jsou relativní vzhledem k pracovnímu adresáři úkolu. Podporují se následující zástupné znaky: * odpovídá 0 nebo více znakům (například vzor abc* by odpovídal abc nebo abcdef), ** odpovídá libovolnému adresáři? odpovídá jakémukoli jednomu znaku , [abc] odpovídá jednomu znaku v závorkách a [a-c] odpovídá jednomu znaku v oblasti. Hranaté závorky můžou obsahovat negaci odpovídající libovolnému znaku, který není zadaný (například [!abc] odpovídá libovolnému znaku, ale znaku b nebo c). Pokud název souboru začíná na "" je ve výchozím nastavení ignorován, ale může se shodovat zadáním explicitně (například .gif se neshoduje s .a.gif, ale.gif bude). Jednoduchý příklad: ***.txt odpovídá libovolnému souboru, který se nespustí v "." a končí .txt v pracovním adresáři úkolu nebo v libovolném podadresáři. Pokud název souboru obsahuje zástupný znak, může být řídicí znak pomocí závorek (například abc[] by odpovídal souboru s názvem abc). Všimněte si, že \ a / jsou považovány za oddělovače adresářů ve Windows, ale pouze / je v Linuxu. Proměnné prostředí (%var% ve Windows nebo $var v Linuxu) se před použitím vzoru rozbalí.

uploadOptions

OutputFileUploadOptions

Další možnosti operace nahrávání, včetně toho, za jakých podmínek se má nahrávání provést.

OutputFileBlobContainerDestination

Určuje cíl nahrání souboru v kontejneru úložiště objektů blob v Azure.

Name Typ Description
containerUrl

string

Adresa URL kontejneru ve službě Azure Blob Storage, do které se mají nahrát soubory.
Pokud nepoužíváte spravovanou identitu, musí adresa URL obsahovat sdílený přístupový podpis (SAS), který kontejneru uděluje oprávnění k zápisu.

identityReference

ComputeNodeIdentityReference

Odkaz na identitu přiřazenou uživatelem, která se má použít pro přístup ke službě Azure Blob Storage určenou pomocí containerUrl
Identita musí mít přístup k zápisu do kontejneru Azure Blob Storage.

path

string

Cílový objekt blob nebo virtuální adresář v rámci kontejneru Azure Storage.
Pokud filePattern odkazuje na určitý soubor (tj. neobsahuje žádné zástupné cardy), cesta je název objektu blob, do kterého chcete tento soubor nahrát. Pokud filePattern obsahuje jeden nebo více zástupných znaků (a proto může odpovídat více souborům), pak cesta je název virtuálního adresáře objektu blob (který je před každým názvem objektu blob), do kterého se mají nahrát soubory. Pokud tento parametr vynecháte, soubory se nahrají do kořenového adresáře kontejneru s názvem objektu blob, který odpovídá názvu souboru.

uploadHeaders

HttpHeader[]

Seznam párů název-hodnota pro hlavičky, které se mají použít při nahrávání výstupních souborů
Tyto hlavičky se zadají při nahrávání souborů do Azure Storage. Oficiální dokument o povolených hlavičkách při nahrávání objektů blob: https://docs.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types

OutputFileDestination

Cíl, do kterého se má soubor nahrát.

Name Typ Description
container

OutputFileBlobContainerDestination

Umístění v úložišti objektů blob v Azure, do kterého se soubory nahrají.

OutputFileUploadCondition

Podmínky, za kterých se má nahrát výstupní soubor úkolu nebo sada souborů.

Name Typ Description
taskcompletion

string

Po ukončení procesu úkolu nahrajte soubory bez ohledu na to, co byl ukončovací kód.

taskfailure

string

Nahrajte soubory až po ukončení procesu úkolu s nenulovým ukončovacím kódem.

tasksuccess

string

Nahrajte soubory až po ukončení procesu úkolu s ukončovacím kódem 0.

OutputFileUploadOptions

Podrobnosti o operaci nahrávání výstupního souboru, včetně toho, za jakých podmínek se má nahrávání provést.

Name Typ Description
uploadCondition

OutputFileUploadCondition

Podmínky, za kterých se má nahrát výstupní soubor úkolu nebo sada souborů.
Výchozí hodnota je dokončení úkolu.

ResourceFile

Jeden soubor nebo více souborů, které se mají stáhnout do výpočetního uzlu.

Name Typ Description
autoStorageContainerName

string

Název kontejneru úložiště v účtu automatického úložiště.
Vlastnosti autoStorageContainerName, storageContainerUrl a httpUrl se vzájemně vylučují a je nutné zadat jeden z nich.

blobPrefix

string

Předpona objektu blob, která se má použít při stahování objektů blob z kontejneru Azure Storage. Stáhnou se jenom objekty blob, jejichž názvy začínají zadanou předponou.
Vlastnost je platná pouze při použití autoStorageContainerName nebo storageContainerUrl. Tato předpona může být částečným názvem souboru nebo podadresářem. Pokud předpona není zadaná, stáhnou se všechny soubory v kontejneru.

fileMode

string

Atribut režimu oprávnění souboru v osmičkovém formátu.
Tato vlastnost se vztahuje pouze na soubory, které se stahují do výpočetních uzlů Linuxu. Bude ignorován, pokud je zadán pro resourceFile, který se stáhne do výpočetního uzlu Windows. Pokud tato vlastnost není zadána pro výpočetní uzel Linuxu, použije se na soubor výchozí hodnota 0770.

filePath

string

Umístění na výpočetním uzlu, ke kterému chcete stáhnout soubory vzhledem k pracovnímu adresáři úlohy.
Pokud je zadána vlastnost httpUrl, je souborPath vyžadován a popisuje cestu, do které se soubor stáhne, včetně názvu souboru. Jinak je zadána vlastnost autoStorageContainerName nebo storageContainerUrl, filePath je nepovinný a je adresář ke stažení souborů. V případě, že se filePath používá jako adresář, všechny adresářové struktury, které jsou již přidruženy ke vstupním datům, se zachovají v plném rozsahu a připojí se k zadanému adresáři filePath. Zadaná relativní cesta nemůže rozdělit pracovní adresář úkolu (například pomocí ..).

httpUrl

string

Adresa URL souboru, který chcete stáhnout.
Vlastnosti autoStorageContainerName, storageContainerUrl a httpUrl se vzájemně vylučují a je nutné zadat jeden z nich. Pokud adresa URL odkazuje na Azure Blob Storage, musí být čitelná z výpočetních uzlů. Existují tři způsoby, jak získat takovou adresu URL objektu blob v úložišti Azure: zahrnout sdílený přístupový podpis (SAS) udělující oprávnění ke čtení objektu blob, použít spravovanou identitu s oprávněním ke čtení nebo nastavit seznam ACL objektu blob nebo jeho kontejneru tak, aby umožňoval veřejný přístup.

identityReference

ComputeNodeIdentityReference

Odkaz na identitu přiřazenou uživatelem pro přístup ke službě Azure Blob Storage určené službou storageContainerUrl nebo httpUrl
Odkaz na identitu přiřazenou uživatelem přidruženou k fondu Batch, který bude používat výpočetní uzel.

storageContainerUrl

string

Adresa URL kontejneru objektů blob v rámci služby Azure Blob Storage.
Vlastnosti autoStorageContainerName, storageContainerUrl a httpUrl se vzájemně vylučují a je nutné zadat jeden z nich. Tato adresa URL musí být čitelná a vypisovatelná z výpočetních uzlů. Existují tři způsoby, jak získat takovou adresu URL kontejneru v úložišti Azure: zahrnutí sdíleného přístupového podpisu (SAS) udělujícího oprávnění ke čtení a seznamu v kontejneru, použití spravované identity s oprávněními ke čtení a seznamu nebo nastavení seznamu ACL pro kontejner tak, aby umožňoval veřejný přístup.

TaskAddParameter

Úkol služby Azure Batch, který chcete přidat.

Name Typ Description
affinityInfo

AffinityInformation

Nápovědu k umístění, kterou může služba Batch použít k výběru výpočetního uzlu, na kterém se má spustit nový úkol.

applicationPackageReferences

ApplicationPackageReference[]

Seznam balíčků, které služba Batch nasadí do výpočetního uzlu před spuštěním příkazového řádku.
Balíčky aplikací se stáhnou a nasadí do sdíleného adresáře, nikoli do pracovního adresáře Úlohy. Proto pokud odkazovaný balíček je již v uzlu a je aktuální, pak se znovu nestáhnou; Použije se existující kopie výpočetního uzlu. Pokud odkazovaný balíček nelze nainstalovat, například protože balíček byl odstraněn nebo protože stahování selhalo, úloha selže.

authenticationTokenSettings

AuthenticationTokenSettings

Nastavení ověřovacího tokenu, který může úloha použít k provádění operací služby Batch.
Pokud je tato vlastnost nastavená, služba Batch poskytuje úlohu ověřovací token, který se dá použít k ověřování operací služby Batch, aniž by vyžadovala přístupový klíč účtu. Token se poskytuje prostřednictvím proměnné prostředí AZ_BATCH_AUTHENTICATION_TOKEN. Operace, které může úloha provádět pomocí tokenu, závisí na nastavení. Úkol může například požádat o oprávnění úlohy, aby mohl do úlohy přidat další úkoly, nebo zkontrolovat stav úlohy nebo jiných úkolů v rámci úlohy.

commandLine

string

Příkazový řádek úkolu.
U úloh s více instancemi se příkazový řádek spustí jako primární úkol, jakmile primární úkol a všechny dílčí úkoly dokončí provádění koordinačního příkazového řádku. Příkazový řádek se nespustí pod prostředím, a proto nemůže využívat funkce prostředí, jako je rozšíření proměnné prostředí. Pokud chcete tyto funkce využít, měli byste vyvolat prostředí na příkazovém řádku, například pomocí příkazu cmd /c MyCommand ve Windows nebo /bin/sh -c MyCommand v Linuxu. Pokud příkazový řádek odkazuje na cesty k souborům, měl by použít relativní cestu (relativní k pracovnímu adresáři úkolu) nebo použít proměnnou prostředí poskytovanou službou Batch (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables).

constraints

TaskConstraints

Omezení provádění, která platí pro tuto úlohu.
Pokud nezadáte omezení, maxTaskRetryCount je hodnota maxTaskRetryCount zadaná pro úlohu, maxWallClockTime je nekonečná a doba uchování je 7 dní.

containerSettings

TaskContainerSettings

Nastavení kontejneru, pod kterým se úloha spouští.
Pokud má fond, který bude tuto úlohu spouštět, nastavený kontejnerConfiguration, musí být také nastaven. Pokud fond, který spustí tuto úlohu, nemá nastavenou konfiguraci kontejneru, nesmí být nastavena. Po zadání se všechny adresáře rekurzivně pod AZ_BATCH_NODE_ROOT_DIR (kořen adresářů Azure Batch na uzlu) mapují do kontejneru, všechny proměnné prostředí úloh se mapují do kontejneru a v kontejneru se spustí příkazový řádek úkolu. Soubory vytvořené v kontejneru mimo AZ_BATCH_NODE_ROOT_DIR se nemusí projevit na hostitelském disku, což znamená, že rozhraní API souborů batch nebudou mít přístup k těmto souborům.

dependsOn

TaskDependencies

Úkoly, na které tento úkol závisí.
Tento úkol nebude naplánován, dokud nebudou všechny úkoly, na kterých závisí, úspěšně dokončeny. Pokud některý z těchto úkolů selže a vyčerpá počet opakování, nebude tento úkol nikdy naplánován. Pokud úloha nemá použitíTaskDependencies nastavena na true a tento prvek je přítomn, požadavek selže s kódem chyby TaskDependenciesNotSpecifiedOnJob.

displayName

string

Zobrazovaný název úkolu.
Zobrazovaný název nemusí být jedinečný a může obsahovat libovolné znaky Unicode až do maximální délky 1024.

environmentSettings

EnvironmentSetting[]

Seznam nastavení proměnných prostředí pro úlohu

exitConditions

ExitConditions

Určuje, jak má služba Batch reagovat po dokončení úlohy.
Jak by služba Batch měla reagovat po dokončení úlohy.

id

string

Řetězec, který jednoznačně identifikuje úkol v rámci úlohy.
ID může obsahovat libovolnou kombinaci alfanumerických znaků včetně pomlček a podtržítka a nesmí obsahovat více než 64 znaků. ID nerozlišuje velká a malá a velká písmena (to znamená, že v úloze nesmíte mít dvě ID, která se liší pouze v případě).

multiInstanceSettings

MultiInstanceSettings

Objekt, který označuje, že úloha je úloha s více instancemi a obsahuje informace o tom, jak spustit úlohu s více instancemi.
Úlohy s více instancemi se běžně používají k podpoře úloh MPI. Pokud některý z dílčích úkolů v případě MPI selže (například kvůli ukončení s nenulovým ukončovacím kódem), selže celá úloha s více instancemi. Úloha s více instancemi se pak ukončí a opakuje až do limitu opakování.

outputFiles

OutputFile[]

Seznam souborů, které služba Batch nahraje z výpočetního uzlu po spuštění příkazového řádku
U úloh s více instancemi se soubory nahrají jenom z výpočetního uzlu, na kterém je spuštěn primární úkol.

requiredSlots

integer

Počet slotů plánování, které úloha vyžaduje ke spuštění.
Výchozí hodnota je 1. Úkol je možné naplánovat tak, aby běžel pouze na výpočetním uzlu, pokud má uzel k dispozici dostatek volných slotů plánování. U úloh s více instancemi musí být tato možnost 1.

resourceFiles

ResourceFile[]

Seznam souborů, které služba Batch stáhne do výpočetního uzlu před spuštěním příkazového řádku.
U úloh s více instancemi se soubory prostředků stáhnou jenom do výpočetního uzlu, na kterém je spuštěn primární úkol. Seznam souborů prostředků má maximální velikost. Při překročení maximální velikosti požadavek selže a kód chyby odpovědi bude RequestEntityTooLarge. Pokud k tomu dojde, musí být kolekce ResourceFiles zmenšena velikostí. Toho lze dosáhnout pomocí .zip souborů, balíčků aplikací nebo kontejnerů Dockeru.

userIdentity

UserIdentity

Identita uživatele, pod kterou se úloha spouští.
Pokud tento parametr vynecháte, úloha se spustí jako uživatel, který není správcem, který je pro úlohu jedinečný.

TaskConstraints

Omezení provádění, která se mají použít pro úlohu.

Name Typ Description
maxTaskRetryCount

integer

Maximální počet opakování úkolu. Služba Batch opakuje úlohu, pokud je jeho ukončovací kód nenulový.
Všimněte si, že tato hodnota konkrétně řídí počet opakování spustitelného souboru úlohy kvůli nenulovém ukončovacímu kódu. Služba Batch zkusí úlohu jednou a může to zkusit znovu až do tohoto limitu. Pokud je například maximální počet opakování 3, služba Batch se pokusí úkol opakovat až 4krát (jeden počáteční pokus a 3 opakování). Pokud je maximální počet opakování 0, služba Batch neopakuje úlohu po prvním pokusu. Pokud je maximální počet opakování -1, služba Batch opakuje úkol bez omezení, ale nedoporučuje se to pro spouštěcí úkol ani žádný úkol. Výchozí hodnota je 0 (žádné opakování).

maxWallClockTime

string

Maximální uplynulý čas, po který může úloha běžet, měřená od okamžiku spuštění úlohy. Pokud se úkol nedokončí v časovém limitu, služba Batch ji ukončí.
Pokud není zadaný, neexistuje žádný časový limit, jak dlouho může úloha běžet.

retentionTime

string

Minimální doba uchovávání adresáře úloh na výpočetním uzlu, na kterém byl spuštěný, od okamžiku dokončení provádění. Po této době může služba Batch odstranit adresář úloh a veškerý jeho obsah.
Výchozí hodnota je 7 dní, tj. adresář úloh se zachovají po dobu 7 dnů, pokud se neodebere výpočetní uzel nebo se úloha odstraní.

TaskContainerSettings

Nastavení kontejneru pro úlohu.

Name Typ Description
containerHostBatchBindMounts

ContainerHostBatchBindMountEntry[]

Cesty, které chcete připojit k úloze kontejneru.
Pokud je toto pole null nebo není k dispozici, úloha kontejneru připojí celou dočasnou diskovou jednotku ve Windows (nebo AZ_BATCH_NODE_ROOT_DIR v Linuxu). Pokud je toto pole nastavené jako prázdné, nepřipoje do kontejneru žádné cesty k datům.

containerRunOptions

string

Další možnosti příkazu create kontejneru
Tyto další možnosti se předávají jako argumenty příkazu "docker create" kromě těch, které řídí služba Batch.

imageName

string

Image, která se má použít k vytvoření kontejneru, ve kterém se úloha spustí.
Toto je úplný odkaz na image, jak by bylo určeno k "docker pull". Pokud v názvu image není k dispozici žádná značka, použije se jako výchozí značka :latest.

registry

ContainerRegistry

Privátní registr, který obsahuje image kontejneru.
Toto nastavení je možné vynechat, pokud už bylo k dispozici při vytváření fondu.

workingDirectory

ContainerWorkingDirectory

Umístění pracovního adresáře úlohy kontejneru.
Výchozí hodnota je taskWorkingDirectory.

TaskDependencies

Určuje všechny závislosti úkolu. Všechny úlohy, které jsou explicitně zadány nebo v rámci rozsahu závislostí musí být dokončeny před naplánování závislého úkolu.

Name Typ Description
taskIdRanges

TaskIdRange[]

Seznam rozsahů ID úkolu, na které tento úkol závisí. Všechny úkoly ve všech oblastech musí být úspěšně dokončeny, aby bylo možné naplánovat závislý úkol.

taskIds

string[]

Seznam ID úkolů, na které tento úkol závisí. Všechny úkoly v tomto seznamu musí být úspěšně dokončeny, aby bylo možné naplánovat závislý úkol.
Kolekce taskIds je omezená na 64 000 znaků celkem (tj. kombinovaná délka všech ID úkolů). Pokud kolekce taskIds překročí maximální délku, požadavek Přidat úlohu selže s kódem chyby TaskDependencyListTooLong. V tomto případě zvažte místo toho použití rozsahů ID úlohy.

TaskIdRange

Rozsah ID úkolů, na které může úkol záviset. Všechny úkoly s ID v rozsahu musí být úspěšně dokončeny, aby bylo možné naplánovat závislý úkol.

Name Typ Description
end

integer

Poslední ID úkolu v oblasti.

start

integer

První ID úkolu v oblasti.

UserIdentity

Definice identity uživatele, pod kterou je úloha spuštěna.

Name Typ Description
autoUser

AutoUserSpecification

Automatický uživatel, pod kterým je úloha spuštěna.
Vlastnosti userName a autoUser se vzájemně vylučují; musíte zadat jednu, ale ne obě.

username

string

Název identity uživatele, pod kterou je úloha spuštěna.
Vlastnosti userName a autoUser se vzájemně vylučují; musíte zadat jednu, ale ne obě.