Mulai Cepat: Membuat Linux Virtual Machine Scale Set dengan templat ARM
Berlaku untuk: ✔️ Mesin virtual Linux ✔️ Set skala seragam
Catatan
Artikel berikut adalah untuk Uniform Virtual Machine Scale Sets. Sebaiknya gunakan Set Skala Komputer Virtual Fleksibel untuk beban kerja baru. Pelajari selengkapnya tentang mode orkestrasi baru ini dalam gambaran umum Set Skala Komputer Virtual Fleksibel kami.
Set Skala Komputer Virtual memungkinkan Anda menyebarkan dan mengelola sekumpulan komputer virtual penskalaan otomatis. Anda dapat menskalakan jumlah komputer virtual di set skala secara manual, atau menentukan aturan skala otomatis berdasarkan penggunaan sumber daya seperti CPU, permintaan memori, atau lalu lintas jaringan. Penyeimbang beban muatan Azure kemudian mendistribusikan lalu lintas ke instans komputer virtual di set skala. Dalam mulai cepat ini, Anda membuat Virtual Machine Scale Set dan menyebarkan aplikasi sampel dengan templat Azure Resource Manager (templat ARM).
Templat Azure Resource Manager adalah file JavaScript Object Notation (JSON) yang menentukan infrastruktur dan konfigurasi untuk proyek Anda. Template tersebut menggunakan sintaksis deklaratif. Anda menjelaskan penyebaran yang Dimaksudkan tanpa menulis urutan perintah pemrograman untuk membuat penyebaran.
Templat ARM memungkinkan Anda menyebarkan grup sumber daya terkait. Dalam satu templat, Anda dapat membuat Virtual Machine Scale Set, menginstal aplikasi, dan mengonfigurasi aturan skala otomatis. Dengan penggunaan variabel dan parameter, templat ini dapat digunakan kembali untuk memperbarui set skala yang ada, atau membuat set skala tambahan. Anda dapat menyebarkan templat melalui portal Microsoft Azure, Azure CLI, atau Azure PowerShell, atau dari alur integrasi berkelanjutan/pengiriman berkelanjutan (CI/CD).
Jika lingkungan Anda telah memenuhi prasyarat dan Anda terbiasa menggunakan templat ARM, pilih tombol Sebarkan ke Azure. Templat akan terbuka di portal Microsoft Azure.
Prasyarat
Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.
Meninjau templat
Templat yang digunakan di mulai cepat ini berasal dari Templat Mulai Cepat Azure.
Sumber daya ini ditentukan dalam templat:
- Microsoft.Network/virtualNetworks
- Microsoft.Network/publicIPAddresses
- Microsoft.Network/loadBalancers
- Microsoft.Compute/virtualMachineScaleSets
- Microsoft.Insights/autoscaleSettings
Menentukan set skala
Untuk membuat skala dengan templat, Anda menentukan sumber daya yang sesuai. Bagian inti dari jenis sumber daya Virtual Machine Scale Set adalah:
Properti | Deskripsi properti | Contoh nilai templat |
---|---|---|
jenis | Jenis sumber daya Azure yang dibuat | Microsoft.Compute/virtualMachineScaleSets |
nama | Nama set skala | myScaleSet |
lokasi | Lokasi untuk membuat set skala | AS Timur |
sku.name | Ukuran VM untuk setiap instans set skala | Standard_A1 |
sku.capacity | Jumlah instans VM yang dibuat di awal | 2 |
upgradePolicy.mode | Mode peningkatan instans VM saat perubahan terjadi | Otomatis |
imageReference | Platform atau gambar kustom yang digunakan untuk instans komputer virtual | Canonical Ubuntu Server 16.04-LTS |
osProfile.computerNamePrefix | Prefiks nama untuk tiap instans VM | myvmss |
osProfile.adminUsername | Nama pengguna untuk setiap instans VM | azureuser |
osProfile.adminPassword | Kata sandi untuk tiap instans VM | P@ssw0rd! |
Untuk kustomisasi templat set skala, Anda dapat mengubah ukuran atau kapasitas awal VM. Opsi lain adalah menggunakan platform yang berbeda atau gambar kustom.
Menambahkan aplikasi contoh
Untuk menguji set skala Anda, instal aplikasi web dasar. Ketika Anda menyebarkan set skala, ekstensi VM dapat menyediakan konfigurasi setelah penyebaran dan tugas automasi, seperti menginstal aplikasi. Skrip dapat diunduh dari penyimpanan Azure atau GitHub, atau disediakan ke portal Microsoft Azure pada run-time ekstensi. Untuk menerapkan ekstensi ke set skala Anda, Anda menambahkan bagian extensionProfile ke contoh sumber daya sebelumnya. Profil ekstensi biasanya mendefinisikan properti berikut:
- Jenis ekstensi
- Penerbit ekstensi
- Versi ekstensi
- Lokasi skrip konfigurasi atau penginstalan
- Perintah yang dijalankan di instans komputer virtual
Templat menggunakan Ekstensi Skrip Kustom untuk menginstal Bottle, kerangka kerja web Python, dan server HTTP sederhana.
Dua skrip didefinisikan dalam fileUris - installserver.sh, dan workserver.py. File ini diunduh dari GitHub, kemudian commandToExecute berjalan bash installserver.sh
untuk menginstal dan mengonfigurasi aplikasi.
Menyebarkan templat
Anda dapat menyebarkan templat dengan memilih tombol Sebarkan ke Azure berikut. Tombol ini membuka portal Microsoft Azure, memuat templat lengkap, dan meminta beberapa parameter seperti nama set skala, jumlah instans, dan kredensial admin.
Anda juga bisa menyebarkan templat Resource Manager dengan menggunakan Azure CLI:
# Create a resource group
az group create --name myResourceGroup --location EastUS
# Deploy template into resource group
az deployment group create \
--resource-group myResourceGroup \
--template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/application-workloads/python/vmss-bottle-autoscale/azuredeploy.json
Jawab permintaan untuk memberikan nama set skala, jumlah instans, dan kredensial admin untuk instans VM. Dibutuhkan beberapa menit untuk membuat set skala dan sumber daya pendukung.
Memvalidasi penyebaran
Untuk melihat set skala Anda berfungsi, akses aplikasi web sampel di browser web. Dapatkan alamat IP publik load balancer Anda dengan az network public-ip list sebagai berikut:
az network public-ip list \
--resource-group myResourceGroup \
--query [*].ipAddress -o tsv
Masukkan alamat IP publik penyeimbang beban ke peramban web dalam format http://publicIpAddress:9000/do_work. Penyeimbang muatan mendistribusikan lalu lintas ke salah satu instans komputer virtual Anda, seperti yang ditunjukkan oleh contoh berikut:
Membersihkan sumber daya
Jika tidak diperlukan lagi, Anda dapat menggunakan hapus grup az untuk menghapus grup sumber daya, set skala, dan semua sumber daya terkait sebagaimana berikut ini. Parameter --no-wait
mengembalikan kontrol ke permintaan tanpa menunggu operasi selesai. Parameter --yes
mengonfirmasi bahwa Anda ingin menghapus sumber daya tanpa permintaan tambahan untuk melakukannya.
az group delete --name myResourceGroup --yes --no-wait
Langkah berikutnya
Di tutorial mulai cepat ini, Anda membuat set skala Linux dengan templat ARM dan menggunakan Ekstensi Skrip Kustom untuk menginstal server web Python dasar pada instans VM. Untuk mempelajari lebih lanjut, lanjutkan ke tutorial tentang cara membuat dan mengelola Azure Virtual Machine Scale Sets.