Bagikan melalui


New-AzBatchTask

Membuat tugas Batch di bawah pekerjaan.

Sintaks

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

Deskripsi

Cmdlet New-AzBatchTask membuat tugas Azure Batch di bawah pekerjaan yang ditentukan oleh parameter JobId atau parameter Pekerjaan.

Contoh

Contoh 1: Membuat tugas Batch

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

Perintah ini membuat tugas yang memiliki TUGAS ID23 di bawah pekerjaan yang memiliki ID Job-000001. Tugas menjalankan perintah yang ditentukan. Gunakan cmdlet Get-AzBatchAccountKey untuk menetapkan konteks ke variabel $Context.

Contoh 2: Membuat tugas 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

Perintah ini mendapatkan pekerjaan Batch yang memiliki ID Job-000001 dengan menggunakan cmdlet Get-AzBatchJob . Perintah meneruskan pekerjaan tersebut ke cmdlet saat ini dengan menggunakan operator alur. Perintah membuat tugas yang memiliki TUGAS ID26 di bawah pekerjaan tersebut. Tugas menjalankan perintah yang ditentukan dengan menggunakan izin yang ditingkatkan.

Contoh 3: Menambahkan kumpulan tugas ke pekerjaan yang ditentukan dengan menggunakan alur

$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

Perintah pertama membuat referensi objek ke kunci akun untuk akun batch bernama ContosoBatchAccount dengan menggunakan Get-AzBatchAccountKey. Perintah menyimpan referensi objek ini dalam variabel $Context. Dua perintah berikutnya membuat objek PSCloudTask dengan menggunakan cmdlet New-Object. Perintah menyimpan tugas dalam variabel $Task 01 dan $Task 02. Perintah akhir mendapatkan pekerjaan Batch yang memiliki ID Job-000001 dengan menggunakan Get-AzBatchJob. Kemudian perintah meneruskan pekerjaan tersebut ke cmdlet saat ini dengan menggunakan operator alur. Perintah menambahkan kumpulan tugas di bawah pekerjaan tersebut. Perintah menggunakan konteks yang disimpan dalam $Context.

Contoh 4: Menambahkan kumpulan tugas ke pekerjaan yang ditentukan

$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

Perintah pertama membuat referensi objek ke kunci akun untuk akun batch bernama ContosoBatchAccount dengan menggunakan Get-AzBatchAccountKey. Perintah menyimpan referensi objek ini dalam variabel $Context. Dua perintah berikutnya membuat objek PSCloudTask dengan menggunakan cmdlet New-Object. Perintah menyimpan tugas dalam variabel $Task 01 dan $Task 02. Perintah akhir menambahkan tugas yang disimpan di $Task 01 dan $Task 02 di bawah pekerjaan yang memiliki ID Job-000001.

Contoh 5: Menambahkan tugas dengan file output

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

Contoh 6: Menambahkan tugas dengan pengaturan token autentikasi

$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

Contoh 7: Menambahkan tugas yang berjalan dalam kontainer

$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

Parameter

-AffinityInformation

Menentukan petunjuk lokalitas yang digunakan layanan Batch untuk memilih simpul untuk menjalankan tugas.

Type:PSAffinityInformation
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationPackageReferences

Type:PSApplicationPackageReference[]
Aliases:ApplicationPackageReference
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AuthenticationTokenSettings

Pengaturan untuk token autentikasi yang dapat digunakan tugas untuk melakukan operasi layanan Batch. Jika ini diatur, layanan Batch menyediakan tugas dengan token autentikasi yang dapat digunakan untuk mengautentikasi operasi layanan Batch tanpa memerlukan kunci akses akun. Token disediakan melalui variabel lingkungan AZ_BATCH_AUTHENTICATION_TOKEN. Operasi yang dapat dilakukan tugas menggunakan token bergantung pada pengaturan. Misalnya, tugas dapat meminta izin pekerjaan untuk menambahkan tugas lain ke pekerjaan, atau memeriksa status pekerjaan atau tugas lain.

