Mulai cepat: Menggunakan Azure CLI untuk membuat akun Batch dan menjalankan pekerjaan
Mulai cepat ini menunjukkan kepada Anda cara memulai Azure Batch dengan menggunakan perintah dan skrip Azure CLI untuk membuat dan mengelola sumber daya Batch. Anda membuat akun Batch yang memiliki kumpulan komputer virtual, atau simpul komputasi. Anda kemudian membuat dan menjalankan pekerjaan dengan tugas yang berjalan pada simpul kumpulan.
Setelah Anda menyelesaikan mulai cepat ini, Anda memahami konsep utama layanan Batch dan siap menggunakan Batch dengan beban kerja skala yang lebih realistis dan lebih besar.
Prasyarat
-
Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.
Azure Cloud Shell atau CLI Azure.
Anda dapat menjalankan perintah Azure CLI dalam mulai cepat ini secara interaktif di Azure Cloud Shell. Untuk menjalankan perintah di Cloud Shell, pilih Buka Cloudshell di sudut kanan atas blok kode. Pilih Salin untuk menyalin kode, dan tempelkan ke Cloud Shell untuk menjalankannya. Anda juga dapat menjalankan Cloud Shell dari dalam portal Azure. Cloud Shell selalu menggunakan versi terbaru Azure CLI.
Atau, Anda dapat menginstal Azure CLI secara lokal untuk menjalankan perintah. Langkah-langkah dalam artikel ini memerlukan Azure CLI versi 2.0.20 atau yang lebih baru. Jalankan versi az untuk melihat versi dan pustaka dependen yang diinstal, dan jalankan peningkatan az untuk meningkatkan. Jika Anda menggunakan penginstalan lokal, masuk ke Azure dengan menggunakan perintah az login .
Catatan
Untuk beberapa wilayah dan jenis langganan, pembatasan kuota dapat menyebabkan pembuatan akun atau simpul Batch gagal atau tidak selesai. Dalam situasi ini, Anda dapat meminta penambahan kuota tanpa biaya. Untuk informasi selengkapnya, lihat Kuota dan batasan layanan Batch.
Buat grup sumber daya
Jalankan perintah buat grup az berikut untuk membuat grup sumber daya Azure bernama qsBatch
di eastus2
wilayah Azure. Grup sumber daya adalah kontainer logis yang menyimpan sumber daya Azure untuk mulai cepat ini.
az group create \
--name qsBatch \
--location eastus2
Buat akun penyimpanan
Gunakan perintah az storage account create untuk membuat akun Azure Storage untuk menautkan ke akun Batch Anda. Meskipun mulai cepat ini tidak menggunakan akun penyimpanan, sebagian besar beban kerja Batch dunia nyata menggunakan akun penyimpanan tertaut untuk menyebarkan aplikasi dan menyimpan data input dan output.
Jalankan perintah berikut untuk membuat akun penyimpanan SKU Standard_LRS bernama mybatchstorage
di grup sumber daya Anda:
az storage account create \
--resource-group qsBatch \
--name mybatchstorage \
--location eastus2 \
--sku Standard_LRS
Membuat akun Batch
Jalankan perintah az batch account create berikut untuk membuat akun Batch bernama mybatchaccount
di grup sumber daya Anda dan menautkannya dengan mybatchstorage
akun penyimpanan.
az batch account create \
--name mybatchaccount \
--storage-account mybatchstorage \
--resource-group qsBatch \
--location eastus2
Masuk ke akun Batch baru dengan menjalankan perintah az batch account login . Setelah Anda mengautentikasi akun Anda dengan Batch, perintah berikutnya az batch
dalam sesi ini menggunakan konteks akun ini.
az batch account login \
--name mybatchaccount \
--resource-group qsBatch \
--shared-key-auth
Membuat kumpulan simpul komputasi
Jalankan perintah az batch pool create untuk membuat kumpulan simpul komputasi Linux di akun Batch Anda. Contoh berikut membuat kumpulan bernama myPool
yang terdiri dari dua VM ukuran Standard_A1_v2 yang menjalankan OS Ubuntu 20.04 LTS. Ukuran simpul ini menawarkan keseimbangan performa yang baik versus biaya untuk contoh mulai cepat ini.
az batch pool create \
--id myPool \
--image canonical:0001-com-ubuntu-server-focal:20_04-lts \
--node-agent-sku-id "batch.node.ubuntu 20.04" \
--target-dedicated-nodes 2 \
--vm-size Standard_A1_v2
Batch segera membuat kumpulan, tetapi membutuhkan waktu beberapa menit untuk mengalokasikan dan memulai simpul komputasi. Untuk melihat status kumpulan, gunakan perintah az batch pool show . Perintah ini memperlihatkan semua properti kumpulan simpul, dan Anda bisa meminta properti tertentu. Perintah berikut mengkueri status alokasi kumpulan:
az batch pool show --pool-id myPool \
--query "allocationState"
Saat Batch mengalokasikan dan memulai simpul, kumpulan berada dalam status resizing
. Anda dapat membuat pekerjaan dan tugas saat status kumpulan masih resizing
. Kumpulan siap menjalankan tugas ketika status alokasi steady
dan semua simpul berjalan.
Membuat pekerjaan
Gunakan perintah az batch job create untuk membuat pekerjaan Batch untuk dijalankan di kumpulan Anda. Tugas Microsoft Azure Batch adalah grup logika untuk satu atau beberapa tugas. Pekerjaan ini mencakup pengaturan yang umum untuk tugas, seperti kumpulan yang akan dijalankan. Contoh berikut membuat pekerjaan yang dipanggil myJob
myPool
yang awalnya tidak memiliki tugas.
az batch job create \
--id myJob \
--pool-id myPool
Membuat tugas pekerjaan
Batch menyediakan sejumlah cara untuk menyebarkan aplikasi dan skrip ke node komputasi. Gunakan perintah az batch task create untuk membuat tugas yang akan dijalankan dalam pekerjaan. Setiap tugas memiliki baris perintah yang menentukan aplikasi atau skrip.
Skrip Bash berikut membuat empat tugas paralel yang identik dan dipanggil myTask1
melalui myTask4
. Baris perintah tugas menampilkan variabel lingkungan Batch pada simpul komputasi, lalu menunggu 90 detik.
for i in {1..4}
do
az batch task create \
--task-id myTask$i \
--job-id myJob \
--command-line "/bin/bash -c 'printenv | grep AZ_BATCH; sleep 90s'"
done
Output perintah menunjukkan pengaturan untuk setiap tugas. Batch mendistribusikan tugas ke simpul komputasi.
Tampilkan status tugas
Setelah Anda membuat tugas, Batch mengantrekan tugas untuk dijalankan pada kumpulan. Setelah simpul tersedia, tugas berjalan pada simpul.
Gunakan perintah az batch task show untuk melihat status tugas Batch. Contoh berikut menunjukkan detail tentang status myTask1
:
az batch task show \
--job-id myJob \
--task-id myTask1
Output perintah mencakup banyak detail. Misalnya, salah satu exitCode
dari 0
menunjukkan bahwa perintah tugas berhasil diselesaikan. menunjukkan nodeId
nama simpul kumpulan yang menjalankan tugas.
Melihat output tugas
Gunakan perintah az batch task file list untuk mencantumkan file yang dibuat tugas pada node. Perintah berikut mencantumkan file yang myTask1
dibuat:
az batch task file list \
--job-id myJob \
--task-id myTask1 \
--output table
Hasilnya mirip dengan output berikut:
Name URL Is Directory Content Length
---------- ---------------------------------------------------------------------------------------- -------------- ----------------
stdout.txt https://mybatchaccount.eastus2.batch.azure.com/jobs/myJob/tasks/myTask1/files/stdout.txt False 695
certs https://mybatchaccount.eastus2.batch.azure.com/jobs/myJob/tasks/myTask1/files/certs True
wd https://mybatchaccount.eastus2.batch.azure.com/jobs/myJob/tasks/myTask1/files/wd True
stderr.txt https://mybatchaccount.eastus2.batch.azure.com/jobs/myJob/tasks/myTask1/files/stderr.txt False 0
Perintah unduhan file tugas batch az mengunduh file output ke direktori lokal. Jalankan contoh berikut untuk mengunduh file stdout.txt :
az batch task file download \
--job-id myJob \
--task-id myTask1 \
--file-path stdout.txt \
--destination ./stdout.txt
Anda dapat melihat konten file output standar di editor teks. Contoh berikut menunjukkan file stdout.txt khas. Output standar dari tugas ini menunjukkan variabel lingkungan Azure Batch yang diatur pada simpul. Anda dapat merujuk ke variabel lingkungan ini di baris perintah tugas pekerjaan Batch Anda, dan di aplikasi dan skrip yang dijalankan baris perintah.
AZ_BATCH_TASK_DIR=/mnt/batch/tasks/workitems/myJob/job-1/myTask1
AZ_BATCH_NODE_STARTUP_DIR=/mnt/batch/tasks/startup
AZ_BATCH_CERTIFICATES_DIR=/mnt/batch/tasks/workitems/myJob/job-1/myTask1/certs
AZ_BATCH_ACCOUNT_URL=https://mybatchaccount.eastus2.batch.azure.com/
AZ_BATCH_TASK_WORKING_DIR=/mnt/batch/tasks/workitems/myJob/job-1/myTask1/wd
AZ_BATCH_NODE_SHARED_DIR=/mnt/batch/tasks/shared
AZ_BATCH_TASK_USER=_azbatch
AZ_BATCH_NODE_ROOT_DIR=/mnt/batch/tasks
AZ_BATCH_JOB_ID=myJobl
AZ_BATCH_NODE_IS_DEDICATED=true
AZ_BATCH_NODE_ID=tvm-257509324_2-20180703t215033z
AZ_BATCH_POOL_ID=myPool
AZ_BATCH_TASK_ID=myTask1
AZ_BATCH_ACCOUNT_NAME=mybatchaccount
AZ_BATCH_TASK_USER_IDENTITY=PoolNonAdmin
Membersihkan sumber daya
Jika Anda ingin melanjutkan tutorial dan sampel Batch, Anda dapat menggunakan akun Batch dan akun penyimpanan tertaut yang Anda buat dalam mulai cepat ini. Tidak ada biaya untuk akun Batch itu sendiri.
Kumpulan dan simpul dikenakan biaya saat simpul berjalan, bahkan jika mereka tidak menjalankan pekerjaan. Saat Anda tidak lagi memerlukan kumpulan, gunakan perintah az batch pool delete untuk menghapusnya. Menghapus kumpulan akan menghapus semua output tugas pada simpul, dan simpul itu sendiri.
az batch pool delete --pool-id myPool
Ketika Anda tidak lagi memerlukan sumber daya apa pun yang Anda buat untuk mulai cepat ini, Anda dapat menggunakan perintah az group delete untuk menghapus grup sumber daya dan semua sumber dayanya. Untuk menghapus grup sumber daya dan akun penyimpanan, akun Batch, kumpulan simpul, dan semua sumber daya terkait, jalankan perintah berikut:
az group delete --name qsBatch
Langkah berikutnya
Dalam mulai cepat ini, Anda membuat akun dan kumpulan Batch, membuat dan menjalankan pekerjaan dan tugas Batch, dan melihat output tugas dari simpul. Sekarang setelah Anda memahami konsep utama layanan Batch, Anda siap untuk menggunakan Batch dengan beban kerja skala yang lebih realistis dan lebih besar. Untuk mempelajari selengkapnya tentang Azure Batch, lanjutkan ke tutorial Azure Batch.