Task - Add

Menambahkan Tugas ke Pekerjaan yang ditentukan.
Masa pakai maksimum Tugas dari penambahan hingga penyelesaian adalah 180 hari. Jika Tugas belum selesai dalam waktu 180 hari setelah ditambahkan, Tugas akan dihentikan oleh layanan Batch dan dibiarkan dalam keadaan apa pun saat itu.

POST {batchUrl}/jobs/{jobId}/tasks?api-version=2022-01-01.15.0
POST {batchUrl}/jobs/{jobId}/tasks?timeout={timeout}&api-version=2022-01-01.15.0

Parameter URI

Name In Required Type Description
batchUrl
path True
  • string

URL dasar untuk semua permintaan layanan Azure Batch.

jobId
path True
  • string

ID Pekerjaan tempat Tugas akan ditambahkan.

api-version
query True
  • string

Versi API Klien.

timeout
query
  • integer
int32

Waktu maksimum yang dapat dihabiskan server untuk memproses permintaan, dalam hitung detik. Defaultnya adalah 30 detik.

Header Permintaan

Media Types: "application/json; odata=minimalmetadata"

Name Required Type Description
client-request-id
  • string
uuid

Identitas permintaan yang dihasilkan pemanggil, dalam bentuk GUID tanpa dekorasi seperti kurung kurawal, misalnya 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.

return-client-request-id
  • boolean

Apakah server harus mengembalikan client-request-id dalam respons.

ocp-date
  • string
date-time-rfc1123

Waktu permintaan dikeluarkan. Pustaka klien biasanya mengatur ini ke waktu jam sistem saat ini; atur secara eksplisit jika Anda memanggil REST API secara langsung.

Isi Permintaan

Media Types: "application/json; odata=minimalmetadata"

Name Required Type Description
commandLine True
  • string

Baris perintah Tugas.
Untuk Tugas multi-instans, baris perintah dijalankan sebagai Tugas utama, setelah Tugas utama dan semua subtugas selesai mengeksekusi baris perintah koordinasi. Baris perintah tidak berjalan di bawah shell, dan oleh karena itu tidak dapat memanfaatkan fitur shell seperti ekspansi variabel lingkungan. Jika Anda ingin memanfaatkan fitur tersebut, Anda harus memanggil shell di baris perintah, misalnya menggunakan "cmd /c MyCommand" di Windows atau "/bin/sh -c MyCommand" di Linux. Jika baris perintah mengacu pada jalur file, baris tersebut harus menggunakan jalur relatif (relatif terhadap direktori kerja Tugas), atau menggunakan variabel lingkungan yang disediakan Batch (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).

id True
  • string

String yang secara unik mengidentifikasi Tugas dalam Pekerjaan.
ID dapat berisi kombinasi karakter alfanumerik termasuk tanda hubung dan garis bawah, dan tidak boleh berisi lebih dari 64 karakter. ID mempertahankan huruf besar/kecil dan tidak peka huruf besar/kecil (artinya, Anda mungkin tidak memiliki dua ID dalam Pekerjaan yang hanya berbeda menurut kasus).

affinityInfo

Petunjuk lokalitas yang dapat digunakan oleh layanan Batch untuk memilih Simpul Komputasi untuk memulai Tugas baru.

applicationPackageReferences

Daftar Paket yang akan disebarkan layanan Batch ke Simpul Komputasi sebelum menjalankan baris perintah.
Paket aplikasi diunduh dan disebarkan ke direktori bersama, bukan direktori kerja Tugas. Oleh karena itu, jika paket yang direferensikan sudah ada di Node, dan sudah diperbarui, maka paket tersebut tidak diunduh ulang; salinan yang ada pada Simpul Komputasi digunakan. Jika Paket yang direferensikan tidak dapat diinstal, misalnya karena paket telah dihapus atau karena pengunduhan gagal, Tugas gagal.

authenticationTokenSettings

Pengaturan untuk token autentikasi yang dapat digunakan Tugas untuk melakukan operasi layanan Batch.
Jika properti 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 di bawah Pekerjaan.

constraints

Batasan eksekusi yang berlaku untuk Tugas ini.
Jika Anda tidak menentukan batasan, maxTaskRetryCount adalah maxTaskRetryCount yang ditentukan untuk Pekerjaan, maxWallClockTime tidak terbatas, dan retentionTime adalah 7 hari.

containerSettings

Pengaturan untuk kontainer tempat Tugas berjalan.
Jika Kumpulan yang akan menjalankan Tugas ini memiliki kontainerConfiguration yang ditetapkan, 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. File yang diproduksi dalam kontainer di luar AZ_BATCH_NODE_ROOT_DIR mungkin tidak tercermin ke disk host, yang berarti bahwa API file Batch tidak akan dapat mengakses file tersebut.

dependsOn

Tugas yang bergantung pada Tugas ini.
Tugas ini tidak akan dijadwalkan sampai semua Tugas yang bergantung padanya berhasil diselesaikan. Jika salah satu Tugas tersebut gagal dan menghabiskan jumlah coba lagi, Tugas ini tidak akan pernah dijadwalkan. Jika Pekerjaan tidak memiliki usesTaskDependencies yang diatur ke true, dan elemen ini ada, permintaan gagal dengan kode kesalahan TaskDependenciesNotSpecifiedOnJob.

displayName
  • string

Nama tampilan untuk Tugas.
Nama tampilan tidak perlu unik dan dapat berisi karakter Unicode hingga panjang maksimum 1024.

