Contoh CLI: Membuat dan mengelola kumpulan Linux di Azure Batch
Skrip ini menunjukkan beberapa perintah yang tersedia di Azure CLI untuk membuat dan mengelola kumpulan simpul komputasi Linux di Azure Batch.
Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.
Prasyarat
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai Cepat untuk Bash di Azure Cloud Shell.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, instal Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
Jika Anda menggunakan instalasi lokal, masuk ke Azure CLI dengan menggunakan perintah login az. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Masuk dengan Azure CLI.
Saat Anda diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan peningkatan az.
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 yang berbeda, menggantikan <Subscription ID>
dengan ID Langganan Azure Anda. Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
Untuk informasi selengkapnya, lihat mengatur langganan aktif atau masuk secara interaktif
Untuk membuat kumpulan Linux di Azure Batch
# Create and manage a Linux pool in Azure Batch
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
[[ "$RESOURCE_GROUP" == '' ]] && resourceGroup="msdocs-batch-rg-$randomIdentifier" || resourceGroup="${RESOURCE_GROUP}"
tag="manage-pool-linux"
batchAccount="msdocsbatch$randomIdentifier"
# Create a resource group.
echo "Creating $resourceGroup in "$location"..."
az group create --name $resourceGroup --location "$location" --tag $tag
# Create a Batch account.
echo "Creating $batchAccount"
az batch account create --resource-group $resourceGroup --name $batchAccount --location "$location"
# Authenticate Batch account CLI session.
az batch account login --resource-group $resourceGroup --name $batchAccount --shared-key-auth
# Retrieve a list of available images and node agent SKUs.
az batch pool supported-images list --query "[?contains(imageReference.offer,'ubuntuserver') && imageReference.publisher == 'canonical'].{Offer:imageReference.offer, Publisher:imageReference.publisher, Sku:imageReference.sku, nodeAgentSkuId:nodeAgentSkuId}[-1]" --output tsv
# Create a new Linux pool with a virtual machine configuration. The image reference
# and node agent SKUs ID can be selected from the ouptputs of the above list command.
# The image reference is in the format: {publisher}:{offer}:{sku}:{version} where {version} is
# optional and defaults to 'latest'."
az batch pool create --id mypool-linux --vm-size Standard_A1 --image canonical:ubuntuserver:18_04-lts-gen2 --node-agent-sku-id "batch.node.ubuntu 18.04"
# Resize the pool to start some VMs.
az batch pool resize --pool-id mypool-linux --target-dedicated 5
# Check the status of the pool to see when it has finished resizing.
az batch pool show --pool-id mypool-linux
# List the compute nodes running in a pool.
az batch node list --pool-id mypool-linux
# returns [] if no compute nodes are running
Untuk me-reboot simpul batch
Jika simpul tertentu di kumpulan mengalami masalah, simpul tersebut dapat di-boot ulang atau dicitrakan ulang. ID simpul dapat diambil dengan perintah daftar di atas. ID simpul umum dalam format tvm-xxxxxxxxxx_1-<timestamp>
.
az batch node reboot \
--pool-id mypool-linux \
--node-id tvm-123_1-20170316t000000z
Untuk menghapus simpul batch
Satu atau beberapa simpul komputasi dapat dihapus dari kumpulan, dan pekerjaan apa pun yang telah ditetapkan ke simpul tersebut dapat dialokasikan kembali ke simpul lain.
az batch node delete \
--pool-id mypool-linux \
--node-list tvm-123_1-20170316t000000z tvm-123_2-20170316t000000z \
--node-deallocation-option requeue
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 node-agent-skus list | Mencantumkan SKU agen node dan informasi gambar yang tersedia. |
az batch pool create | Membuat sebuah kumpulan node komputasi. |
az batch pool resize | Mengubah ukuran jumlah VM yang berjalan di kumpulan yang ditentukan. |
az batch pool show | Menampilkan properti kumpulan. |
az batch node list | Mencantumkan semua node komputasi dalam kumpulan yang ditentukan. |
az batch node reboot | Mereboot node komputasi yang ditentukan. |
az batch node delete | Menghapus node yang tercantum dari kumpulan 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.