Bagikan melalui


Panduan Awal: Membuat Kumpulan Skala Mesin Virtual Linux dengan templat ARM

Berlaku untuk: ✔️ Linux VM ✔️ Set Skala Seragam

Nota

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 VM dalam set skala secara manual, atau menentukan aturan untuk skala otomatis berdasarkan penggunaan sumber daya seperti CPU, permintaan memori, atau lalu lintas jaringan. Penyeimbang beban Azure kemudian mendistribusikan lalu lintas ke instans VM pada set skala. Dalam panduan memulai cepat ini, Anda akan membuat Virtual Machine Scale Set dan menyebarkan aplikasi sampel menggunakan templat Azure Resource Manager (ARM template).

Templat Azure Resource Manager adalah file JavaScript Object Notation (JSON) yang menentukan infrastruktur dan konfigurasi untuk proyek Anda. Template tersebut menggunakan sintaksis deklaratif. Anda menggambarkan penyebaran yang diinginkan tanpa harus menulis urutan perintah pemrograman untuk membuat penyebaran tersebut.

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 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.

Tombol untuk menyebarkan templat Resource Manager ke Azure.

Prasyarat

Jika Anda tidak memiliki langganan Azure, buatlah akun gratis sebelum Anda memulai.

Meninjau templat

Templat yang digunakan dalam quickstart ini berasal dari Azure Quickstart Templates.

Sumber daya ini ditentukan dalam templat:

Definisikan set skala

Untuk membuat skala dengan templat, Anda menentukan sumber daya yang sesuai. Bagian inti dari jenis sumber daya Virtual Machine Scale Set adalah:

Harta benda Deskripsi properti Contoh nilai templat
jenis Jenis sumber daya Azure yang akan dibuat Microsoft.Compute/virtualMachineScaleSets
Nama Nama set skala myScaleSet
lokasi Lokasi untuk membuat himpunan skala US Timur
sku.name Ukuran VM untuk setiap instans set penskalaan Standard_A1
sku.capacity Jumlah instans VM yang akan dibuat awalnya 2
upgradePolicy.mode Mode peningkatan instans VM saat perubahan terjadi Otomatis
imageReference Platform atau gambar kustom yang akan digunakan untuk instans VM Canonical Ubuntu Server 16.04-LTS
osProfile.computerNamePrefix Awalan nama untuk setiap instans VM myvmss
osProfile.namaPenggunaAdmin Nama pengguna untuk setiap instans VM azureuser
osProfile.adminPassword Kata sandi untuk setiap instans VM P@ssw0rd!

Untuk menyesuaikan templat set skala, Anda dapat mengubah ukuran VM atau kapasitas awal. Opsi lain adalah menggunakan platform atau gambar kustom yang berbeda.

Menambahkan aplikasi sampel

Untuk menguji set skala Anda, instal aplikasi web dasar. Saat Anda menyebarkan set skala, ekstensi VM dapat menyediakan konfigurasi pasca-penyebaran dan tugas otomatisasi, seperti menginstal aplikasi. Skrip dapat diunduh dari penyimpanan Azure atau GitHub, atau disediakan ke portal Azure pada saat run-time ekstensi. Untuk menerapkan ekstensi ke set skala, Anda menambahkan bagian extensionProfile ke contoh sumber daya sebelumnya. Profil ekstensi biasanya mendefinisikan properti berikut:

  • Jenis ekstensi
  • Penerbit ekstensi
  • Versi ekstensi
  • Lokasi konfigurasi atau skrip penginstalan
  • Perintah untuk dijalankan pada instans VM

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-file ini diunduh dari GitHub, lalu commandToExecute berjalan bash installserver.sh untuk menginstal dan mengonfigurasi aplikasi.

Menyebarkan templat

Anda dapat menyebarkan templat dengan memilih tombol Sebarkan ke Azure berikut ini. Tombol ini membuka portal Microsoft Azure, memuat templat lengkap, dan meminta beberapa parameter seperti nama set skala, jumlah instans, dan kredensial admin.

Tombol untuk menyebarkan templat Resource Manager ke Azure.

Anda juga dapat 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 prompt untuk memberikan nama kumpulan skala, jumlah instans, dan kredensial admin untuk instans mesin virtual. Dibutuhkan beberapa menit agar set skala dan sumber daya pendukung dibuat.

Validasikan penggelaran

Untuk melihat set skala Anda dalam tindakan, akses sampel aplikasi web di browser web. Dapatkan alamat IP publik load balancer dengan az network public-ip list sebagai berikut:

az network public-ip list \
    --resource-group myResourceGroup \
    --query [*].ipAddress -o tsv

Masukkan alamat IP publik load balancer ke browser web dalam format http://publicIpAddress:9000/do_work. Load balancer mendistribusikan lalu lintas ke salah satu instans VM Anda, seperti yang ditunjukkan dalam contoh berikut:

Halaman web default di NGINX

Membersihkan sumber daya

Jika tidak lagi diperlukan, Anda dapat menggunakan az group delete untuk menghapus grup sumber daya, set skala, dan semua sumber daya terkait sebagai berikut. Parameter --no-wait mengembalikan kontrol ke permintaan tanpa menunggu operasi selesai. Parameter --yes mengonfirmasi bahwa Anda ingin menghapus sumber daya tanpa perintah tambahan untuk melakukannya.

az group delete --name myResourceGroup --yes --no-wait

Langkah selanjutnya

Dalam panduan cepat ini, Anda membuat setelan 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.