New-AzBatchTask
작업 아래에 Batch 작업을 만듭니다.
구문
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
New-AzBatchTask cmdlet은 JobId 매개 변수 또는 작업 매개 변수로 지정된 작업 아래에 Azure Batch 작업을 만듭니다.
예제
예제 1: Batch 작업 만들기
New-AzBatchTask -JobId "Job-000001" -Id "Task23" -CommandLine "cmd /c dir /s" -BatchContext $Context
이 명령은 ID Job-000001이 있는 작업 아래에 ID Task23이 있는 작업을 만듭니다. 태스크는 지정된 명령을 실행합니다. Get-AzBatchAccountKey cmdlet을 사용하여 $Context 변수에 컨텍스트를 할당합니다.
예제 2: 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
이 명령은 Get-AzBatchJob cmdlet을 사용하여 ID Job-0000001이 있는 Batch 작업을 가져옵니다. 이 명령은 파이프라인 연산자를 사용하여 해당 작업을 현재 cmdlet에 전달합니다. 이 명령은 해당 작업 아래에 ID Task26이 있는 작업을 만듭니다. 작업은 관리자 권한으로 지정된 명령을 실행합니다.
예제 3: 파이프라인을 사용하여 지정된 작업에 작업 컬렉션 추가
$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
첫 번째 명령은 Get-AzBatchAccountKey를 사용하여 ContosoBatchAccount라는 일괄 처리 계정에 대한 계정 키에 대한 개체 참조를 만듭니다. 이 명령은 이 개체 참조를 $Context 변수에 저장합니다. 다음 두 명령은 New-Object cmdlet을 사용하여 PSCloudTask 개체를 만듭니다. 명령은 $Task 01 및 $Task 02 변수에 작업을 저장합니다. 최종 명령은 Get-AzBatchJob을 사용하여 ID Job-0000001이 있는 Batch 작업을 가져옵니다. 그런 다음, 이 명령은 파이프라인 연산자를 사용하여 해당 작업을 현재 cmdlet에 전달합니다. 이 명령은 해당 작업 아래에 태스크 컬렉션을 추가합니다. 이 명령은 $Context 저장된 컨텍스트를 사용합니다.
예제 4: 지정된 작업에 작업 컬렉션 추가
$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
첫 번째 명령은 Get-AzBatchAccountKey를 사용하여 ContosoBatchAccount라는 일괄 처리 계정에 대한 계정 키에 대한 개체 참조를 만듭니다. 이 명령은 이 개체 참조를 $Context 변수에 저장합니다. 다음 두 명령은 New-Object cmdlet을 사용하여 PSCloudTask 개체를 만듭니다. 명령은 $Task 01 및 $Task 02 변수에 작업을 저장합니다. 마지막 명령은 ID Job-000001이 있는 작업 아래에 $Task 01 및 $Task 02에 저장된 작업을 추가합니다.
예제 5: 출력 파일이 있는 작업 추가
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
예제 6: 인증 토큰 설정을 사용하여 작업 추가
$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
예제 7: 컨테이너에서 실행되는 작업 추가
$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
매개 변수
-AffinityInformation
Batch 서비스에서 작업을 실행할 노드를 선택하는 데 사용하는 지역성 힌트를 지정합니다.
형식: | PSAffinityInformation |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ApplicationPackageReferences
형식: | PSApplicationPackageReference[] |
별칭: | ApplicationPackageReference |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-AuthenticationTokenSettings
태스크가 Batch 서비스 작업을 수행하는 데 사용할 수 있는 인증 토큰에 대한 설정입니다. 이 설정이 설정되면 Batch 서비스는 계정 액세스 키를 요구하지 않고 Batch 서비스 작업을 인증하는 데 사용할 수 있는 인증 토큰을 태스크에 제공합니다. 토큰은 AZ_BATCH_AUTHENTICATION_TOKEN 환경 변수를 통해 제공됩니다. 토큰을 사용하여 태스크가 수행할 수 있는 작업은 설정에 따라 달라집니다. 예를 들어 태스크는 작업에 다른 작업을 추가하거나 작업 또는 다른 작업의 상태를 확인하기 위해 작업 권한을 요청할 수 있습니다.
형식: | PSAuthenticationTokenSettings |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-BatchContext
이 cmdlet이 Batch 서비스와 상호 작용하는 데 사용하는 BatchAccountContext 인스턴스를 지정합니다. Get-AzBatchAccount cmdlet을 사용하여 BatchAccountContext를 가져오는 경우 Batch 서비스와 상호 작용할 때 Microsoft Entra 인증이 사용됩니다. 대신 공유 키 인증을 사용하려면 Get-AzBatchAccountKey cmdlet을 사용하여 액세스 키가 채워진 BatchAccountContext 개체를 가져옵니다. 공유 키 인증을 사용하는 경우 기본 액세스 키가 기본적으로 사용됩니다. 사용할 키를 변경하려면 BatchAccountContext.KeyInUse 속성을 설정합니다.
형식: | BatchAccountContext |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-CommandLine
작업에 대한 명령줄을 지정합니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Constraints
이 작업에 적용되는 실행 제약 조건을 지정합니다.
형식: | PSTaskConstraints |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ContainerSettings
태스크가 실행되는 컨테이너에 대한 설정입니다. 이 작업을 실행할 풀에 containerConfiguration이 설정된 경우 이 설정도 설정해야 합니다. 이 작업을 실행할 풀에 containerConfiguration 집합이 없으면 설정하면 안 됩니다. 이 옵션을 지정하면 AZ_BATCH_NODE_ROOT_DIR 아래의 모든 디렉터리(노드의 Azure Batch 디렉터리 루트)가 컨테이너에 매핑되고, 모든 작업 환경 변수가 컨테이너에 매핑되고, 태스크 명령줄이 컨테이너에서 실행됩니다.
형식: | PSTaskContainerSettings |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-DefaultProfile
Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.
형식: | IAzureContextContainer |
별칭: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-DependsOn
태스크가 다른 작업에 따라 달라지게 지정합니다. 모든 의존 작업이 성공적으로 완료될 때까지 작업이 예약되지 않습니다.
형식: | TaskDependencies |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-DisplayName
작업의 표시 이름을 지정합니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-EnvironmentSettings
이 cmdlet이 작업에 추가하는 환경 설정을 키/값 쌍으로 지정합니다. 키는 환경 설정 이름입니다. 값은 환경 설정입니다.
형식: | IDictionary |
별칭: | EnvironmentSetting |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ExitConditions
형식: | PSExitConditions |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Id
작업의 ID를 지정합니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Job
이 cmdlet이 작업을 만드는 작업을 지정합니다. PSCloudJob 개체를 가져오려면 Get-AzBatchJob cmdlet을 사용합니다.
형식: | PSCloudJob |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-JobId
이 cmdlet이 작업을 만드는 작업의 ID를 지정합니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-MultiInstanceSettings
다중 인스턴스 작업을 실행하는 방법에 대한 정보를 지정합니다.
형식: | PSMultiInstanceSettings |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-OutputFile
명령줄을 실행한 후 Batch 서비스가 컴퓨팅 노드에서 업로드할 파일 목록을 가져오거나 설정합니다. 다중 인스턴스 작업의 경우 파일은 주 작업이 실행되는 컴퓨팅 노드에서만 업로드됩니다.
형식: | PSOutputFile[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ResourceFiles
작업에 필요한 리소스 파일을 키/값 쌍으로 지정합니다. 키는 리소스 파일 경로입니다. 값은 리소스 파일 Blob 원본입니다.
형식: | PSResourceFile[] |
별칭: | ResourceFile |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Tasks
추가할 작업의 컬렉션을 지정합니다. 각 작업에는 고유한 ID가 있어야 합니다.
형식: | PSCloudTask[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-UserIdentity
태스크가 실행되는 사용자 ID입니다.
형식: | PSUserIdentity |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |