Bagikan melalui


Contoh CLI: Menjalankan pekerjaan dan tugas dengan Azure Batch

Skrip ini membuat pekerjaan Batch dan menambahkan serangkaian tugas ke pekerjaan. Ini juga menunjukkan cara memantau pekerjaan dan tugasnya.

Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.

Prasyarat

Sampel skrip

Meluncurkan Azure Cloud Shell

Azure Cloud Shell adalah shell interaktif gratis yang dapat Anda gunakan untuk menjalankan langkah-langkah dalam artikel ini. Shell ini memiliki alat Azure umum yang telah dipasang sebelumnya dan dikonfigurasi untuk digunakan dengan akun Anda.

Untuk membuka Cloud Shell, cukup pilih Cobalah dari sudut kanan atas blok kode. Anda juga dapat meluncurkan Cloud Shell di tab browser terpisah dengan membuka https://shell.azure.com.

Saat Cloud Shell terbuka, verifikasi bahwa Bash dipilih untuk lingkungan Anda. Sesi berikutnya akan menggunakan Azure CLI dalam lingkungan Bash, Pilih Salin untuk menyalin blok kode, tempelkan ke Cloud Shell, lalu tekan Enter untuk menjalankannya.

Masuk ke Azure

Cloud Shell diautentikasi secara otomatis dengan akun awal yang digunakan untuk masuk. Gunakan skrip berikut untuk masuk menggunakan langganan lain, mengganti subscriptionId dengan ID langganan Azure Anda.

Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.

subscription="subscriptionId" # Set Azure subscription ID here

az account set -s $subscription # ...or use 'az login'

Untuk informasi selengkapnya, lihat mengatur langganan aktif atau masuk secara interaktif.

Buat akun Batch di mode layanan Batch

# Run a job and tasks with Azure Batch

# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
[[ "$RESOURCE_GROUP" == '' ]] && resourceGroup="msdocs-batch-rg-$randomIdentifier" || resourceGroup="${RESOURCE_GROUP}"
tag="run-job"
storageAccount="msdocsstorage$randomIdentifier"
batchAccount="msdocsbatch$randomIdentifier"

# Create a resource group.
echo "Creating $resourceGroup in "$location"..."
az group create --name $resourceGroup --location "$location" --tag $tag

# Create a general-purpose storage account in your resource group.
echo "Creating $storageAccount"
az storage account create --resource-group $resourceGroup --name $storageAccount --location "$location" --sku Standard_LRS

# Create a Batch account.
echo "Creating $batchAccount"
az batch account create --name $batchAccount --storage-account $storageAccount --resource-group $resourceGroup --location "$location"

# Authenticate against the account directly for further CLI interaction.
az batch account login --name $batchAccount --resource-group $resourceGroup --shared-key-auth

# Create a new Linux pool with a virtual machine configuration. 
az batch pool create --id mypool --vm-size Standard_A1 --target-dedicated 2 --image canonical:ubuntuserver:18_04-lts-gen2 --node-agent-sku-id "batch.node.ubuntu 18.04"

# Create a new job to encapsulate the tasks that are added.
az batch job create --id myjob --pool-id mypool

# Add tasks to the job. Here the task is a basic shell command.
az batch task create --job-id myjob --task-id task1 --command-line "/bin/bash -c 'printenv AZ_BATCH_TASK_WORKING_DIR'"

Untuk menambahkan banyak tugas sekaligus

Untuk menambahkan banyak tugas sekaligus, tentukan tugas dalam file JSON, dan teruskan ke perintah. Untuk format, lihat https://github.com/Azure/azure-docs-cli-python-samples/blob/master/batch/run-job/tasks.json. Sediakan jalur absolut ke file JSON. Untuk contoh file JSON, lihat https://github.com/Azure-Samples/azure-cli-samples/blob/master/batch/run-job/tasks.json.

az batch task create \
    --job-id myjob \
    --json-file tasks.json

Untuk memperbarui pekerjaan

Perbarui pekerjaan sehingga secara otomatis ditandai sebagai selesai setelah semua tugas selesai.

az batch job set \
--job-id myjob \
--on-all-tasks-complete terminatejob

Untuk memantau status pekerjaan

az batch job show --job-id myjob

Untuk memantau status tugas

az batch task show \
    --job-id myjob \
    --task-id task1

Membersihkan sumber daya

Gunakan perintah berikut untuk menghapus grup sumber daya dan semua sumber daya yang terkait dengannya menggunakan perintah az group delete - kecuali Anda masih memiliki kebutuhan untuk sumber daya ini. Beberapa sumber daya ini mungkin membutuhkan beberapa waktu untuk dibuat dan dihapus.

az group delete --name $resourceGroup

Referensi sampel

Skrip ini menggunakan perintah berikut. Setiap perintah dalam tabel ditautkan ke dokumentasi spesifik-perintah.

Perintah Catatan
az group create Membuat grup sumber daya tempat semua sumber daya disimpan.
pembuatan akun az batch Membuat akun Batch.
login akun az batch Mengautentikasi pada akun Batch yang ditentukan untuk interaksi CLI lebih lanjut.
az batch pool create Membuat sebuah kumpulan node komputasi.
buat pekerjaan batch az Membuat sebuah pekerjaan Batch.
buat tugas az batch Menambahkan sebuah tugas ke pekerjaans Batch yang ditentukan.
set pekerjaan az batch Memperbarui properti dari sebuah pekerjaan Batch.
tampilkan pekerjaan az batch Mengambil rincian pekerjaan Batch yang ditentukan.
tampilkan tugas az batch Mengambil rincian tugas dari pekerjaan Batch yang ditentukan.
hapus grup az Menghapus grup sumber daya termasuk semua sumber daya berlapis.

Langkah berikutnya

Untuk informasi selengkapnya tentang antarmuka tingkat panggilan Azure, lihat Dokumentasi antarmuka tingkat panggilan Azure.