Tasks - Create Task
Vytvoří úkol pro zadanou úlohu.
Maximální životnost úkolu od přidání do dokončení je 180 dní. Pokud úkol není dokončen do 180 dnů od přidání, bude ukončen službou Batch a ponechán v takovém stavu, v jakém byl v daném okamžiku.
POST {endpoint}/jobs/{jobId}/tasks?api-version=2025-06-01
POST {endpoint}/jobs/{jobId}/tasks?api-version=2025-06-01&timeOut={timeOut}
Parametry identifikátoru URI
| Name | V | Vyžadováno | Typ | Description |
|---|---|---|---|---|
|
endpoint
|
path | True |
string (uri) |
Koncový bod účtu Batch (například: https://batchaccount.eastus2.batch.azure.com). |
|
job
|
path | True |
string |
ID úkolu, ke kterému má být úkol vytvořen. |
|
api-version
|
query | True |
string minLength: 1 |
Verze rozhraní API, která se má použít pro tuto operaci. |
|
time
|
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 |
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-rfc7231) |
Č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á řádka úkolu. U víceinstancových úloh se příkazový řádek vykoná jako primární úkol poté, co primární úkol a všechny podúkoly dokončí koordinační příkazovou řá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://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables). |
| id | True |
string |
Řetězec, který jednoznačně identifikuje úkol v rámci práce. 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 je případově zachovávající a necitlivé na případy (to znamená, že v rámci práce nemůžete mít dvě ID, která se liší pouze podle případu). |
| affinityInfo |
Nápověda k lokalitě, kterou může dávková služba použít k výběru výpočetního uzlu, na kterém spustí novou úlohu. |
||
| applicationPackageReferences |
Seznam balíčků, které dávková služba nasadí na Compute Node před spuštěním příkazového řádku. Balíčky aplikací se stahují a nasazují do sdíleného adresáře, nikoli do pracovního adresáře Task. Pokud tedy odkazovaný balíček již je na uzlu a je aktuální, není znovu stahovatelný; používá se existující kopie na Compute Node. Pokud nelze nainstalovat odkazovaný Package, například proto, že byl balíček smazán nebo protože stažení selhalo, Task selže. |
||
| authenticationTokenSettings |
Nastavení ověřovacího tokenu, který může úloha použít k provádění operací služby Batch. Pokud je tato vlastnost nastavena, dávková služba poskytne úkolu autentizační token, který lze použít k autentizaci operací dávkové služby bez nutnosti přístupového klíče k účtu. Token se poskytuje prostřednictvím proměnné prostředí AZ_BATCH_AUTHENTICATION_TOKEN. Operace, které může úkol pomocí tokenu provést, závisí na nastavení. Například úkol může požádat o oprávnění k práci k přidání dalších úkolů do práce, nebo zkontrolovat stav práce či jiných úkolů pod touto úlohou. |
||
| constraints |
Omezení provádění, která se na tento úkol vztahují. Pokud nespecifikujete omezení, maxTaskRetryCount je maxTaskRetryCount určený pro danou úlohu, maxWallClockTime je nekonečný a retentionTime je 7 dní. |
||
| containerSettings |
Nastavení kontejneru, pod kterým Task běží. Pokud má pool, který bude tuto úlohu spouštět, nastaven containerConfiguration, musí být nastaven také. Pokud pool, který bude tuto úlohu spouštět, nemá nastavenou containerConfiguration, nesmí být nastavena. Když je toto specifikováno, všechny adresáře rekurzivně pod AZ_BATCH_NODE_ROOT_DIR (kořen adresářů Azure Batch na uzlu) jsou namapovány do kontejneru, všechny proměnné prostředí Tasku jsou do kontejneru namapovány a příkazový řádek Úkolu se vykoná v kontejneru. Soubory vytvořené v kontejneru mimo AZ_BATCH_NODE_ROOT_DIR nemusí být zobrazeny na hostitelském disku, což znamená, že dávková API souborů k těmto souborům nebudou mít přístup. |
||
| dependsOn |
Úkoly, na kterých tento úkol závisí. Tento úkol nebude plánován, dokud všechny úkoly, na kterých závisí, nebudou úspěšně dokončeny. Pokud některý z těchto úkolů selže a vyčerpá počet opakovaných pokusů, tento úkol nikdy nebude naplánován. Pokud úkol nemá usesTaskDependencies nastavený na true a tento prvek je přítomen, požadavek selže s chybovým kódem TaskDependenciesNotSpecificedOnJob. |
||
| displayName |
string |
Zobrazovací název pro úkol. Zobrazovaný název nemusí být jedinečný a může obsahovat libovolné znaky Unicode až do maximální délky 1024. |
|
| environmentSettings |
Seznam nastavení proměnných prostředí pro tento úkol. |
||
| exitConditions |
Jak by měla dávková služba reagovat po dokončení úkolu. |
||
| multiInstanceSettings |
Objekt, který označuje, že úkol je víceintenční úkol, a obsahuje informace o tom, jak víceinsekventní úkol spustit. |
||
| outputFiles |
Seznam souborů, které služba Batch nahraje z Compute Node po spuštění příkazového řádku. U víceinstancových úloh budou soubory nahrávány pouze z Compute Node, na kterém se vykonává primární Task. |
||
| requiredSlots |
integer (int32) |
Počet plánovacích slotů, které úkol vyžadoval k vykonání. Výchozí hodnota je 1. Úkol lze naplánovat k spuštění na výpočetním uzlu pouze tehdy, pokud má uzel dostatek volných slotů pro plánování. Pro víceinštinkční úkoly to musí být 1. |
|
| resourceFiles |
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 víceinsekvenčních úloh budou soubory zdrojů staženy pouze do Compute Node, na kterém je primární Task vykonávána. 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 |
Identita uživatele, pod kterou Task běží. Pokud je vynechán, Úkol běží jako neadministrátorský uživatel unikátní pro daný úkol. |
Odpovědi
| Name | Typ | Description |
|---|---|---|
| 201 Created |
Požadavek byl úspěšný a v důsledku toho byl vytvořen nový prostředek. Hlavičky
|
|
| Other Status Codes |
Neočekávaná chybová odpověď |
Zabezpečení
OAuth2Auth
Typ:
oauth2
Tok:
implicit
URL autorizace:
https://login.microsoftonline.com/common/oauth2/v2.0/authorize
Rozsahy
| Name | Description |
|---|---|
| https://batch.core.windows.net//.default |
Příklady
Creates a basic task
Ukázkový požadavek
POST {endpoint}/jobs/jobId/tasks?api-version=2025-06-01
{
"id": "task1",
"commandLine": "cmd /c echo task1"
}
Ukázková odpověď
Creates a task with container settings
Ukázkový požadavek
POST {endpoint}/jobs/jobId/tasks?api-version=2025-06-01
{
"id": "taskId",
"commandLine": "bash -c 'echo hello'",
"containerSettings": {
"imageName": "ubuntu",
"containerRunOptions": "--rm"
},
"userIdentity": {
"autoUser": {
"scope": "task",
"elevationLevel": "nonadmin"
}
}
}
Ukázková odpověď
Creates a task with container settings with data isolation
Ukázkový požadavek
POST {endpoint}/jobs/jobId/tasks?api-version=2025-06-01
{
"id": "taskId",
"commandLine": "bash -c 'echo hello'",
"containerSettings": {
"imageName": "ubuntu",
"containerHostBatchBindMounts": [
{
"source": "Task",
"isReadOnly": true
}
]
},
"userIdentity": {
"autoUser": {
"scope": "task",
"elevationLevel": "nonadmin"
}
}
}
Ukázková odpověď
Creates a task with container settings with duplicate source
Ukázkový požadavek
POST {endpoint}/jobs/jobId/tasks?api-version=2025-06-01
{
"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ěď
Creates a task with exit conditions
Ukázkový požadavek
POST {endpoint}/jobs/jobId/tasks?api-version=2025-06-01
{
"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ěď
Creates a task with extra slot requirement
Ukázkový požadavek
POST {endpoint}/jobs/jobId/tasks?api-version=2025-06-01
{
"id": "task1",
"requiredSlots": 2,
"commandLine": "cmd /c echo task1"
}
Ukázková odpověď
Definice
| Name | Description |
|---|---|
|
Authentication |
Nastavení ověřovacího tokenu, který může úloha použít k provádění operací služby Batch. |
|
Auto |
AutoUserScope enums |
|
Auto |
Určuje možnosti automatického uživatele, který spouští úlohu Služby Azure Batch. |
|
Batch |
Enums BatchAccessScope |
|
Batch |
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. |
|
Batch |
Odkaz na balíček, který se má nasadit do výpočetních uzlů. |
|
Batch |
Odpověď na chybu přijatá ze služby Azure Batch |
|
Batch |
Položka dalších informací zahrnutých v odpovědi na chybu služby Azure Batch |
|
Batch |
V odpovědi na chybu služby Azure Batch se zobrazila chybová zpráva. |
|
Batch |
Enumové soubory BatchJobAction |
|
Batch |
Odkaz na identitu přiřazenou uživatelem přidruženou k fondu Batch, který bude používat výpočetní uzel. |
|
Batch |
Omezení provádění, která se mají použít pro úlohu. |
|
Batch |
Nastavení kontejneru pro úlohu. |
|
Batch |
Parametry pro vytvoření úlohy Azure Batch |
|
Batch |
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. |
|
Batch |
Začátek a konec rozsahu jsou inkluzivní. Pokud má například rozsah začátek 9 a konec 12, představuje úkoly 9, 10, 11 a 12. |
|
Container |
Vstup cesty a režimu připojení, který chcete připojit k kontejneru úloh. |
|
Container |
Cesty, které budou připojeny ke kontejneru úlohy kontejneru. |
|
Container |
Privátní registr kontejneru. |
|
Container |
ContainerWorkingDirectory enums |
|
Dependency |
DependencyAction enumy |
|
Elevation |
Enumy ElevationLevel |
|
Environment |
Proměnná prostředí, která se má nastavit v procesu úkolu. |
|
Exit |
Jak by služba Batch měla reagovat, pokud úloha skončí s konkrétním ukončovacím kódem. |
|
Exit |
Rozsah ukončovací kódy a způsob reakce služby Batch na ukončovací kódy v daném rozsahu. |
|
Exit |
Určuje, jak má služba Batch reagovat po dokončení úlohy. |
|
Exit |
Určuje, jak služba Batch reaguje na konkrétní výstupní podmínku. |
|
Multi |
Ú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í. |
|
Output |
Při každém nahrání souboru služba Batch zapíše do výpočetního uzlu dva soubory protokolu,fileuploadout.txtafileuploaderr.txt. Tyto soubory protokolu slouží k získání dalších informací o konkrétním selhání. |
|
Output |
Určuje cíl nahrání souboru v kontejneru úložiště objektů blob v Azure. |
|
Output |
Cíl, do kterého se má soubor nahrát. |
|
Output |
OutputFileUploadCondition enums |
|
Output |
Možnosti operace nahrání výstupního souboru, včetně toho, za jakých podmínek se má nahrávání provést. |
|
Output |
Pár název-hodnota hlavičky HTTP |
|
Resource |
Jeden soubor nebo více souborů, které se mají stáhnout do výpočetního uzlu. |
|
User |
Definice identity uživatele, pod kterou je úloha spuštěna. Zadejte vlastnost userName nebo autoUser, ale ne obojí. |
AuthenticationTokenSettings
Nastavení ověřovacího tokenu, který může úloha použít k provádění operací služby Batch.
| Name | Typ | Description |
|---|---|---|
| access |
Dávkové zdroje, ke kterým token umožňuje přístup. Autentizační token umožňuje přístup k omezené sadě operací Batch služeb. V současnosti je jedinou podporovanou hodnotou pro vlastnost přístupu 'job', která umožňuje přístup ke všem operacím souvisejícím s úkolem, který úkol obsahuje. |
AutoUserScope
AutoUserScope enums
| Hodnota | Description |
|---|---|
| task |
Specifikuje, že služba by měla vytvořit nového uživatele pro úkol. |
| pool |
Specifikuje, že úkol běží jako společný automatický uživatelský účet, který je vytvořen na každém výpočetním uzlu v poolu. |
AutoUserSpecification
Určuje možnosti automatického uživatele, který spouští úlohu Služby Azure Batch.
| Name | Typ | Description |
|---|---|---|
| elevationLevel |
Úroveň zvýšení oprávnění automatického uživatele Výchozí hodnota neníadmin. |
|
| scope |
Obor pro 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. Například pokud úloha zmutuje registr způsobem, který by mohl mít vliv na jiné úlohy. |
BatchAccessScope
Enums BatchAccessScope
| Hodnota | Description |
|---|---|
| job |
Uděluje přístup k provádění všech operací na Úkolu obsahujícím Úkol. |
BatchAffinityInfo
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ůhledný řetězec reprezentující umístění výpočetního uzlu nebo úkolu, který již dříve běžel. Můžete předat affinityId uzlu, který indikuje, že tato úloha 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. |
BatchApplicationPackageReference
Odkaz na balíček, který se má nasadit do výpočetních uzlů.
| Name | Typ | Description |
|---|---|---|
| applicationId |
string |
ID aplikace, kterou 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 je tento požadavek v Poolu vynechán a pro tuto aplikaci není určena výchozí verze, požadavek selže s chybovým kódem InvalidApplicationPackageReferences a HTTP stavovým kódem 409. Pokud je tato funkce v úlohe vynechána a není pro tuto aplikaci určena výchozí verze, úloha selže s chybou při předzpracování. |
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 |
Zpráva popisující chybu, která má být vhodná pro zobrazení v uživatelském rozhraní. |
|
| values |
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. |
BatchErrorMessage
V odpovědi na chybu služby Azure Batch se zobrazila chybová zpráva.
| Name | Typ | Description |
|---|---|---|
| lang |
string |
Jazykový kód chybové zprávy. |
| value |
string |
Text zprávy. |
BatchJobActionKind
Enumové soubory BatchJobAction
| Hodnota | Description |
|---|---|
| none |
Nedělejte žádné kroky. |
| disable |
Vypněte práci. To je ekvivalentní volání disable Job API s hodnotou disableTasks requeue. |
| terminate |
Ukončit práci. TerminationReason v exekuci Job Info je nastaven na "TaskFailed". |
BatchNodeIdentityReference
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 (arm-id) |
ID prostředku ARM identity přiřazené uživatelem. |
BatchTaskConstraints
Omezení provádění, která se mají použít pro úlohu.
| Name | Typ | Description |
|---|---|---|
| maxTaskRetryCount |
integer (int32) |
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ě určuje počet opakovaných pokusů pro spustitelný soubor Task kvůli nenulovému výstupní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, dávková služba úkol po prvním pokusu nezkouší znovu. 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 (duration) |
Maximální uplynulý čas, který může úkol proběhnout, měřený od okamžiku, kdy úkol začne. Pokud úkol není dokončen v časovém limitu, dávková služba jej ukončí. Pokud to není specifikováno, neexistuje časový limit, jak dlouho může úkol trvat. |
| retentionTime |
string (duration) |
Minimální doba pro uchování adresáře úloh na Compute Node, kde běžel, je od okamžiku dokončení vykonání. Po uplynutí této doby může služba Batch složku úkolů smazat a veškerý jeho obsah. Výchozí je 7 dní, tj. adresář úloh bude ponechán po dobu 7 dní, pokud není Compute Node odstraněn nebo Job smazán. |
BatchTaskContainerSettings
Nastavení kontejneru pro úlohu.
| Name | Typ | Description |
|---|---|---|
| containerHostBatchBindMounts |
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 |
Obrázek, který použijete k vytvoření kontejneru, ve kterém bude úkol běžet. Toto je úplná reference na Image, jak by bylo specifikováno pro "docker pull". Pokud není v názvu obrázku uveden žádný tag, používá se tag ":latest" jako výchozí. |
| registry |
Soukromý registr, který obsahuje obraz kontejneru. Toto nastavení lze vynechat, pokud bylo již při tvorbě Poolu k dispozici. |
|
| workingDirectory |
Umístění pracovního adresáře kontejneru Task. Výchozí hodnota je taskWorkingDirectory. |
BatchTaskCreateOptions
Parametry pro vytvoření úlohy Azure Batch
| Name | Typ | Description |
|---|---|---|
| affinityInfo |
Nápověda k lokalitě, kterou může dávková služba použít k výběru výpočetního uzlu, na kterém spustí novou úlohu. |
|
| applicationPackageReferences |
Seznam balíčků, které dávková služba nasadí na Compute Node před spuštěním příkazového řádku. Balíčky aplikací se stahují a nasazují do sdíleného adresáře, nikoli do pracovního adresáře Task. Pokud tedy odkazovaný balíček již je na uzlu a je aktuální, není znovu stahovatelný; používá se existující kopie na Compute Node. Pokud nelze nainstalovat odkazovaný Package, například proto, že byl balíček smazán nebo protože stažení selhalo, Task selže. |
|
| authenticationTokenSettings |
Nastavení ověřovacího tokenu, který může úloha použít k provádění operací služby Batch. Pokud je tato vlastnost nastavena, dávková služba poskytne úkolu autentizační token, který lze použít k autentizaci operací dávkové služby bez nutnosti přístupového klíče k účtu. Token se poskytuje prostřednictvím proměnné prostředí AZ_BATCH_AUTHENTICATION_TOKEN. Operace, které může úkol pomocí tokenu provést, závisí na nastavení. Například úkol může požádat o oprávnění k práci k přidání dalších úkolů do práce, nebo zkontrolovat stav práce či jiných úkolů pod touto úlohou. |
|
| commandLine |
string |
Příkazová řádka úkolu. U víceinstancových úloh se příkazový řádek vykoná jako primární úkol poté, co primární úkol a všechny podúkoly dokončí koordinační příkazovou řá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://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables). |
| constraints |
Omezení provádění, která se na tento úkol vztahují. Pokud nespecifikujete omezení, maxTaskRetryCount je maxTaskRetryCount určený pro danou úlohu, maxWallClockTime je nekonečný a retentionTime je 7 dní. |
|
| containerSettings |
Nastavení kontejneru, pod kterým Task běží. Pokud má pool, který bude tuto úlohu spouštět, nastaven containerConfiguration, musí být nastaven také. Pokud pool, který bude tuto úlohu spouštět, nemá nastavenou containerConfiguration, nesmí být nastavena. Když je toto specifikováno, všechny adresáře rekurzivně pod AZ_BATCH_NODE_ROOT_DIR (kořen adresářů Azure Batch na uzlu) jsou namapovány do kontejneru, všechny proměnné prostředí Tasku jsou do kontejneru namapovány a příkazový řádek Úkolu se vykoná v kontejneru. Soubory vytvořené v kontejneru mimo AZ_BATCH_NODE_ROOT_DIR nemusí být zobrazeny na hostitelském disku, což znamená, že dávková API souborů k těmto souborům nebudou mít přístup. |
|
| dependsOn |
Úkoly, na kterých tento úkol závisí. Tento úkol nebude plánován, dokud všechny úkoly, na kterých závisí, nebudou úspěšně dokončeny. Pokud některý z těchto úkolů selže a vyčerpá počet opakovaných pokusů, tento úkol nikdy nebude naplánován. Pokud úkol nemá usesTaskDependencies nastavený na true a tento prvek je přítomen, požadavek selže s chybovým kódem TaskDependenciesNotSpecificedOnJob. |
|
| displayName |
string |
Zobrazovací název pro úkol. Zobrazovaný název nemusí být jedinečný a může obsahovat libovolné znaky Unicode až do maximální délky 1024. |
| environmentSettings |
Seznam nastavení proměnných prostředí pro tento úkol. |
|
| exitConditions |
Jak by měla dávková služba reagovat po dokončení úkolu. |
|
| id |
string |
Řetězec, který jednoznačně identifikuje úkol v rámci práce. 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 je případově zachovávající a necitlivé na případy (to znamená, že v rámci práce nemůžete mít dvě ID, která se liší pouze podle případu). |
| multiInstanceSettings |
Objekt, který označuje, že úkol je víceintenční úkol, a obsahuje informace o tom, jak víceinsekventní úkol spustit. |
|
| outputFiles |
Seznam souborů, které služba Batch nahraje z Compute Node po spuštění příkazového řádku. U víceinstancových úloh budou soubory nahrávány pouze z Compute Node, na kterém se vykonává primární Task. |
|
| requiredSlots |
integer (int32) |
Počet plánovacích slotů, které úkol vyžadoval k vykonání. Výchozí hodnota je 1. Úkol lze naplánovat k spuštění na výpočetním uzlu pouze tehdy, pokud má uzel dostatek volných slotů pro plánování. Pro víceinštinkční úkoly to musí být 1. |
| resourceFiles |
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 víceinsekvenčních úloh budou soubory zdrojů staženy pouze do Compute Node, na kterém je primární Task vykonávána. 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 |
Identita uživatele, pod kterou Task běží. Pokud je vynechán, Úkol běží jako neadministrátorský uživatel unikátní pro daný úkol. |
BatchTaskDependencies
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 |
Seznam rozsahů ID úkolu, na kterých tato úloha závisí. Všechny úkoly ve všech rozsahech musí být úspěšně dokončeny, než může být závislý úkol naplánován. |
|
| taskIds |
string[] |
Seznam ID úloh, na kterých tento úkol závisí. Všechny úkoly v tomto seznamu musí být úspěšně dokončeny, než může být závislý úkol naplánován. Kolekce taskIds je omezena na celkem 64000 znaků (tj. celkovou délku všech ID úloh). Pokud kolekce taskIds překročí maximální délku, požadavek Add Task selže s chybovým kódem TaskDependencyListTooLong. V takovém případě zvažte místo toho použití rozsahů Task ID. |
BatchTaskIdRange
Začátek a konec rozsahu jsou inkluzivní. Pokud má například rozsah začátek 9 a konec 12, představuje úkoly 9, 10, 11 a 12.
| Name | Typ | Description |
|---|---|---|
| end |
integer (int32) |
Poslední ID úkolu v rozsahu. |
| start |
integer (int32) |
První ID úkolu v rozsahu. |
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 |
Cestu, která se připojí k zákazníkovi kontejneru, může vybrat. |
ContainerHostDataPath
Cesty, které budou připojeny ke kontejneru úlohy kontejneru.
| Hodnota | Description |
|---|---|
| Shared |
Cesta pro úlohu s více instancemi ke sdílení souborů. |
| Startup |
Cesta ke spouštěcímu úkolu. |
| VfsMounts |
Cesta obsahuje všechny virtuální systémy souborů, které jsou připojené k tomuto uzlu. |
| Task |
Cesta k úkolu. |
| JobPrep |
Cesta úkolu přípravy úlohy. |
| Applications |
Cesta k aplikacím. |
ContainerRegistryReference
Privátní registr kontejneru.
| Name | Typ | Description |
|---|---|---|
| identityReference |
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. |
|
| password |
string (password) |
Heslo pro přihlášení k serveru registru. |
| registryServer |
string (uri) |
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
ContainerWorkingDirectory enums
| Hodnota | Description |
|---|---|
| taskWorkingDirectory |
Použijte standardní pracovní adresář Batch service Task Work, který bude obsahovat soubory Task Resource Files vyplněné Batchem. |
| containerImageDefault |
Použijte pracovní adresář definovaný v kontejnerovém obrazu. Pozor, tento adresář nebude obsahovat soubory zdrojů stažené Batchem. |
DependencyAction
DependencyAction enumy
| Hodnota | Description |
|---|---|
| satisfy |
Splnit úkoly čekající na tento úkol; Jakmile jsou všechny závislosti splněny, úkol bude naplánován k vykonání. |
| block |
Blokuje úkoly čekající na tento úkol, čímž zabraňuje jejich plánování. |
ElevationLevel
Enumy ElevationLevel
| Hodnota | Description |
|---|---|
| nonadmin |
Uživatel je standardní uživatel bez zvýšeného přístupu. |
| admin |
Uživatel je uživatel se zvýšeným přístupem a pracuje s úplnými oprávněními správce. |
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í. |
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 (int32) |
Kód výstupu z procesu. |
| exitOptions |
Jak by měla dávková služba reagovat, pokud úkol ukončí s tímto výstupní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 (int32) |
Poslední výstupní kód v dosahu. |
| exitOptions |
Jak by měla dávková služba reagovat, pokud úkol ukončí s výstupním kódem v rozsahu od začátku do konce (včetně). |
|
| start |
integer (int32) |
První výstupní kód v dosahu. |
ExitConditions
Určuje, jak má služba Batch reagovat po dokončení úlohy.
| Name | Typ | Description |
|---|---|---|
| default |
Jak by měla dávková služba reagovat, pokud úkol selže s podmínkou ukončení, kterou žádná z ostatních vlastností nepokrývá. Tato hodnota se použije, pokud úkol ukončí s jakýmkoli nenulovým výstupním kódem, který není uveden v kolekci exitCodes nebo exitCodeRanges, s chybou při předzpracování, pokud vlastnost preProcessingError není přítomna, nebo s chybou při nahrávání souboru, pokud vlastnost fileUploadError není přítomna. Pokud chcete nevýchozí chování u výstupního kódu 0, musíte jej explicitně uvést pomocí exitCodes nebo exitCodeRanges kolekce. |
|
| exitCodeRanges |
Seznam rozsahů výstupních kódů úkolů a jak by na ně měla dávková služba reagovat. |
|
| exitCodes |
Seznam jednotlivých výstupních kódů úkolů a jak by na ně měla dávková služba reagovat. |
|
| fileUploadError |
Jak by měla dávková služba reagovat, pokud dojde k chybě při nahrávání souboru. Pokud úkol ukončil výstupní kód určený pomocí exitCodes nebo exitCodeRanges a poté došlo k chybě při nahrávání souboru, má přednost akce specifikovaná výstupním kódem. |
|
| preProcessingError |
Jak by měla dávková služba reagovat, pokud se úkol nespustí kvůli chybě. |
ExitOptions
Určuje, jak služba Batch reaguje na konkrétní výstupní podmínku.
| Name | Typ | Description |
|---|---|---|
| dependencyAction |
Akce, kterou batch služba provádí na úkolech závislých na tomto úkolu. Možné hodnoty jsou 'splnit' (umožnit postup závislých úkolů) a 'blokovat' (závislé úkoly stále čekají). Batch zatím nepodporuje zrušení závislých úloh. |
|
| jobAction |
Akce k provedení na Jobu obsahujícím Task, pokud Task dokončí s danou výstupní podmínkou a vlastností JobOnTaskFailed je 'performExitOptionsJobAction'. Výchozí je žádný pro výstupní kód 0 a ukončený pro všechny ostatní podmínky výstupu. Pokud je vlastností onTaskFailed úkolu noaction, pak zadání této vlastnosti vrátí chybu a požadavek na přidání úkolu selže s chybou neplatné hodnoty vlastnosti; pokud voláte přímo REST API, HTTP stavový kód je 400 (Špatný požadavek). |
MultiInstanceSettings
Ú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í.
| Name | Typ | Description |
|---|---|---|
| commonResourceFiles |
Seznam souborů, které služba Batch stáhne před spuštěním koordinačního příkazového řádku. Rozdíl mezi běžnými soubory zdrojů a soubory zdrojů úkolů je v tom, že společné soubory zdrojů jsou stahovány pro všechny podúlohy včetně primárního, zatímco soubory zdrojů úkolů jsou stahovány pouze pro primární. Dále si všimněte, že tyto soubory zdrojů nejsou stahovány do pracovního adresáře Task, ale do kořenového adresáře Task (o 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 pro spuštění všech Compute Nodes, aby mohly koordinovat při spuštění hlavního příkazu Task. Typický koordinační příkazový řádek spouští službu na pozadí a ověřuje, že služba je připravena zpracovávat zprávy mezi uzly. |
| numberOfInstances |
integer (int32) |
Počet výpočetních uzlů požadovaných úkolem. Pokud je vynecháno, výchozí je 1. |
OutputFile
Při každém nahrání souboru služba Batch zapíše do výpočetního uzlu dva soubory protokolu,fileuploadout.txtafileuploaderr.txt. Tyto soubory protokolu slouží k získání dalších informací o konkrétním selhání.
| Name | Typ | Description |
|---|---|---|
| destination |
Cíl výstupních souborů. |
|
| filePattern |
string |
Vzor určující, které soubory nahrát. Podporují se jak relativní, tak absolutní cesty. Relativní cesty jsou relativní k pracovnímu adresáři Task. Podporovány jsou následující žolíky: * odpovídá 0 nebo více znakům (například vzor abc* by odpovídal abc nebo abcdef), ** odpovídá libovolnému adresáři, ? Shoduje se s libovolným znakem, [ABC] s jedním znakem v závorce a [A-C] s jedním znakem v rozsahu. Závorky mohou obsahovat negaci, která odpovídá jakémukoli znaku, který není specifikován (například [!abc] odpovídá jakémukoli znaku kromě a, b nebo c). Pokud název souboru začíná na "." je ve výchozím nastavení ignorován, ale může být přiřazen explicitním zadáním (například .gif nebude odpovídat .a.gif, ale ..gif ano). Jednoduchý příklad: ***.txt odpovídá jakémukoli souboru, který nezačíná na '.' a končí na .txt v pracovním adresáři Task nebo v jakémkoli podadresáři. Pokud název souboru obsahuje zástupný znak, lze jej uniknout pomocí závorek (například abc[] by odpovídalo souboru s názvem abc). Všimněte si, že \ a / jsou na Windows považovány za oddělovače adresářů, ale na Linuxu je to pouze / (). Proměnné prostředí (%var% na Windows nebo $var na Linuxu) jsou rozšířeny před aplikací vzoru. |
| uploadOptions |
Další možnosti pro nahrávací operaci, včetně podmínek nahrávání. |
OutputFileBlobContainerDestination
Určuje cíl nahrání souboru v kontejneru úložiště objektů blob v Azure.
| Name | Typ | Description |
|---|---|---|
| containerUrl |
string (uri) |
URL kontejneru v Azure Blob Storage, do kterého se soubory nahrávají. Pokud nepoužívá spravovanou identitu, musí URL obsahovat Shared Access Signature (SAS), který umožňuje zápis do kontejneru. |
| identityReference |
Odkaz na uživatelem přiřazenou identitu pro přístup k Azure Blob Storage specifikuje containerUrl. Identita musí mít přístup k zápisu do kontejneru Azure Blob Storage. |
|
| path |
string |
Cílový blob nebo virtuální adresář uvnitř kontejneru Azure Storage. Pokud filePattern odkazuje na konkrétní soubor (tj. neobsahuje žádné divoké znaky), pak path je název blobu, do kterého se soubor nahrává. Pokud filePattern obsahuje jednu nebo více divokých znaků (a proto může odpovídat více souborům), pak path je název virtuálního adresáře blobů (který je předem přiřazen ke každému názvu blobu), do kterého se soubor (soubory) nahrávají. Pokud je vynecháno, soubor(y) jsou nahrany do kořene kontejneru s názvem blob, který odpovídá jejich názvu souboru. |
| uploadHeaders |
Seznam dvojic název-hodnota pro hlavičky určené k nahrávání výstupních souborů. Tyto hlavičky budou specifikovány při nahrávání souborů do Azure Storage. Oficiální dokument o povolených hlavičkách při nahrávání blobů: https://learn.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 |
Místo v Azure blob storage, kam se nahrávají soubory. |
OutputFileUploadCondition
OutputFileUploadCondition enums
| Hodnota | Description |
|---|---|
| tasksuccess |
Soubor (soubory) nahrajte až po ukončení procesu úkolu s výstupním kódem 0. |
| taskfailure |
Soubor nahrávejte až po ukončení procesu úkolu s nenulovým výstupním kódem. |
| taskcompletion |
Nahrajte soubor(y) po ukončení procesu Task, bez ohledu na výstupní kód. |
OutputFileUploadConfig
Možnosti operace nahrání výstupního souboru, včetně toho, za jakých podmínek se má nahrávání provést.
| Name | Typ | Description |
|---|---|---|
| uploadCondition |
Podmínky, za kterých by měl být výstupní soubor nebo sada souborů úkolu nahrána. Výchozí je plnění úkolů. |
OutputFileUploadHeader
Pár název-hodnota hlavičky HTTP
| Name | Typ | Description |
|---|---|---|
| name |
string |
Název hlavičky bez rozlišování písmen, která se používá při nahrávání výstupních souborů. |
| value |
string |
Hodnota hlavičky, která má být použita při nahrávání výstupních souborů. |
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 skladovacího kontejneru 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 stahované do Linux Compute Nodes. Bude ignorován, pokud je specifikován pro resource file, který bude stažen do Windows Compute Node. Pokud tato vlastnost není specifikována pro Linux Compute Node, je na soubor aplikována výchozí hodnota 0770. |
| filePath |
string |
Umístění na Compute Node, kam se soubor (soubory) stahují, vzhledem k pracovnímu adresáři úkolu. 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. Specifikovaná relativní cesta nemůže vystoupit z pracovního adresáře úkolu (například použitím '..'). |
| httpUrl |
string (uri) |
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 |
Odkaz na uživatelem přiřazenou identitu pro přístup k Azure Blob Storage specifikuje storageContainerUrl nebo httpUrl. |
|
| storageContainerUrl |
string (uri) |
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. |
UserIdentity
Definice identity uživatele, pod kterou je úloha spuštěna. Zadejte vlastnost userName nebo autoUser, ale ne obojí.
| Name | Typ | Description |
|---|---|---|
| autoUser |
Automatický uživatel, pod kterým se úkol spouští. Vlastnosti userName a autoUser se vzájemně vylučují; musíte zadat jednu, ale ne obě. |
|
| username |
string |
Název uživatelské identity, pod kterou je úkol spuštěn. Vlastnosti userName a autoUser se vzájemně vylučují; musíte zadat jednu, ale ne obě. |