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.

Jenis:PSAffinityInformation
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-ApplicationPackageReferences

Jenis:PSApplicationPackageReference[]
Alias:ApplicationPackageReference
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard: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.

Jenis:PSAuthenticationTokenSettings
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard: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.

Jenis:BatchAccountContext
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-CommandLine

Menentukan baris perintah untuk tugas.

Jenis:String
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:False
Terima karakter wildcard:False

-Constraints

Menentukan batasan eksekusi yang berlaku untuk tugas ini.

Jenis:PSTaskConstraints
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard: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.

Jenis:PSTaskContainerSettings
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-DefaultProfile

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

Jenis:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-DependsOn

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

Jenis:TaskDependencies
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-DisplayName

Menentukan nama tampilan tugas.

Jenis:String
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-EnvironmentSettings

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

Jenis:IDictionary
Alias:EnvironmentSetting
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-ExitConditions

Jenis:PSExitConditions
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Id

Menentukan ID tugas.

Jenis:String
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:False
Terima karakter wildcard:False

-Job

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

Jenis:PSCloudJob
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:True
Terima karakter wildcard:False

-JobId

Menentukan ID pekerjaan tempat cmdlet ini membuat tugas.

Jenis:String
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:False
Terima karakter wildcard:False

-MultiInstanceSettings

Menentukan informasi tentang cara menjalankan tugas multi-instans.

Jenis:PSMultiInstanceSettings
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard: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.

Jenis:PSOutputFile[]
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard: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.

Jenis:PSResourceFile[]
Alias:ResourceFile
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Tasks

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

Jenis:PSCloudTask[]
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-UserIdentity

Identitas pengguna tempat tugas berjalan.

Jenis:PSUserIdentity
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

Input

PSCloudJob

BatchAccountContext

Output

Void