environmentSettings

Daftar pengaturan variabel lingkungan untuk Tugas.

exitConditions

Menentukan bagaimana layanan Batch harus merespons ketika Tugas selesai.
Bagaimana layanan Batch harus merespons ketika Tugas selesai.

multiInstanceSettings

Objek yang menunjukkan bahwa Tugas adalah Tugas multi-instans, dan berisi informasi tentang cara menjalankan Tugas multi-instans.
Tugas multi-instans umumnya digunakan untuk mendukung Tugas MPI. Dalam kasus MPI, jika salah satu subtugas gagal (misalnya karena keluar dengan kode keluar bukan nol) seluruh Tugas multi-instans gagal. Tugas multi-instans kemudian dihentikan dan dicoba kembali, hingga batas coba lagi.

outputFiles

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.

requiredSlots
  • integer

Jumlah slot penjadwalan yang diperlukan Tugas untuk dijalankan.
Defaultnya adalah 1. Tugas hanya dapat dijadwalkan untuk dijalankan pada simpul komputasi jika simpul memiliki slot penjadwalan gratis yang cukup tersedia. Untuk Tugas multi-instans, ini harus 1.

resourceFiles

Daftar file yang akan diunduh layanan Batch ke Simpul Komputasi sebelum menjalankan baris perintah.
Untuk Tugas multi-instans, file sumber daya hanya akan diunduh ke Simpul Komputasi tempat Tugas utama dijalankan. Ada ukuran maksimum untuk daftar file sumber daya. Ketika ukuran maksimum terlampaui, permintaan akan gagal dan kode kesalahan respons akan menjadi RequestEntityTooLarge. Jika ini terjadi, pengumpulan ResourceFiles harus dikurangi ukurannya. Ini dapat dicapai menggunakan file .zip, Paket Aplikasi, atau Kontainer Docker.

userIdentity

Identitas pengguna tempat Tugas berjalan.
Jika dihilangkan, Tugas berjalan sebagai pengguna non-administratif yang unik untuk Tugas.

Respons

Name Type Description
201 Created

Permintaan ke layanan Batch berhasil.

Headers

  • client-request-id: string
  • request-id: string
  • ETag: string
  • Last-Modified: string
  • DataServiceId: string
Other Status Codes

Kesalahan dari layanan Batch.

Keamanan

azure_auth

Azure Active Directory Flow OAuth2

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation Meniru akun pengguna Anda

Authorization

Type: apiKey
In: header

Contoh

Add a basic task
Add a task with container settings
Add a task with exit conditions
Add a task with extra slot requirement

Add a basic task

Sample Request

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2022-01-01.15.0



{
  "id": "task1",
  "commandLine": "cmd /c echo task1"
}

Sample Response

Add a task with container settings

Sample Request

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2022-01-01.15.0



{
  "id": "taskId",
  "commandLine": "bash -c 'echo hello'",
  "containerSettings": {
    "imageName": "ubuntu",
    "containerRunOptions": "--rm"
  },
  "userIdentity": {
    "autoUser": {
      "scope": "task",
      "elevationLevel": "nonadmin"
    }
  }
}

Sample Response

Add a task with exit conditions

Sample Request

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2022-01-01.15.0



{
  "id": "taskId",
  "commandLine": "cmd /c exit 3",
  "exitConditions": {
    "exitCodeRanges": [
      {
        "start": 2,
        "end": 4,
        "exitOptions": {
          "jobAction": "terminate"
        }
      }
    ]
  },
  "userIdentity": {
    "autoUser": {
      "scope": "task",
      "elevationLevel": "nonadmin"
    }
  }
}

Sample Response

Add a task with extra slot requirement

Sample Request

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2022-01-01.15.0



{
  "id": "task1",
  "requiredSlots": 2,
  "commandLine": "cmd /c echo task1"
}

Sample Response

Definisi

AffinityInformation

Petunjuk lokalitas yang dapat digunakan oleh layanan Batch untuk memilih Simpul Komputasi untuk memulai Tugas.

ApplicationPackageReference

Referensi ke Paket yang akan disebarkan ke Simpul Komputasi.

AuthenticationTokenSettings

Pengaturan untuk token autentikasi yang dapat digunakan Tugas untuk melakukan operasi layanan Batch.

AutoUserScope

Cakupan untuk pengguna otomatis

AutoUserSpecification

Menentukan parameter untuk pengguna otomatis yang menjalankan Tugas pada layanan Batch.

BatchError

Respons kesalahan yang diterima dari layanan Azure Batch.

BatchErrorDetail

Item informasi tambahan yang disertakan dalam respons kesalahan Azure Batch.

ComputeNodeIdentityReference

Referensi ke identitas yang ditetapkan pengguna yang terkait dengan kumpulan Batch yang akan digunakan simpul komputasi.

ContainerRegistry

Registri kontainer privat.

ContainerWorkingDirectory

Lokasi direktori kerja Tugas kontainer.

DependencyAction

Tindakan yang dilakukan layanan Batch pada Tugas yang bergantung pada Tugas ini.

ElevationLevel

Tingkat elevasi pengguna.

EnvironmentSetting

Variabel lingkungan yang akan diatur pada proses Tugas.

ErrorMessage

Pesan kesalahan diterima dalam respons kesalahan Azure Batch.

ExitCodeMapping

Bagaimana layanan Batch harus merespons jika Tugas keluar dengan kode keluar tertentu.

ExitCodeRangeMapping

