Bagikan melalui


Variabel lingkungan waktu proses Azure Batch

Layanan Azure Batch menetapkan variabel lingkungan berikut pada simpul komputasi. Anda dapat mereferensikan variabel lingkungan ini di baris perintah tugas, dan dalam program dan skrip yang dijalankan oleh baris perintah.

Untuk informasi selengkapnya tentang menggunakan variabel lingkungan dengan Batch, lihat Pengaturan lingkungan untuk tugas.

Keterlihatan variabel lingkungan

Variabel lingkungan ini hanya terlihat dalam konteks pengguna tugas, yang merupakan akun pengguna pada simpul tempat tugas dijalankan. Anda tidak akan melihat variabel ini saat menyambungkan dari jarak jauh ke simpul komputasi melalui Remote Desktop Protocol (RDP) atau Secure Shell (SSH) dan mencantumkan variabel lingkungan. Ini karena akun pengguna yang digunakan untuk koneksi jarak jauh tidak sama dengan akun yang digunakan oleh tugas.

Untuk mendapatkan nilai variabel lingkungan saat ini, luncurkan cmd.exe pada simpul komputasi Windows atau /bin/sh pada simpul Linux:

cmd /c set <ENV_VARIABLE_NAME>

/bin/sh -c "printenv <ENV_VARIABLE_NAME>"

Perluasan baris perintah variabel lingkungan

Baris perintah yang dijalankan oleh tugas pada simpul komputasi tidak berjalan di bawah shell. Ini berarti bahwa baris perintah ini tidak dapat secara asli menggunakan fitur shell seperti ekspansi variabel lingkungan (termasuk PATH). Untuk menggunakan fitur tersebut, Anda harus memanggil shell di baris perintah. Misalnya, luncurkan cmd.exe pada simpul komputasi Windows atau /bin/sh pada simpul Linux:

cmd /c MyTaskApplication.exe %MY_ENV_VAR%

/bin/sh -c "MyTaskApplication $MY_ENV_VAR"

Variabel lingkungan

Nota

AZ_BATCH_AUTHENTICATION_TOKEN tidak digunakan lagi dan akan dihentikan pada 30 September 2024. Lihat pengumuman untuk detail dan implementasi alternatif.

