Sdílet prostřednictvím


BatchTaskOutput interface

Služba Batch bude opakovat úlohy, když se na uzlu aktivuje operace obnovení. Příklady operací obnovení zahrnují (ale nejsou omezené) při restartování uzlu, který není v pořádku, nebo výpočetní uzel zmizel kvůli selhání hostitele. Opakované pokusy z důvodu operací obnovení jsou nezávislé na hodnotě maxTaskRetryCount a nezapočítávají se do hodnoty maxTaskRetryCount. I když je hodnota maxTaskRetryCount 0, může dojít k internímu opakování kvůli operaci obnovení. Z tohoto důvodu by všechny úkoly měly být idempotentní. To znamená, že úkoly musí tolerovat přerušení a restartování, aniž by to způsobilo poškození nebo duplicitní data. Osvědčeným postupem pro dlouhotrvající úlohy je použití určité formy vytváření kontrolních bodů.

Vlastnosti

affinityInfo

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

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

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

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://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables).

constraints

Omezení provádění, která platí pro tuto úlohu.

containerSettings

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.

creationTime

Čas vytvoření úkolu.

dependsOn

Ú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.

displayName

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

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

eTag

ETag úkolu. Jedná se o neprůhlený řetězec. Můžete ho použít ke zjištění, jestli se úloha mezi požadavky změnila. Konkrétně můžete při aktualizaci úkolu předat značku ETag, aby se změny projevily pouze v případě, že do té doby úkol nikdo jiný nezměnil.

executionInfo

Informace o provádění úlohy.

exitConditions

Jak by služba Batch měla reagovat po dokončení úlohy.

id

Ř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ů.

lastModified

Čas poslední změny úkolu.

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.

nodeInfo

Informace o výpočetním uzlu, na kterém úloha běžela.

outputFiles

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.

previousState

Předchozí stav úkolu. Tato vlastnost není nastavena, pokud je úkol v počátečním stavu Aktivní.

Možné hodnoty: "active", "preparing", "running", "completed"

previousStateTransitionTime

Čas, kdy úkol vstoupil do předchozího stavu. Tato vlastnost není nastavena, pokud je úkol v počátečním stavu Aktivní.

requiredSlots

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

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.

state

Aktuální stav úkolu.

Možné hodnoty: "active", "preparing", "running", "completed"

stateTransitionTime

Čas, kdy úkol vstoupil do aktuálního stavu.

stats

Statistika využití zdrojů pro úkol

url

Adresa URL úkolu.

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ý.

Podrobnosti vlastnosti

affinityInfo

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.

affinityInfo?: BatchAffinityInfoOutput

Hodnota vlastnosti

applicationPackageReferences

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.

applicationPackageReferences?: BatchApplicationPackageReferenceOutput[]

Hodnota vlastnosti

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.

authenticationTokenSettings?: AuthenticationTokenSettingsOutput

Hodnota vlastnosti

commandLine

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://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables).

commandLine: string

Hodnota vlastnosti

string

constraints

Omezení provádění, která platí pro tuto úlohu.

constraints?: BatchTaskConstraintsOutput

Hodnota vlastnosti

containerSettings

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.

containerSettings?: BatchTaskContainerSettingsOutput

Hodnota vlastnosti

creationTime

Čas vytvoření úkolu.

creationTime: string

Hodnota vlastnosti

string

dependsOn

Ú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.

dependsOn?: BatchTaskDependenciesOutput

Hodnota vlastnosti

displayName

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.

displayName?: string

Hodnota vlastnosti

string

environmentSettings

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

environmentSettings?: EnvironmentSettingOutput[]

Hodnota vlastnosti

eTag

ETag úkolu. Jedná se o neprůhlený řetězec. Můžete ho použít ke zjištění, jestli se úloha mezi požadavky změnila. Konkrétně můžete při aktualizaci úkolu předat značku ETag, aby se změny projevily pouze v případě, že do té doby úkol nikdo jiný nezměnil.

eTag: string

Hodnota vlastnosti

string

executionInfo

Informace o provádění úlohy.

executionInfo?: BatchTaskExecutionInfoOutput

Hodnota vlastnosti

exitConditions

Jak by služba Batch měla reagovat po dokončení úlohy.

exitConditions?: ExitConditionsOutput

Hodnota vlastnosti

id

Ř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: string

Hodnota vlastnosti

string

lastModified

Čas poslední změny úkolu.

lastModified: string

Hodnota vlastnosti

string

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.

multiInstanceSettings?: MultiInstanceSettingsOutput

Hodnota vlastnosti

nodeInfo

Informace o výpočetním uzlu, na kterém úloha běžela.

nodeInfo?: BatchNodeInfoOutput

Hodnota vlastnosti

outputFiles

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.

outputFiles?: OutputFileOutput[]

Hodnota vlastnosti

previousState

Předchozí stav úkolu. Tato vlastnost není nastavena, pokud je úkol v počátečním stavu Aktivní.

Možné hodnoty: "active", "preparing", "running", "completed"

previousState?: string

Hodnota vlastnosti

string

previousStateTransitionTime

Čas, kdy úkol vstoupil do předchozího stavu. Tato vlastnost není nastavena, pokud je úkol v počátečním stavu Aktivní.

previousStateTransitionTime?: string

Hodnota vlastnosti

string

requiredSlots

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.

requiredSlots?: number

Hodnota vlastnosti

number

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 ú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.

resourceFiles?: ResourceFileOutput[]

Hodnota vlastnosti

state

Aktuální stav úkolu.

Možné hodnoty: "active", "preparing", "running", "completed"

state: string

Hodnota vlastnosti

string

stateTransitionTime

Čas, kdy úkol vstoupil do aktuálního stavu.

stateTransitionTime: string

Hodnota vlastnosti

string

stats

Statistika využití zdrojů pro úkol

stats?: BatchTaskStatisticsOutput

Hodnota vlastnosti

url

Adresa URL úkolu.

url: string

Hodnota vlastnosti

string

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ý.

userIdentity?: UserIdentityOutput

Hodnota vlastnosti