Berbagai kode keluar dan bagaimana layanan Batch harus merespons kode keluar dalam rentang tersebut.

ExitConditions

Menentukan bagaimana layanan Batch harus merespons ketika Tugas selesai.

ExitOptions

Menentukan bagaimana layanan Batch merespons kondisi keluar tertentu.

HttpHeader

Pasangan nama-nilai header HTTP

JobAction

Tindakan yang harus diambil pada Pekerjaan yang berisi Tugas, jika Tugas selesai dengan kondisi keluar yang diberikan dan properti OnTaskFailed Pekerjaan adalah 'performExitOptionsJobAction'.

MultiInstanceSettings

Pengaturan yang menentukan cara menjalankan Tugas multi-instans.

OutputFile

Spesifikasi untuk mengunggah file dari simpul komputasi Azure Batch ke lokasi lain setelah layanan Batch selesai menjalankan proses Tugas.

OutputFileBlobContainerDestination

Menentukan tujuan unggahan file dalam kontainer penyimpanan blob Azure.

OutputFileDestination

Tujuan di mana file harus diunggah.

OutputFileUploadCondition

Kondisi di mana file output Tugas atau sekumpulan file harus diunggah.

OutputFileUploadOptions

Detail tentang operasi pengunggahan file output, termasuk dalam kondisi apa untuk melakukan unggahan.

ResourceFile

Satu file atau beberapa file yang akan diunduh ke Simpul Komputasi.

TaskAddParameter

Tugas Azure Batch untuk ditambahkan.

TaskConstraints

Batasan eksekusi untuk diterapkan ke Tugas.

TaskContainerSettings

Pengaturan kontainer untuk Tugas.

TaskDependencies

Menentukan dependensi Tugas apa pun. Tugas apa pun yang ditentukan secara eksplisit atau dalam rentang dependensi harus diselesaikan sebelum Tugas dependan akan dijadwalkan.

TaskIdRange

Rentang ID Tugas yang bisa diandalkan tugas. Semua Tugas dengan ID dalam rentang harus berhasil diselesaikan sebelum Tugas dependen dapat dijadwalkan.

UserIdentity

Definisi identitas pengguna tempat Tugas dijalankan.

AffinityInformation

Petunjuk lokalitas yang dapat digunakan oleh layanan Batch untuk memilih Simpul Komputasi untuk memulai Tugas.

Name Type Description
affinityId
  • string

String buram yang mewakili lokasi Simpul Komputasi atau Tugas yang telah berjalan sebelumnya.
Anda dapat meneruskan affinityId dari Sebuah Simpul untuk menunjukkan bahwa Tugas ini perlu dijalankan pada Simpul Komputasi tersebut. Perhatikan bahwa ini hanyalah afinitas lunak. Jika Target Simpul Komputasi sibuk atau tidak tersedia pada saat Tugas dijadwalkan, maka Tugas akan dijadwalkan di tempat lain.

ApplicationPackageReference

Referensi ke Paket yang akan disebarkan ke Simpul Komputasi.

Name Type Description
applicationId
  • string

ID aplikasi yang akan disebarkan.

version
  • string

Versi aplikasi yang akan disebarkan. Jika dihilangkan, versi default disebarkan.
Jika ini dihilangkan pada Kumpulan, dan tidak ada versi default yang ditentukan untuk aplikasi ini, permintaan gagal dengan kode kesalahan InvalidApplicationPackageReferences dan kode status HTTP 409. Jika ini dihilangkan pada Tugas, dan tidak ada versi default yang ditentukan untuk aplikasi ini, Tugas gagal dengan kesalahan pra-pemrosesan.

AuthenticationTokenSettings

Pengaturan untuk token autentikasi yang dapat digunakan Tugas untuk melakukan operasi layanan Batch.

Name Type Description
access
  • string[]

Sumber daya Batch tempat token memberikan akses.
Token autentikasi memberikan akses ke serangkaian operasi layanan Batch terbatas. Saat ini satu-satunya nilai yang didukung untuk properti akses adalah 'pekerjaan', yang memberikan akses ke semua operasi yang terkait dengan Pekerjaan yang berisi Tugas.

AutoUserScope

Cakupan untuk pengguna otomatis

Name Type Description
pool
  • string

Menentukan bahwa Tugas berjalan sebagai Akun pengguna otomatis umum yang dibuat pada setiap Simpul Komputasi dalam Kumpulan.

task
  • string

Menentukan bahwa layanan harus membuat pengguna baru untuk Tugas.

AutoUserSpecification

Menentukan parameter untuk pengguna otomatis yang menjalankan Tugas pada layanan Batch.

Name Type Description
elevationLevel

Tingkat elevasi pengguna otomatis.
Nilai defaultnya adalah nonAdmin.

scope

Cakupan untuk pengguna otomatis
Nilai defaultnya adalah kumpulan. Jika kumpulan berjalan Windows nilai Tugas harus ditentukan jika isolasi yang lebih ketat antar tugas diperlukan. Misalnya, jika tugas membisukan registri dengan cara yang dapat memengaruhi tugas lain, atau jika sertifikat telah ditentukan pada kumpulan yang seharusnya tidak dapat diakses oleh tugas normal tetapi harus dapat diakses oleh StartTasks.

BatchError

Respons kesalahan yang diterima dari layanan Azure Batch.

Name Type Description
code
  • string

Pengidentifikasi untuk kesalahan. Kode tidak berubah dan dimaksudkan untuk dikonsumsi secara terprogram.