Nama variabel Deskripsi Ketersediaan Contoh
AZ_BATCH_ACCOUNT_NAME Nama akun Batch tempat tugas berada. Semua tugas. mybatchaccount
AZ_BATCH_ACCOUNT_URL URL akun Batch. Semua tugas. https://myaccount.westus.batch.azure.com
AZ_BATCH_APP_PACKAGE Awalan dari semua variabel lingkungan paket aplikasi. Misalnya, jika Aplikasi "FOO" versi "1" diinstal ke kumpulan, variabel lingkungan AZ_BATCH_APP_PACKAGE_FOO_1 (di Linux) atau AZ_BATCH_APP_PACKAGE_FOO#1 (di Windows). AZ_BATCH_APP_PACKAGE_FOO_1 menunjuk ke lokasi paket diunduh (folder). Saat menggunakan versi default paket aplikasi, gunakan variabel lingkungan AZ_BATCH_APP_PACKAGE tanpa nomor versi. Jika di Linux, dan nama paket aplikasi adalah "Agent-linux-x64" dan versinya adalah "1.1.46.0, nama lingkungan sebenarnya: AZ_BATCH_APP_PACKAGE_agent_linux_x64_1_1_46_0, menggunakan garis bawah dan huruf kecil. Untuk informasi selengkapnya, lihat Menjalankan aplikasi yang diinstal untuk detail selengkapnya. Tugas apa pun dengan paket aplikasi terkait. Juga tersedia untuk semua tugas jika simpul itu sendiri memiliki paket aplikasi. AZ_BATCH_APP_PACKAGE_FOO_1 (Linux) atau AZ_BATCH_APP_PACKAGE_FOO#1 (Windows)
AZ_BATCH_AUTHENTICATION_TOKEN Token autentikasi yang memberikan akses ke serangkaian operasi layanan Batch terbatas. Variabel lingkungan ini hanya ada jika authenticationTokenSettings diatur saat tugas ditambahkan. Nilai token digunakan dalam API Batch sebagai kredensial untuk membuat klien Batch, seperti di BAtchClient.Open() .NET API. Token tidak mendukung jaringan privat. Semua tugas. Token akses OAuth2
AZ_BATCH_CERTIFICATES_DIR Direktori dalam direktori kerja tugas tempat sertifikat disimpan untuk simpul komputasi Linux. Variabel lingkungan ini tidak berlaku untuk simpul komputasi Windows. Semua tugas. /mnt/batch/tasks/workitems/batchjob001/job-1/task001/certs
AZ_BATCH_HOST_LIST Daftar simpul yang dialokasikan untuk tugas multi-instans dalam format nodeIP,nodeIP. Multi-instans primer dan subtugas. 10.0.0.4,10.0.0.5
AZ_BATCH_IS_CURRENT_NODE_MASTER Menentukan apakah simpul saat ini adalah simpul master untuk tugas multi-instans. Nilai yang mungkin adalah true dan false. Multi-instans primer dan subtugas. true
AZ_BATCH_JOB_ID ID pekerjaan tempat tugas berada. Semua tugas kecuali memulai tugas. batchjob001
AZ_BATCH_JOB_PREP_DIR Jalur lengkap direktori tugas persiapan pekerjaan pada simpul. Semua tugas kecuali tugas memulai dan persiapan pekerjaan. Hanya tersedia jika pekerjaan dikonfigurasi dengan tugas persiapan pekerjaan. AZ_BATCH_JOB_PREP_DIR
Direktori Kerja Persiapan Pekerjaan Batch AZ Jalur lengkap direktori kerja tugas persiapan kerja pada simpul. Semua tugas kecuali tugas memulai dan persiapan pekerjaan. Hanya tersedia jika pekerjaan dikonfigurasi dengan tugas persiapan pekerjaan. AZ_BATCH_JOB_PREP_WORKING_DIR
AZ_BATCH_MASTER_NODE Alamat IP dan port simpul komputasi tempat tugas utama tugas multi-instans berjalan. Jangan gunakan port yang ditentukan di sini untuk komunikasi MPI atau NCCL - port tersebut dicadangkan untuk layanan Azure Batch. Gunakan variabel MASTER_PORT sebagai gantinya, baik dengan menetapkannya dengan nilai yang diterima melalui argumen baris perintah (port 6105 adalah pilihan default yang baik), atau menggunakan nilai yang diatur oleh AML jika nilai tersebut tersedia. Multi-instans primer dan subtugas. 10.0.0.4:6000
AZ_BATCH_NODE_ID ID simpul tempat tugas ditetapkan. Semua tugas. TVM-1219235766_3-20160919T172711Z
AZ_BATCH_NODE_IS_DEDICATED (Node batch AZ adalah node khusus) Jika true, simpul saat ini adalah simpul khusus. Jika false, itu adalah simpul Azure Spot. Semua tugas. true
AZ_BATCH_NODE_LIST Daftar simpul yang dialokasikan untuk tugas multi-instans dalam format nodeIP;nodeIP. Multi-instans primer dan subtugas. 10.0.0.4;10.0.0.5
AZ_BATCH_NODE_MOUNTS_DIR Jalur lengkap lokasi pemasangan sistem file tingkat simpul tempat semua direktori pemasangan berada. Berbagi file Windows menggunakan huruf kandar, jadi untuk Windows, kandar pemasangan adalah bagian dari perangkat dan drive. Semua tugas, termasuk tugas awal, dapat diakses oleh pengguna, dengan catatan bahwa pengguna mengetahui izin pemasangan untuk direktori yang dipasang. AZ_BATCH_NODE_MOUNTS_DIR
AZ_BATCH_NODE_ROOT_DIR Jalur lengkap direktori induk semua direktori Batch pada simpul. Semua tugas. AZ_BATCH_NODE_ROOT_DIR
AZ_BATCH_NODE_SHARED_DIR Jalur lengkap direktori bersama pada simpul. Semua tugas yang dijalankan pada simpul memiliki akses baca/tulis ke direktori ini. Tugas yang dijalankan pada simpul lain tidak memiliki akses jarak jauh ke direktori ini (bukan direktori jaringan "berbagi"). Semua tugas. AZ_BATCH_NODE_SHARED_DIR
AZ_BATCH_NODE_STARTUP_DIR Jalur lengkap direktori tugas awal pada simpul. Semua tugas. AZ_BATCH_NODE_STARTUP_DIR
AZ_BATCH_POOL_ID ID kolam yang digunakan untuk menjalankan tugas. Semua tugas. kumpulan kumpulan001
AZ_BATCH_TASK_DIR Jalur lengkap direktori tugas pada simpul. Direktori ini berisi stdout.txt dan stderr.txt yang diperlukan untuk tugas tersebut, serta AZ_BATCH_TASK_WORKING_DIR. Semua tugas. AZ_BATCH_TASK_DIR
AZ_BATCH_TASK_ID ID tugas saat ini. Semua tugas kecuali memulai tugas. tugas001
AZ_BATCH_TASK_SHARED_DIR Jalur direktori yang identik untuk tugas utama dan setiap subtugas tugas multi-instans. Jalur ada pada setiap simpul di mana tugas multi-instans berjalan, dan dapat diakses untuk baca/tulis oleh perintah tugas yang berjalan di simpul tersebut (perintah koordinasi dan perintah aplikasi). Subtugas atau tugas utama yang dijalankan pada simpul lain tidak memiliki akses jarak jauh ke direktori ini (bukan direktori jaringan "berbagi"). Multi-instans primer dan subtugas. AZ_BATCH_TASK_SHARED_DIR
AZ_BATCH_TASK_WORKING_DIR Jalur lengkap direktori kerja tugas di node. Tugas yang sedang berjalan memiliki akses baca/tulis ke direktori ini. Semua tugas. AZ_BATCH_TASK_WORKING_DIR
RUANG DISK EPHEMERAL YANG DICADANGKAN UNTUK TUGAS AZ_BATCH DALAM SATUAN BYTE Ambang batas saat ini untuk ruang disk di mana VM akan ditandai sebagai DiskFull. Semua tugas. 1000000
CCP_NODES Daftar simpul dan jumlah inti per simpul yang dialokasikan untuk tugas multi-instans. Simpul dan inti tercantum dalam format numNodes<space>node1IP<space>node1Cores<space>
node2IP<space>node2Cores<space> ..., di mana jumlah simpul diikuti oleh satu atau beberapa alamat IP simpul dan jumlah inti untuk masing-masing.
Multi-instans primer dan subtugas. 2 10.0.0.4 1 10.0.0.5 1

