Udostępnij za pośrednictwem


New-AzBatchTask

Tworzy zadanie usługi Batch w ramach zadania.

Składnia

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>]

Opis

Polecenie cmdlet New-AzBatchTask tworzy zadanie usługi Azure Batch w ramach zadania określonego przez parametr JobId lub parametr zadania .

Przykłady

Przykład 1. Tworzenie zadania usługi Batch

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

To polecenie tworzy zadanie o identyfikatorze Task23 w ramach zadania o identyfikatorze Job-000001. Zadanie uruchamia określone polecenie. Użyj polecenia cmdlet Get-AzBatchAccountKey, aby przypisać kontekst do zmiennej $Context.

Przykład 2. Tworzenie zadania usługi 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

To polecenie pobiera zadanie usługi Batch z identyfikatorem Job-000001 za pomocą polecenia cmdlet Get-AzBatchJob . Polecenie przekazuje to zadanie do bieżącego polecenia cmdlet przy użyciu operatora potoku. Polecenie tworzy zadanie o identyfikatorze Task26 w ramach tego zadania. Zadanie uruchamia określone polecenie przy użyciu uprawnień z podwyższonym poziomem uprawnień.

Przykład 3. Dodawanie kolekcji zadań do określonego zadania przy użyciu potoku

$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

Pierwsze polecenie tworzy odwołanie do obiektu do kluczy konta dla konta wsadowego o nazwie ContosoBatchAccount przy użyciu polecenia Get-AzBatchAccountKey. Polecenie przechowuje odwołanie do tego obiektu w zmiennej $Context. Dwa następne polecenia tworzą obiekty PSCloudTask przy użyciu polecenia cmdlet New-Object. Polecenia przechowują zadania w zmiennych $Task 01 i $Task 02. Ostatnie polecenie pobiera zadanie usługi Batch z identyfikatorem Job-000001 za pomocą polecenia Get-AzBatchJob. Następnie polecenie przekazuje to zadanie do bieżącego polecenia cmdlet przy użyciu operatora potoku. Polecenie dodaje kolekcję zadań podrzędnych w ramach tego zadania. Polecenie używa kontekstu przechowywanego w $Context.

Przykład 4. Dodawanie kolekcji zadań do określonego zadania

$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

Pierwsze polecenie tworzy odwołanie do obiektu do kluczy konta dla konta wsadowego o nazwie ContosoBatchAccount przy użyciu polecenia Get-AzBatchAccountKey. Polecenie przechowuje odwołanie do tego obiektu w zmiennej $Context. Dwa następne polecenia tworzą obiekty PSCloudTask przy użyciu polecenia cmdlet New-Object. Polecenia przechowują zadania w zmiennych $Task 01 i $Task 02. Końcowe polecenie dodaje zadania przechowywane w $Task 01 i $Task 02 w ramach zadania o identyfikatorze Job-000001.

Przykład 5. Dodawanie zadania z plikami wyjściowymi

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

Przykład 6. Dodawanie zadania z ustawieniami tokenu uwierzytelniania

$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

Przykład 7. Dodawanie zadania uruchamianego w kontenerze

$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

Określa wskazówkę dotyczącą lokalizacji, której usługa Batch używa do wybierania węzła, na którym ma zostać uruchomione zadanie.

Typ:PSAffinityInformation
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationPackageReferences

Typ:PSApplicationPackageReference[]
Aliases:ApplicationPackageReference
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-AuthenticationTokenSettings

Ustawienia tokenu uwierzytelniania, którego zadanie może używać do wykonywania operacji usługi Batch. Jeśli ta opcja jest ustawiona, usługa Batch udostępnia zadanie z tokenem uwierzytelniania, który może służyć do uwierzytelniania operacji usługi Batch bez konieczności używania klucza dostępu do konta. Token jest dostarczany za pośrednictwem zmiennej środowiskowej AZ_BATCH_AUTHENTICATION_TOKEN. Operacje, które można wykonać za pomocą tokenu, zależą od ustawień. Na przykład zadanie może żądać uprawnień zadania w celu dodania innych zadań do zadania lub sprawdzenia stanu zadania lub innych zadań.

Typ:PSAuthenticationTokenSettings
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-BatchContext