message

Pesan yang menjelaskan kesalahan, dimaksudkan agar cocok untuk ditampilkan di antarmuka pengguna.

values

Kumpulan pasangan kunci-nilai yang berisi detail tambahan tentang kesalahan.

BatchErrorDetail

Item informasi tambahan yang disertakan dalam respons kesalahan Azure Batch.

Name Type Description
key
  • string

Pengidentifikasi yang menentukan arti properti Nilai.

value
  • string

Informasi tambahan disertakan dengan respons kesalahan.

ComputeNodeIdentityReference

Referensi ke identitas yang ditetapkan pengguna yang terkait dengan kumpulan Batch yang akan digunakan simpul komputasi.

Name Type Description
resourceId
  • string

Id sumber daya ARM dari identitas yang ditetapkan pengguna.

ContainerRegistry

Registri kontainer privat.

Name Type Description
identityReference

Referensi ke identitas yang ditetapkan pengguna untuk digunakan untuk mengakses Azure Container Registry alih-alih nama pengguna dan kata sandi.
Referensi ke identitas yang ditetapkan pengguna yang terkait dengan kumpulan Batch yang akan digunakan simpul komputasi.

password
  • string

Kata sandi untuk masuk ke server registri.

registryServer
  • string

URL registri.
Jika dihilangkan, defaultnya adalah "docker.io".

username
  • string

Nama pengguna untuk masuk ke server registri.

ContainerWorkingDirectory

Lokasi direktori kerja Tugas kontainer.

Name Type Description
containerImageDefault
  • string

Gunakan direktori kerja yang ditentukan dalam Gambar kontainer. Waspadalah bahwa direktori ini tidak akan berisi File Sumber Daya yang diunduh oleh Batch.

taskWorkingDirectory
  • string

Gunakan direktori kerja Tugas layanan Batch standar, yang akan berisi File Sumber Daya Tugas yang diisi oleh Batch.

DependencyAction

Tindakan yang dilakukan layanan Batch pada Tugas yang bergantung pada Tugas ini.

Name Type Description
block
  • string

Memblokir tugas yang menunggu tugas ini, mencegahnya dijadwalkan.

satisfy
  • string

Memuaskan tugas yang menunggu tugas ini; setelah semua dependensi terpenuhi, tugas akan dijadwalkan untuk dijalankan.

ElevationLevel

Tingkat elevasi pengguna.

Name Type Description
admin
  • string

Pengguna adalah pengguna dengan akses yang ditinggikan dan beroperasi dengan izin Administrator penuh.

nonadmin
  • string

Pengguna adalah pengguna standar tanpa akses yang ditingkatkan.

EnvironmentSetting

Variabel lingkungan yang akan diatur pada proses Tugas.

Name Type Description
name
  • string

Nama variabel lingkungan.

value
  • string

Nilai variabel lingkungan.

ErrorMessage

Pesan kesalahan diterima dalam respons kesalahan Azure Batch.

Name Type Description
lang
  • string

Kode bahasa pesan kesalahan

value
  • string

Teks pesan.

ExitCodeMapping

Bagaimana layanan Batch harus merespons jika Tugas keluar dengan kode keluar tertentu.

Name Type Description
code
  • integer

Kode keluar proses.

exitOptions

Bagaimana layanan Batch harus merespons jika Tugas keluar dengan kode keluar ini.

ExitCodeRangeMapping

Berbagai kode keluar dan bagaimana layanan Batch harus merespons kode keluar dalam rentang tersebut.

Name Type Description
end
  • integer

Kode keluar terakhir dalam rentang.

exitOptions

Bagaimana layanan Batch harus merespons jika Tugas keluar dengan kode keluar dalam rentang mulai ke ujung (inklusif).

start
  • integer

Kode keluar pertama dalam rentang.

ExitConditions

Menentukan bagaimana layanan Batch harus merespons ketika Tugas selesai.

Name Type Description
default

Bagaimana layanan Batch harus merespons jika Tugas gagal dengan kondisi keluar yang tidak dicakup oleh properti lain.
Nilai ini digunakan jika Tugas keluar dengan kode keluar bukan nol yang tidak tercantum dalam koleksi exitCodes atau exitCodeRanges, dengan kesalahan pra-pemrosesan jika properti preProcessingError tidak ada, atau dengan kesalahan pengunggahan file jika properti fileUploadError tidak ada. Jika Anda menginginkan perilaku non-default pada kode keluar 0, Anda harus mencantumkannya secara eksplisit menggunakan exitCodes atau koleksi exitCodeRanges.

exitCodeRanges

Daftar rentang kode keluar Tugas dan bagaimana layanan Batch harus meresponsnya.

exitCodes

Daftar kode keluar Tugas individual dan bagaimana layanan Batch harus meresponsnya.

fileUploadError

Bagaimana layanan Batch harus merespons jika terjadi kesalahan pengunggah file.
Jika Tugas keluar dengan kode keluar yang ditentukan melalui exitCodes atau exitCodeRanges, lalu mengalami kesalahan pengunggahan file, tindakan yang ditentukan oleh kode keluar lebih diutamakan.

preProcessingError

Bagaimana layanan Batch harus merespons jika Tugas gagal dimulai karena kesalahan.

ExitOptions

Menentukan bagaimana layanan Batch merespons kondisi keluar tertentu.

Name Type Description
dependencyAction