Type:PSAuthenticationTokenSettings
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BatchContext

Menentukan instans BatchAccountContext yang digunakan cmdlet ini untuk berinteraksi dengan layanan Batch. Jika Anda menggunakan cmdlet Get-AzBatchAccount untuk mendapatkan BatchAccountContext Anda, autentikasi Microsoft Entra akan digunakan saat berinteraksi dengan layanan Batch. Untuk menggunakan autentikasi kunci bersama sebagai gantinya, gunakan cmdlet Get-AzBatchAccountKey untuk mendapatkan objek BatchAccountContext dengan kunci aksesnya diisi. Saat menggunakan autentikasi kunci bersama, kunci akses utama digunakan secara default. Untuk mengubah kunci yang akan digunakan, atur properti BatchAccountContext.KeyInUse.

Type:BatchAccountContext
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-CommandLine

Menentukan baris perintah untuk tugas.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Constraints

Menentukan batasan eksekusi yang berlaku untuk tugas ini.

Type:PSTaskConstraints
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ContainerSettings

Pengaturan untuk kontainer tempat tugas berjalan. Jika kumpulan yang akan menjalankan tugas ini memiliki kumpulan containerConfiguration, ini juga harus diatur. Jika kumpulan yang akan menjalankan tugas ini tidak memiliki kumpulan containerConfiguration, ini tidak boleh diatur. Ketika ini ditentukan, semua direktori secara rekursif di bawah AZ_BATCH_NODE_ROOT_DIR (akar direktori Azure Batch pada simpul) dipetakan ke dalam kontainer, semua variabel lingkungan tugas dipetakan ke dalam kontainer, dan baris perintah tugas dijalankan dalam kontainer.

Type:PSTaskContainerSettings
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Kredensial, akun, penyewa, dan langganan yang digunakan untuk komunikasi dengan azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DependsOn

Menentukan bahwa tugas bergantung pada tugas lain. Tugas tidak akan dijadwalkan sampai semua tugas depended-on berhasil diselesaikan.

Type:TaskDependencies
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisplayName

Menentukan nama tampilan tugas.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnvironmentSettings

Menentukan pengaturan lingkungan, sebagai pasangan kunci/nilai, yang ditambahkan cmdlet ini ke tugas. Kuncinya adalah nama pengaturan lingkungan. Nilainya adalah pengaturan lingkungan.

Type:IDictionary
Aliases:EnvironmentSetting
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ExitConditions

Type:PSExitConditions
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Id

Menentukan ID tugas.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Job

Menentukan pekerjaan di mana cmdlet ini membuat tugas. Untuk mendapatkan objek PSCloudJob , gunakan cmdlet Get-AzBatchJob.

Type:PSCloudJob
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-JobId

Menentukan ID pekerjaan tempat cmdlet ini membuat tugas.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-MultiInstanceSettings

Menentukan informasi tentang cara menjalankan tugas multi-instans.

Type:PSMultiInstanceSettings
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OutputFile

Mendapatkan atau mengatur daftar file yang akan diunggah layanan Batch dari simpul komputasi setelah menjalankan baris perintah. Untuk tugas multi-instans, file hanya akan diunggah dari simpul komputasi tempat tugas utama dijalankan.

Type:PSOutputFile[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceFiles

Menentukan file sumber daya, sebagai pasangan kunci/nilai, yang diperlukan tugas. Kuncinya adalah jalur file sumber daya. Nilainya adalah sumber blob file sumber daya.

Type:PSResourceFile[]
Aliases:ResourceFile
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tasks

Menentukan kumpulan tugas yang akan ditambahkan. Setiap tugas harus memiliki ID unik.

Type:PSCloudTask[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UserIdentity

Identitas pengguna tempat tugas berjalan.

Type:PSUserIdentity
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

PSCloudJob

BatchAccountContext

Output

Void