Sdílet prostřednictvím


New-AzBatchTask

Vytvoří úkol Batch v rámci úlohy.

Syntaxe

New-AzBatchTask
   -JobId <String>
   -Id <String>
   [-DisplayName <String>]
   -CommandLine <String>
   [-ResourceFiles <PSResourceFile[]>]
   [-EnvironmentSettings <IDictionary>]
   [-AuthenticationTokenSettings <PSAuthenticationTokenSettings>]
   [-UserIdentity <PSUserIdentity>]
   [-AffinityInformation <PSAffinityInformation>]
   [-Constraints <PSTaskConstraints>]
   [-MultiInstanceSettings <PSMultiInstanceSettings>]
   [-DependsOn <TaskDependencies>]
   [-ApplicationPackageReferences <PSApplicationPackageReference[]>]
   [-OutputFile <PSOutputFile[]>]
   [-ExitConditions <PSExitConditions>]
   [-ContainerSettings <PSTaskContainerSettings>]
   -BatchContext <BatchAccountContext>
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzBatchTask
   -JobId <String>
   [-Tasks <PSCloudTask[]>]
   -BatchContext <BatchAccountContext>
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzBatchTask
   [-Job <PSCloudJob>]
   [-Tasks <PSCloudTask[]>]
   -BatchContext <BatchAccountContext>
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzBatchTask
   [-Job <PSCloudJob>]
   -Id <String>
   [-DisplayName <String>]
   -CommandLine <String>
   [-ResourceFiles <PSResourceFile[]>]
   [-EnvironmentSettings <IDictionary>]
   [-AuthenticationTokenSettings <PSAuthenticationTokenSettings>]
   [-UserIdentity <PSUserIdentity>]
   [-AffinityInformation <PSAffinityInformation>]
   [-Constraints <PSTaskConstraints>]
   [-MultiInstanceSettings <PSMultiInstanceSettings>]
   [-DependsOn <TaskDependencies>]
   [-ApplicationPackageReferences <PSApplicationPackageReference[]>]
   [-OutputFile <PSOutputFile[]>]
   [-ExitConditions <PSExitConditions>]
   [-ContainerSettings <PSTaskContainerSettings>]
   -BatchContext <BatchAccountContext>
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Description

Rutina New-AzBatchTask vytvoří úlohu Azure Batch v úloze určené parametrem JobId nebo parametrem Job.

Příklady

Příklad 1: Vytvoření úlohy Batch

New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -BatchContext $Context

Tento příkaz vytvoří úkol s ID Úkol23 pod úlohou, která má ID Job-000001. Úloha spustí zadaný příkaz. Pomocí rutiny Get-AzBatchAccountKey přiřaďte kontext proměnné $Context.

Příklad 2: Vytvoření úlohy Batch

$autoUser = New-Object Microsoft.Azure.Commands.Batch.Models.PSAutoUserSpecification -ArgumentList @("Task", "Admin")
$userIdentity = New-Object Microsoft.Azure.Commands.Batch.Models.PSUserIdentity $autoUser
Get-AzBatchJob -Id "Job-000001" -BatchContext $Context | New-AzBatchTask -Id "Task26" -CommandLine "cmd /c echo hello > newFile.txt" -UserIdentity $userIdentity -BatchContext $Context

Tento příkaz získá úlohu Batch, která má ID Job-000001 pomocí rutiny Get-AzBatchJob. Příkaz předá danou úlohu aktuální rutině pomocí operátoru kanálu. Příkaz vytvoří úkol s ID Task26 pod danou úlohou. Úloha spustí zadaný příkaz pomocí zvýšených oprávnění.

Příklad 3: Přidání kolekce úkolů do zadané úlohy pomocí kanálu

$Context = Get-AzBatchAccountKey -AccountName "ContosoBatchAccount"
$Task01 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task23", "cmd /c dir /s")
$Task02 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task24", "cmd /c dir /s")
Get-AzBatchJob -Id "Job-000001" -BatchContext $Context | New-AzBatchTask -Tasks @($Task01, $Task02) -BatchContext $Context

První příkaz vytvoří odkaz na objekt klíče účtu pro účet batch s názvem ContosoBatchAccount pomocí Get-AzBatchAccountKey. Příkaz uloží tento odkaz na objekt do proměnné $Context. Následující dva příkazy vytvoří PSCloudTask objekty pomocí rutiny New-Object. Příkazy ukládají úkoly do proměnných $Task 01 a $Task 02. Poslední příkaz získá úlohu Batch, která má ID Job-000001 pomocí Get-AzBatchJob. Potom příkaz předá danou úlohu aktuální rutině pomocí operátoru kanálu. Příkaz přidá do této úlohy kolekci úkolů. Příkaz používá kontext uložený v $Context.

Příklad 4: Přidání kolekce úkolů do zadané úlohy

$Context = Get-AzBatchAccountKey -AccountName "ContosoBatchAccount"
$Task01 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task23", "cmd /c dir /s")
$Task02 = New-Object Microsoft.Azure.Commands.Batch.Models.PSCloudTask("Task24", "cmd /c dir /s")
New-AzBatchTask -JobId "Job-000001" -Tasks @($Task01, $Task02) -BatchContext $Context

První příkaz vytvoří odkaz na objekt klíče účtu pro účet batch s názvem ContosoBatchAccount pomocí Get-AzBatchAccountKey. Příkaz uloží tento odkaz na objekt do proměnné $Context. Následující dva příkazy vytvoří PSCloudTask objekty pomocí rutiny New-Object. Příkazy ukládají úkoly do proměnných $Task 01 a $Task 02. Poslední příkaz přidá úkoly uložené v $Task 01 a $Task 02 do úlohy, která má ID Job-000001.