Tindakan yang dilakukan layanan Batch pada Tugas yang bergantung pada Tugas ini.
Nilai yang mungkin adalah 'memuaskan' (memungkinkan tugas dependen untuk maju) dan 'blokir' (tugas dependen terus menunggu). Batch belum mendukung pembatalan tugas dependen.

jobAction

Tindakan yang harus diambil pada Pekerjaan yang berisi Tugas, jika Tugas selesai dengan kondisi keluar yang diberikan dan properti Pekerjaan onTaskFailed adalah 'performExitOptionsJobAction'.
Defaultnya tidak ada untuk kode keluar 0 dan dihentikan untuk semua kondisi keluar lainnya. Jika properti onTaskFailed Pekerjaan adalah noaction, maka menentukan properti ini mengembalikan kesalahan dan permintaan tambahkan Tugas gagal dengan kesalahan nilai properti yang tidak valid; jika Anda memanggil REST API secara langsung, kode status HTTP adalah 400 (Permintaan Buruk).

HttpHeader

Pasangan nama-nilai header HTTP

Name Type Description
name
  • string

Nama header yang tidak peka huruf besar/kecil yang akan digunakan saat mengunggah file output

value
  • string

Nilai header yang akan digunakan saat mengunggah file output

JobAction

Tindakan yang harus diambil pada Pekerjaan yang berisi Tugas, jika Tugas selesai dengan kondisi keluar yang diberikan dan properti OnTaskFailed Pekerjaan adalah 'performExitOptionsJobAction'.

Name Type Description
disable
  • string

Nonaktifkan Pekerjaan. Ini setara dengan memanggil Api Pekerjaan nonaktif, dengan nilai disableTasks antrean ulang.

none
  • string

Jangan ambil tindakan.

terminate
  • string

Hentikan Pekerjaan. TerminateReason dalam ExecutionInfo Pekerjaan diatur ke "TaskFailed".

MultiInstanceSettings

Pengaturan yang menentukan cara menjalankan Tugas multi-instans.

Name Type Description
commonResourceFiles

Daftar file yang akan diunduh layanan Batch sebelum menjalankan baris perintah koordinasi.
Perbedaan antara file sumber daya umum dan file sumber daya Tugas adalah bahwa file sumber daya umum diunduh untuk semua subtugas termasuk yang utama, sedangkan file sumber daya Tugas hanya diunduh untuk yang utama. Perhatikan juga bahwa file sumber daya ini tidak diunduh ke direktori kerja Tugas, tetapi sebaliknya diunduh ke direktori akar Tugas (satu direktori di atas direktori kerja). Ada ukuran maksimum untuk daftar file sumber daya. Ketika ukuran maksimum terlampaui, permintaan akan gagal dan kode kesalahan respons akan menjadi RequestEntityTooLarge. Jika ini terjadi, pengumpulan ResourceFiles harus dikurangi ukurannya. Ini dapat dicapai menggunakan file .zip, Paket Aplikasi, atau Kontainer Docker.

coordinationCommandLine
  • string

Baris perintah yang akan dijalankan pada semua Simpul Komputasi untuk memungkinkannya berkoordinasi saat utama menjalankan perintah Tugas utama.
Baris perintah koordinasi umum meluncurkan layanan latar belakang dan memverifikasi bahwa layanan siap untuk memproses pesan antar-simpul.

numberOfInstances
  • integer

Jumlah Simpul Komputasi yang diperlukan oleh Tugas.
Jika dihilangkan, defaultnya adalah 1.

OutputFile

Spesifikasi untuk mengunggah file dari simpul komputasi Azure Batch ke lokasi lain setelah layanan Batch selesai menjalankan proses Tugas.

Name Type Description
destination

Tujuan untuk file output.

filePattern
  • string

Pola yang menunjukkan file mana yang akan diunggah.
Jalur relatif dan absolut didukung. Jalur relatif relatif terhadap direktori kerja Tugas. Kartubebas berikut didukung: * cocok dengan 0 karakter atau lebih (misalnya pola abc* akan cocok dengan abc atau abcdef), ** cocok dengan direktori apa pun, ? cocok dengan karakter tunggal apa pun, [abc] cocok dengan satu karakter dalam tanda kurung siku, dan [a-c] cocok dengan satu karakter dalam rentang. Tanda kurung dapat menyertakan negasi untuk mencocokkan karakter apa pun yang tidak ditentukan (misalnya [!abc] cocok dengan karakter apa pun tetapi a, b, atau c). Jika nama file dimulai dengan "." itu diabaikan secara default tetapi dapat dicocokkan dengan menentukannya secara eksplisit (misalnya .gif tidak akan cocok dengan .a.gif, tetapi ..gif akan). Contoh sederhana: ***.txt cocok dengan file apa pun yang tidak dimulai di '.' dan diakhapi dengan .txt di direktori kerja Tugas atau subdirektori apa pun. Jika nama file berisi karakter kartubebas, itu dapat diloloskan menggunakan tanda kurung siku (misalnya abc[] akan cocok dengan file bernama abc). Perhatikan bahwa \ dan / diperlakukan sebagai pemisah direktori pada Windows, tetapi hanya / di Linux. Variabel lingkungan (%var% pada Windows atau $var di Linux) diperluas sebelum pola diterapkan.

uploadOptions

Opsi tambahan untuk operasi unggahan, termasuk dalam kondisi apa untuk melakukan unggahan.

OutputFileBlobContainerDestination

Menentukan tujuan unggahan file dalam kontainer penyimpanan blob Azure.

Name Type Description
containerUrl
  • string