Określa wystąpienie BatchAccountContext używane przez to polecenie cmdlet do interakcji z usługą Batch. Jeśli użyjesz polecenia cmdlet Get-AzBatchAccount, aby uzyskać element BatchAccountContext, uwierzytelnianie Microsoft Entra będzie używane podczas interakcji z usługą Batch. Aby zamiast tego użyć uwierzytelniania klucza współużytkowanego, użyj polecenia cmdlet Get-AzBatchAccountKey, aby uzyskać obiekt BatchAccountContext z wypełnionymi kluczami dostępu. W przypadku korzystania z uwierzytelniania za pomocą klucza współużytkowanego klucz podstawowy jest używany domyślnie. Aby zmienić klucz do użycia, ustaw właściwość BatchAccountContext.KeyInUse.

Typ:BatchAccountContext
Position:Named
wartość domyślna:None
Wymagane:True
Accept pipeline input:True
Accept wildcard characters:False

-CommandLine

Określa wiersz polecenia zadania.

Typ:String
Position:Named
wartość domyślna:None
Wymagane:True
Accept pipeline input:False
Accept wildcard characters:False

-Constraints

Określa ograniczenia wykonywania, które mają zastosowanie do tego zadania.

Typ:PSTaskConstraints
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-ContainerSettings

Ustawienia kontenera, w którym jest uruchamiane zadanie. Jeśli pula, która będzie uruchamiać to zadanie, ma ustawioną wartość containerConfiguration, należy to również ustawić. Jeśli pula, która będzie uruchamiać to zadanie, nie ma ustawionego konteneraKonfiguracja, nie może być ustawiona. Po określeniu tego ustawienia wszystkie katalogi cyklicznie poniżej AZ_BATCH_NODE_ROOT_DIR (katalog główny katalogów usługi Azure Batch w węźle) są mapowane do kontenera, wszystkie zmienne środowiskowe zadań są mapowane do kontenera, a wiersz polecenia zadania jest wykonywany w kontenerze.

Typ:PSTaskContainerSettings
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.

Typ:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-DependsOn

Określa, że zadanie zależy od innych zadań. Zadanie nie zostanie zaplanowane, dopóki wszystkie zadania zależne nie zostaną ukończone pomyślnie.

Typ:TaskDependencies
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-DisplayName

Określa nazwę wyświetlaną zadania.

Typ:String
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-EnvironmentSettings

Określa ustawienia środowiska jako pary klucz/wartość, które to polecenie cmdlet dodaje do zadania. Klucz to nazwa ustawienia środowiska. Wartość jest ustawieniem środowiska.

Typ:IDictionary
Aliases:EnvironmentSetting
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-ExitConditions

Typ:PSExitConditions
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-Id

Określa identyfikator zadania.

Typ:String
Position:Named
wartość domyślna:None
Wymagane:True
Accept pipeline input:False
Accept wildcard characters:False

-Job

Określa zadanie, w którym to polecenie cmdlet tworzy zadanie. Aby uzyskać obiekt PSCloudJob , użyj polecenia cmdlet Get-AzBatchJob.

Typ:PSCloudJob
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:True
Accept wildcard characters:False

-JobId

Określa identyfikator zadania, w którym to polecenie cmdlet tworzy zadanie.

Typ:String
Position:Named
wartość domyślna:None
Wymagane:True
Accept pipeline input:False
Accept wildcard characters:False

-MultiInstanceSettings

Określa informacje o sposobie uruchamiania zadania z wieloma wystąpieniami.

Typ:PSMultiInstanceSettings
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-OutputFile

Pobiera lub ustawia listę plików, które usługa Batch przekaże z węzła obliczeniowego po uruchomieniu wiersza polecenia. W przypadku zadań z wieloma wystąpieniami pliki zostaną przekazane tylko z węzła obliczeniowego, na którym jest wykonywane zadanie podstawowe.

Typ:PSOutputFile[]
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceFiles

Określa pliki zasobów jako pary klucz/wartość wymagane przez zadanie. Kluczem jest ścieżka pliku zasobu. Wartość to źródło obiektu blob pliku zasobów.

Typ:PSResourceFile[]
Aliases:ResourceFile
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-Tasks

Określa kolekcję zadań do dodania. Każde zadanie musi mieć unikatowy identyfikator.

Typ:PSCloudTask[]
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

-UserIdentity

Tożsamość użytkownika, w ramach której jest uruchamiane zadanie.

Typ:PSUserIdentity
Position:Named
wartość domyślna:None
Wymagane:False
Accept pipeline input:False
Accept wildcard characters:False

Dane wejściowe

PSCloudJob

BatchAccountContext

Dane wyjściowe

Void