Penting

Nilai yang tepat untuk jalur untuk Variabel Lingkungan dianggap sebagai detail implementasi dan dapat berubah. Gunakan Variabel Lingkungan yang disediakan Batch alih-alih mencoba membangun representasi jalur mentah.

Tabel berikut menetapkan nilai-nilai postfix dari setiap variabel lingkungan setelah nilai AZ_BATCH_NODE_ROOT_DIR. Lihat AZ_BATCH_NODE_ROOT_DIR untuk informasi lebih lanjut.

Nama Variabel Lingkungan Postfix Direktori Nilai Variabel Lingkungan
AZ_BATCH_NODE_STARTUP_DIR startup
AZ_BATCH_NODE_SHARED_DIR shared
AZ_BATCH_NODE_MOUNTS_DIR fsmounts

Direktori pekerjaan berbeda antara pekerjaan yang dijalankan tunggal dan jadwal pekerjaan. Tabel berikut menentukan nilai direktori pekerjaan dalam pekerjaan eksekusi tunggal dan jadwal pekerjaan.

Jenis Pekerjaan Postfix Nilai Direktori Pekerjaan setelah AZ_BATCH_NODE_ROOT_DIR
Pekerjaan workitems\{job name}\job-1
Jadwal Pekerjaan workitems\{job schedule name}\{job name}

Tabel berikut merinci nilai postfix dari masing-masing variabel lingkungan setelah direktori pekerjaan.

Nama Variabel Lingkungan Nilai Variabel Lingkungan Ditambahkan ke Direktori Setelah Direktori Pekerjaan
AZ_BATCH_TASK_WORKING_DIR {task name}\wd
AZ_BATCH_TASK_DIR {task name}
AZ_BATCH_TASK_SHARED_DIR {task name}
AZ_BATCH_JOB_PREP_DIR {job prepration task name}
Direktori Kerja Persiapan Pekerjaan Batch AZ {job prepration task name}\wd

Langkah berikutnya