URL kontainer dalam Azure Blob Storage untuk mengunggah file.
Jika tidak menggunakan identitas terkelola, URL harus menyertakan Tanda Tangan Akses Bersama (SAS) yang memberikan izin tulis ke kontainer.

identityReference

Referensi ke identitas yang ditetapkan pengguna untuk digunakan untuk mengakses Azure Blob Storage yang ditentukan oleh containerUrl
Identitas harus memiliki akses tulis ke kontainer Azure Blob Storage

path
  • string

Blob tujuan atau direktori virtual dalam kontainer Azure Storage.
Jika filePattern mengacu pada file tertentu (yaitu tidak berisi kartubebas), maka jalur adalah nama blob untuk mengunggah file tersebut. Jika filePattern berisi satu atau beberapa kartubebas (dan oleh karena itu mungkin cocok dengan beberapa file), maka jalur adalah nama direktori virtual blob (yang ditambahkan ke setiap nama blob) untuk mengunggah file. Jika dihilangkan, file diunggah ke akar kontainer dengan nama blob yang cocok dengan nama file mereka.

uploadHeaders

Daftar pasangan nama-nilai untuk header yang akan digunakan dalam mengunggah file output
Header ini akan ditentukan saat mengunggah file ke Azure Storage. Untuk informasi selengkapnya, lihat Header Permintaan (Semua Jenis Blob).

OutputFileDestination

Tujuan di mana file harus diunggah.

Name Type Description
container

Lokasi di penyimpanan blob Azure tempat file diunggah.

OutputFileUploadCondition

Kondisi di mana file output Tugas atau sekumpulan file harus diunggah.

Name Type Description
taskcompletion
  • string

Upload file setelah proses Tugas keluar, apa pun kode keluarnya.

taskfailure
  • string

Upload file hanya setelah proses Tugas keluar dengan kode keluar bukan nol.

tasksuccess
  • string

Upload file hanya setelah proses Tugas keluar dengan kode keluar 0.

OutputFileUploadOptions

Detail tentang operasi pengunggahan file output, termasuk dalam kondisi apa untuk melakukan unggahan.

Name Type Description
uploadCondition

Kondisi di mana file output Tugas atau sekumpulan file harus diunggah.
Defaultnya adalah penyelesaian tugas.

ResourceFile

Satu file atau beberapa file yang akan diunduh ke Simpul Komputasi.

Name Type Description
autoStorageContainerName
  • string

Nama kontainer penyimpanan di Akun penyimpanan otomatis.
Properti autoStorageContainerName, storageContainerUrl, dan httpUrl saling eksklusif dan salah satunya harus ditentukan.

blobPrefix
  • string

Awalan blob yang digunakan saat mengunduh blob dari kontainer Azure Storage. Hanya blob yang namanya dimulai dengan awalan yang ditentukan yang akan diunduh.
Properti hanya valid ketika autoStorageContainerName atau storageContainerUrl digunakan. Awalan ini bisa berupa nama file parsial atau subdirektori. Jika awalan tidak ditentukan, semua file dalam kontainer akan diunduh.

fileMode
  • string

Atribut mode izin file dalam format oktal.
Properti ini hanya berlaku untuk file yang diunduh ke Simpul Komputasi Linux. Ini akan diabaikan jika ditentukan untuk resourceFile yang akan diunduh ke Windows Compute Node. Jika properti ini tidak ditentukan untuk Simpul Komputasi Linux, maka nilai default 0770 diterapkan ke file.

filePath
  • string

Lokasi pada Simpul Komputasi tempat mengunduh file, relatif terhadap direktori kerja Tugas.
Jika properti httpUrl ditentukan, filePath diperlukan dan menjelaskan jalur tempat file akan diunduh, termasuk nama file. Jika tidak, jika properti autoStorageContainerName atau storageContainerUrl ditentukan, filePath bersifat opsional dan merupakan direktori untuk mengunduh file. Dalam kasus di mana filePath digunakan sebagai direktori, struktur direktori apa pun yang sudah terkait dengan data input akan disimpan secara penuh dan ditambahkan ke direktori filePath yang ditentukan. Jalur relatif yang ditentukan tidak dapat keluar dari direktori kerja Tugas (misalnya dengan menggunakan '..').

httpUrl
  • string

URL file yang akan diunduh.
Properti autoStorageContainerName, storageContainerUrl, dan httpUrl saling eksklusif dan salah satunya harus ditentukan. Jika URL menunjuk ke Azure Blob Storage, URL harus dapat dibaca dari simpul komputasi. Ada tiga cara untuk mendapatkan URL seperti itu untuk blob di penyimpanan Azure: menyertakan Tanda Tangan Akses Bersama (SAS) yang memberikan izin baca pada blob, menggunakan identitas terkelola dengan izin baca, atau mengatur ACL untuk blob atau kontainernya untuk memungkinkan akses publik.

identityReference

Referensi ke identitas yang ditetapkan pengguna untuk digunakan untuk mengakses Azure Blob Storage yang ditentukan oleh storageContainerUrl atau httpUrl
Referensi ke identitas yang ditetapkan pengguna yang terkait dengan kumpulan Batch yang akan digunakan simpul komputasi.

storageContainerUrl
  • string