Příklad 5: Přidání úlohy s výstupními soubory

New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -BatchContext $Context
$blobContainerDestination = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFileBlobContainerDestination "https://myaccount.blob.core.windows.net/sascontainer?sv=2015-04-05&st=2015-04-29T22%3A18%3A26Z&se=2015-04-30T02%3A23%3A26Z&sr=b&sp=rw&spr=https&sig=Z%2FRHIX5Xcg0Mq2rqI3OlWTjEg2tYkboXr1P9ZUXDtkk%3D"
$destination = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFileDestination $blobContainerDestination
$uploadOptions = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFileUploadOptions "TaskSuccess"
$outputFile = New-Object Microsoft.Azure.Commands.Batch.Models.PSOutputFile "*.txt", $blobContainerDestination, $uploadOptions

New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -OutputFile $outputFile -BatchContext $Context

Příklad 6: Přidání úlohy s nastavením ověřovacího tokenu

$authSettings = New-Object Microsoft.Azure.Commands.Batch.Models.PSAuthenticationTokenSettings
$authSettings.Access = "Job"
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -AuthenticationTokenSettings $authSettings -BatchContext $Context

Příklad 7: Přidání úlohy, která se spouští v kontejneru

$Context = Get-AzBatchAccountKey -AccountName "ContosoBatchAccount"
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -ContainerSettings (New-Object Microsoft.Azure.Commands.Batch.Models.PSTaskContainerSettings "containerImageName") -BatchContext $Context

Parametry

-AffinityInformation

Určuje nápovědu pro lokalitu, kterou služba Batch používá k výběru uzlu, na kterém se má úloha spustit.

Typ:PSAffinityInformation
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-ApplicationPackageReferences

Typ:PSApplicationPackageReference[]
Aliasy:ApplicationPackageReference
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-AuthenticationTokenSettings

Nastavení ověřovacího tokenu, který může úloha použít k provádění operací služby Batch. Pokud je tato možnost nastavená, služba Batch poskytuje úlohu s ověřovacím tokenem, 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í k úloze, aby mohl do úlohy přidat další úkoly, nebo zkontrolovat stav úlohy nebo jiných úkolů.

Typ:PSAuthenticationTokenSettings
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-BatchContext

Určuje instanci BatchAccountContext, kterou tato rutina používá k interakci se službou Batch. Pokud k získání účtu BatchAccountContext použijete rutinu Get-AzBatchAccount, použije se při interakci se službou Batch ověřování Microsoft Entra. Pokud chcete místo toho použít ověřování pomocí sdíleného klíče, použijte rutinu Get-AzBatchAccountKey k získání objektu BatchAccountContext s vyplněnými přístupovými klíči. Při použití ověřování pomocí sdíleného klíče se ve výchozím nastavení používá primární přístupový klíč. Pokud chcete změnit klíč, který chcete použít, nastavte vlastnost BatchAccountContext.KeyInUse.

Typ:BatchAccountContext
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-CommandLine

Určuje příkazový řádek úkolu.

Typ:String
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Constraints

Určuje omezení provádění, která se vztahují na tuto úlohu.

Typ:PSTaskConstraints
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-ContainerSettings

Nastavení kontejneru, pod kterým se úloha spouští. Pokud má fond, který bude tuto úlohu spouštět, nastavena kontejnerConfiguration, musí být také nastavena. 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 příkazový řádek úkolu se spustí v kontejneru.

Typ:PSTaskContainerSettings
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-DefaultProfile

Přihlašovací údaje, účet, tenant a předplatné používané ke komunikaci s Azure.

Typ:IAzureContextContainer
Aliasy:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-DependsOn

Určuje, že úkol závisí na jiných úkolech. Úkol nebude naplánován, dokud se všechny závislé úkoly úspěšně nedokončily.

Typ:TaskDependencies
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-DisplayName

Určuje zobrazovaný název úkolu.

Typ:String
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-EnvironmentSettings

Určuje nastavení prostředí, jako páry klíč/hodnota, které tato rutina přidá do úlohy. Klíč je název nastavení prostředí. Hodnota je nastavení prostředí.

Typ:IDictionary
Aliasy:EnvironmentSetting
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-ExitConditions

Typ:PSExitConditions
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Id

Určuje ID úkolu.

Typ:String
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Job

Určuje úlohu, pod kterou tato rutina vytvoří úlohu. K získání objektu PSCloudJob použijte rutinu Get-AzBatchJob.

Typ:PSCloudJob
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-JobId

Určuje ID úlohy, pod kterou tato rutina vytvoří úlohu.

Typ:String
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-MultiInstanceSettings

Určuje informace o tom, jak spustit úlohu s více instancemi.

Typ:PSMultiInstanceSettings
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-OutputFile

Získá nebo nastaví 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.

Typ:PSOutputFile[]
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-ResourceFiles

Určuje soubory prostředků, jako páry klíč/hodnota, které úkol vyžaduje. Klíč je cesta k souboru prostředků. Hodnota je zdroj objektu blob souboru prostředku.

Typ:PSResourceFile[]
Aliasy:ResourceFile
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Tasks

Určuje kolekci úkolů, které se mají přidat. Každý úkol musí mít jedinečné ID.

Typ:PSCloudTask[]
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-UserIdentity

Identita uživatele, pod kterou se úloha spouští.

Typ:PSUserIdentity
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

Vstupy

Výstupy