URL kontainer blob dalam Azure Blob Storage.
Properti autoStorageContainerName, storageContainerUrl, dan httpUrl saling eksklusif dan salah satunya harus ditentukan. URL ini harus dapat dibaca dan dapat dicantumkan dari simpul komputasi. Ada tiga cara untuk mendapatkan URL seperti itu untuk kontainer di penyimpanan Azure: menyertakan Tanda Tangan Akses Bersama (SAS) yang memberikan izin baca dan daftar pada kontainer, menggunakan identitas terkelola dengan izin baca dan daftar, atau atur ACL untuk kontainer untuk mengizinkan akses publik.

TaskAddParameter

Tugas Azure Batch untuk ditambahkan.

Name Type Description
affinityInfo

Petunjuk lokalitas yang dapat digunakan oleh layanan Batch untuk memilih Simpul Komputasi untuk memulai Tugas baru.

applicationPackageReferences

Daftar Paket yang akan disebarkan layanan Batch ke Simpul Komputasi sebelum menjalankan baris perintah.
Paket aplikasi diunduh dan disebarkan ke direktori bersama, bukan direktori kerja Tugas. Oleh karena itu, jika paket yang direferensikan sudah ada di Node, dan sudah diperbarui, maka paket tersebut tidak diunduh ulang; salinan yang ada pada Simpul Komputasi digunakan. Jika Paket yang direferensikan tidak dapat diinstal, misalnya karena paket telah dihapus atau karena pengunduhan gagal, Tugas gagal.

authenticationTokenSettings

Pengaturan untuk token autentikasi yang dapat digunakan Tugas untuk melakukan operasi layanan Batch.
Jika properti 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 di bawah Pekerjaan.

commandLine
  • string

Baris perintah Tugas.
Untuk Tugas multi-instans, baris perintah dijalankan sebagai Tugas utama, setelah Tugas utama dan semua subtugas telah selesai mengeksekusi baris perintah koordinasi. Baris perintah tidak berjalan di bawah shell, dan karena itu tidak dapat memanfaatkan fitur shell seperti ekspansi variabel lingkungan. Jika Anda ingin memanfaatkan fitur tersebut, Anda harus memanggil shell di baris perintah, misalnya menggunakan "cmd /c MyCommand" di Windows atau "/bin/sh -c MyCommand" di Linux. Jika baris perintah mengacu pada jalur file, baris tersebut harus menggunakan jalur relatif (relatif terhadap direktori kerja Tugas), atau menggunakan variabel lingkungan yang disediakan Batch (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).

constraints

Batasan eksekusi yang berlaku untuk Tugas ini.
Jika Anda tidak menentukan batasan, maxTaskRetryCount adalah maxTaskRetryCount yang ditentukan untuk Pekerjaan, maxWallClockTime tidak terbatas, dan retentionTime adalah 7 hari.

containerSettings

Pengaturan untuk kontainer tempat Tugas berjalan.
Jika Kumpulan yang akan menjalankan Tugas ini memiliki kontainerKonfigurasi yang ditetapkan, 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. File yang diproduksi dalam kontainer di luar AZ_BATCH_NODE_ROOT_DIR mungkin tidak tercermin ke disk host, yang berarti bahwa API file Batch tidak akan dapat mengakses file-file tersebut.

dependsOn

Tugas yang bergantung pada Tugas ini.
Tugas ini tidak akan dijadwalkan sampai semua Tugas yang bergantung padanya berhasil diselesaikan. Jika salah satu Tugas tersebut gagal dan menghabiskan jumlah coba lagi, Tugas ini tidak akan pernah dijadwalkan. Jika Pekerjaan tidak memiliki usesTaskDependencies yang diatur ke true, dan elemen ini ada, permintaan gagal dengan kode kesalahan TaskDependenciesNotSpecifiedOnJob.

displayName
  • string

Nama tampilan untuk Tugas.
Nama tampilan tidak perlu unik dan dapat berisi karakter Unicode hingga panjang maksimum 1024.

environmentSettings

Daftar pengaturan variabel lingkungan untuk Tugas.

exitConditions

Menentukan bagaimana layanan Batch harus merespons ketika Tugas selesai.
Bagaimana layanan Batch harus merespons ketika Tugas selesai.

id
  • string

String yang secara unik mengidentifikasi Tugas dalam Pekerjaan.
ID dapat berisi kombinasi karakter alfanumerik termasuk tanda hubung dan garis bawah, dan tidak boleh berisi lebih dari 64 karakter. ID ini mempertahankan huruf besar/kecil dan tidak peka huruf besar/kecil (artinya, Anda mungkin tidak memiliki dua ID dalam Pekerjaan yang hanya berbeda menurut kasus).

multiInstanceSettings

Objek yang menunjukkan bahwa Tugas adalah Tugas multi-instans, dan berisi informasi tentang cara menjalankan Tugas multi-instans.
Tugas multi-instans umumnya digunakan untuk mendukung Tugas MPI. Dalam kasus MPI, jika salah satu subtugas gagal (misalnya karena keluar dengan kode keluar bukan nol) seluruh Tugas multi-instans gagal. Tugas multi-instans kemudian dihentikan dan dicoba kembali, hingga batas coba lagi.

outputFiles

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.

requiredSlots
  • integer

Jumlah slot penjadwalan yang diperlukan Tugas untuk dijalankan.
Defaultnya adalah 1. Tugas hanya dapat dijadwalkan untuk dijalankan pada simpul komputasi jika simpul memiliki slot penjadwalan gratis yang cukup tersedia. Untuk Tugas multi-instans, ini harus 1.

resourceFiles

Daftar file yang akan diunduh layanan Batch ke Simpul Komputasi sebelum menjalankan baris perintah.
Untuk Tugas multi-instans, file sumber daya hanya akan diunduh ke Simpul Komputasi tempat Tugas utama dijalankan. Ada ukuran maksimum untuk daftar file sumber daya. Ketika ukuran maksimum terlampaui, permintaan akan gagal dan kode kesalahan respons akan menjadi RequestEntityTooLarge. Jika ini terjadi, pengumpulan ResourceFiles harus dikurangi ukurannya. Ini dapat dicapai menggunakan file .zip, Paket Aplikasi, atau Kontainer Docker.

userIdentity

Identitas pengguna tempat Tugas berjalan.
Jika dihilangkan, Tugas berjalan sebagai pengguna non-administratif yang unik untuk Tugas.

TaskConstraints

Batasan eksekusi untuk diterapkan ke Tugas.

Name Type Description
maxTaskRetryCount
  • integer

Berapa kali maksimum Tugas dapat dicoba kembali. Layanan Batch mencoba kembali Tugas jika kode keluarnya bukan nol.
Perhatikan bahwa nilai ini secara khusus mengontrol jumlah percobaan ulang untuk Tugas yang dapat dieksekusi karena kode keluar bukan nol. Layanan Batch akan mencoba Tugas sekali, dan kemudian dapat mencoba kembali hingga batas ini. Misalnya, jika jumlah percobaan kembali maksimum adalah 3, Batch mencoba Tugas hingga 4 kali (satu percobaan awal dan 3 percobaan ulang). Jika jumlah percobaan kembali maksimum adalah 0, layanan Batch tidak mencoba kembali Tugas setelah upaya pertama. Jika jumlah percobaan kembali maksimum adalah -1, layanan Batch mencoba kembali Tugas tanpa batas, namun ini tidak disarankan untuk tugas mulai atau tugas apa pun. Nilai defaultnya adalah 0 (tidak ada percobaan ulang)

maxWallClockTime
  • string

Waktu maksimum yang berlalu yang dapat dijalankan Tugas, diukur sejak Tugas dimulai. Jika Tugas tidak selesai dalam batas waktu, layanan Batch mengakhirinya.
Jika ini tidak ditentukan, tidak ada batas waktu berapa lama Tugas dapat berjalan.

retentionTime
  • string

Waktu minimum untuk mempertahankan direktori Tugas pada Simpul Komputasi tempatnya berjalan, sejak selesai dieksekusi. Setelah waktu ini, layanan Batch dapat menghapus direktori Tugas dan semua kontennya.
Defaultnya adalah 7 hari, yaitu direktori Tugas akan dipertahankan selama 7 hari kecuali Simpul Komputasi dihapus atau Pekerjaan dihapus.

TaskContainerSettings

Pengaturan kontainer untuk Tugas.

Name Type Description
containerRunOptions
  • string

Opsi tambahan untuk perintah buat kontainer.
Opsi tambahan ini disediakan sebagai argumen ke perintah "docker create", selain yang dikontrol oleh Layanan Batch.

imageName
  • string

Gambar yang digunakan untuk membuat kontainer tempat Tugas akan dijalankan.
Ini adalah referensi Gambar lengkap, seperti yang akan ditentukan untuk "penarikan docker". Jika tidak ada tag yang disediakan sebagai bagian dari Nama gambar, tag ":latest" digunakan sebagai default.

registry

Registri privat yang berisi Gambar kontainer.
Pengaturan ini dapat dihilangkan jika sudah disediakan di Pembuatan kumpulan.

workingDirectory

Lokasi direktori kerja Tugas kontainer.
Defaultnya adalah 'taskWorkingDirectory'.

TaskDependencies

Menentukan dependensi Tugas apa pun. Tugas apa pun yang ditentukan secara eksplisit atau dalam rentang dependensi harus diselesaikan sebelum Tugas dependan akan dijadwalkan.

Name Type Description
taskIdRanges

Daftar rentang ID Tugas yang bergantung pada Tugas ini. Semua Tugas di semua rentang harus berhasil diselesaikan sebelum Tugas dependen dapat dijadwalkan.

taskIds
  • string[]

Daftar ID Tugas yang bergantung pada Tugas ini. Semua Tugas dalam daftar ini harus berhasil diselesaikan sebelum Tugas dependen dapat dijadwalkan.
Koleksi taskIds dibatasi hingga total 64000 karakter (yaitu panjang gabungan semua ID Tugas). Jika koleksi taskIds melebihi panjang maksimum, permintaan Tambahkan Tugas gagal dengan kode kesalahan TaskDependencyListTooLong. Dalam hal ini pertimbangkan untuk menggunakan rentang ID Tugas sebagai gantinya.

TaskIdRange

Rentang ID Tugas yang bisa diandalkan tugas. Semua Tugas dengan ID dalam rentang harus berhasil diselesaikan sebelum Tugas dependen dapat dijadwalkan.

Name Type Description
end
  • integer

ID Tugas terakhir dalam rentang.

start
  • integer

ID Tugas pertama dalam rentang.

UserIdentity

Definisi identitas pengguna tempat Tugas dijalankan.

Name Type Description
autoUser

Pengguna otomatis tempat Tugas dijalankan.
Properti userName dan autoUser saling eksklusif; Anda harus menentukan satu tetapi tidak keduanya.

username
  • string

Nama identitas pengguna tempat Tugas dijalankan.
Properti userName dan autoUser saling eksklusif; Anda harus menentukan satu tetapi tidak keduanya.