Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Untuk menjalankan aplikasi pada instans komputer virtual (VM) dalam set skala, Pertama-tama Anda perlu menginstal komponen aplikasi dan file yang diperlukan. Dalam tutorial sebelumnya, Anda mempelajari cara membuat dan menggunakan gambar VM kustom untuk menyebarkan instans VM Anda. Gambar kustom ini mencakup penginstalan dan konfigurasi aplikasi manual. Anda juga dapat mengotomatisasi instalasi aplikasi pada kumpulan skala setelah setiap kali instance VM diterapkan, atau memperbarui aplikasi yang sudah berjalan di kumpulan skala. Dalam tutorial ini, Anda akan mempelajari cara:
- Menginstal aplikasi secara otomatis ke set skala Anda
- Menggunakan Ekstensi Skrip Kustom Azure
- Memperbarui aplikasi yang sedang berjalan pada set skala
Jika Anda tidak memiliki akun Azure, buat akun gratis sebelum memulai.
Prasyarat
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai menggunakan 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 az login. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Mengautentikasi ke Azure menggunakan Azure CLI.
Saat diminta, instal ekstensi Azure CLI saat pertama kali digunakan. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan dan mengelola ekstensi dengan Azure CLI.
Jalankan az version untuk menemukan versi dan pustaka dependen yang terinstal. Untuk meng-upgrade ke versi terbaru, jalankan az upgrade.
- Artikel ini memerlukan Azure CLI versi 2.0.29 atau yang lebih baru. Jika menggunakan Azure Cloud Shell, versi terbaru sudah terinstal.
Apa itu Ekstensi Skrip Kustom Azure?
Ekstensi Skrip Kustom mengunduh dan menjalankan skrip di Azure VM. Ekstensi ini berguna untuk konfigurasi pasca penyebaran, penginstalan perangkat lunak, atau tugas konfigurasi/manajemen lainnya. Skrip dapat diunduh dari penyimpanan Azure atau GitHub, atau disediakan ke portal Azure pada saat run-time ekstensi.
Ekstensi Skrip Kustom terintegrasi dengan templat Azure Resource Manager, dan juga dapat digunakan dengan Azure CLI, Azure PowerShell, portal Microsoft Azure, atau REST API. Untuk informasi selengkapnya, lihat Gambaran umum Ekstensi Skrip Kustom.
Untuk menggunakan Ekstensi Skrip Kustom dengan Azure CLI, Anda membuat file JSON yang menentukan file apa yang akan diperoleh dan perintah untuk dijalankan. Definisi JSON ini dapat digunakan kembali di seluruh penyebaran set skala untuk menerapkan penginstalan aplikasi yang konsisten.
Membuat definisi Ekstensi Skrip Kustom
Untuk melihat Ekstensi Skrip Kustom beraksi, ayo buat skala kelompok yang menginstal server web NGINX dan menampilkan nama host instans VM dalam skala kelompok. Definisi Ekstensi Skrip Kustom berikut mengunduh contoh skrip dari GitHub, menginstal paket yang diperlukan, lalu menulis nama host instans VM ke halaman HTML dasar.
Di shell Anda saat ini, buat file bernama customConfig.json dan tempelkan konfigurasi berikut. Misalnya, buat file di Cloud Shell bukan di komputer lokal Anda. Anda dapat menggunakan editor apa pun yang Anda inginkan. Dalam tutorial ini kita akan menggunakan Vi. Masukkanvi di Cloud Shell. Tempelkan JSON di bawah ini ke editor dan ketik :w customConfig.json.
{
"fileUris": ["https://raw.githubusercontent.com/Azure-Samples/compute-automation-configurations/master/automate_nginx.sh"],
"commandToExecute": './automate_nginx.sh'
}
Nota
Anda mungkin perlu membalikkan penggunaan tanda kutip tunggal (') dan ganda (") dalam blok JSON jika Anda memutuskan untuk mereferensikan JSON secara langsung (alih-alih mereferensikan file customConfig.json ) dalam parameter --settings di bawah ini.
Membuat rangkaian skala
Penting
Mulai November 2023, set skala VM yang dibuat menggunakan PowerShell dan Azure CLI akan default ke Mode Orkestrasi Fleksibel jika tidak ada mode orkestrasi yang ditentukan. Untuk informasi selengkapnya tentang perubahan ini dan tindakan apa yang harus Anda ambil, buka Perubahan Krusial untuk Pelanggan VMSS PowerShell/CLI - Microsoft Community Hub
Buat grup sumber daya dengan az group create. Contoh berikut membuat grup sumber daya bernama myResourceGroup di lokasi eastus :
az group create --name myResourceGroup --location eastus
Sekarang buat Virtual Machine Scale Set dengan az vmss create. Contoh berikut membuat set skala bernama myScaleSet, dan menghasilkan kunci SSH jika tidak ada:
az vmss create \
--resource-group myResourceGroup \
--name myScaleSet \
--image Ubuntu2204 \
--orchestration-mode Flexible \
--admin-username azureuser \
--generate-ssh-keys
Dibutuhkan beberapa menit untuk membuat dan mengonfigurasi semua sumber daya dan mesin virtual skala set.
Menerapkan Ekstensi Skrip Kustom
Terapkan konfigurasi Ekstensi Skrip Kustom ke instans VM dalam set skala Anda dengan perintah az vmss extension set. Contoh berikut menerapkan konfigurasi customConfig.json ke instans komputer virtual myScaleSet di grup sumber daya bernama myResourceGroup:
az vmss extension set \
--publisher Microsoft.Azure.Extensions \
--version 2.0 \
--name CustomScript \
--resource-group myResourceGroup \
--vmss-name myScaleSet \
--settings customConfig.json
Perhatian
Nama file sensitif terhadap huruf besar/kecil. Gunakan nama file yang tepat yang dinyatakan dalam instruksi ini untuk menghindari kegagalan.
Menerapkan ekstensi ke instans set skala yang ada
Perbarui semua instance untuk menerapkan skrip kustom. Peningkatan mungkin memakan waktu beberapa menit.
az vmss update-instances --resource-group myResourceGroup --name myScaleSet --instance-ids "*"
Izinkan lalu lintas ke port 80
Untuk memungkinkan lalu lintas mengalir melalui load balancer ke komputer virtual, kelompok keamanan jaringan default perlu diperbarui.
az network nsg rule create --name AllowHTTP --resource-group myResourceGroup --nsg-name myScaleSetNSG --access Allow --priority 1010 --destination-port-ranges 80
Menguji set skala Anda
Untuk melihat server web Anda beraksi, dapatkan alamat IP publik load balancer Anda dengan az network public-ip show. Contoh berikut mendapatkan alamat IP untuk myScaleSetLBPublicIP yang dibuat sebagai bagian dari set skala:
az network public-ip show \
--resource-group myResourceGroup \
--name myScaleSetLBPublicIP \
--query [ipAddress] \
--output tsv
Masukkan alamat IP publik load balancer ke dalam browser web Anda. Load balancer mendistribusikan lalu lintas ke salah satu instans VM Anda, seperti yang ditunjukkan dalam contoh berikut:
Biarkan browser web terbuka sehingga Anda dapat melihat versi yang diperbarui di langkah berikutnya.
Mengubah kebijakan pemutakhiran
Di bagian sebelumnya, untuk menerapkan aplikasi yang diperbarui ke semua instans set skala, diperlukan peningkatan manual. Untuk menerapkan pembaruan secara otomatis ke semua instans set skala yang ada, ubah kebijakan peningkatan dari manual menjadi otomatis. Untuk informasi selengkapnya tentang kebijakan peningkatan, lihat Kebijakan peningkatan untuk Virtual Machine Scale Sets.
az vmss update \
--name myScaleSet \
--resource-group myResourceGroup \
--set upgradePolicy.mode=automatic
Memperbarui penyebaran aplikasi
Di shell Anda saat ini, buat file bernama customConfigv2.json dan tempelkan konfigurasi berikut. Definisi ini menjalankan versi v2 yang diperbarui dari skrip penginstalan aplikasi:
{
"fileUris": ["https://raw.githubusercontent.com/Azure-Samples/compute-automation-configurations/master/automate_nginx_v2.sh"],
"commandToExecute": "./automate_nginx_v2.sh"
}
Terapkan konfigurasi Ekstensi Skrip Kustom ke skala set Anda lagi dengan az vmss extension set. customConfigv2.json digunakan untuk menerapkan versi aplikasi yang diperbarui:
az vmss extension set \
--publisher Microsoft.Azure.Extensions \
--version 2.0 \
--name CustomScript \
--resource-group myResourceGroup \
--vmss-name myScaleSet \
--settings @customConfigv2.json
Karena set skala sekarang menggunakan kebijakan peningkatan otomatis, aplikasi yang diperbarui akan secara otomatis diterapkan ke instans set skala yang ada. Refresh browser web Anda untuk melihat aplikasi yang diperbarui.
Membersihkan sumber daya
Untuk menghapus set skala dan sumber daya tambahan Anda, hapus grup sumber daya dan semua sumber dayanya dengan az group delete. 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 --no-wait --yes
Langkah selanjutnya
Dalam tutorial ini, Anda mempelajari cara menginstal dan memperbarui aplikasi secara otomatis pada set skala Anda dengan Azure CLI:
- Menginstal aplikasi secara otomatis ke set skala Anda
- Menggunakan Ekstensi Skrip Kustom Azure
- Memperbarui aplikasi yang sedang berjalan pada set skala
Lanjutkan ke tutorial berikutnya untuk mempelajari cara menskalakan set skala Anda secara otomatis.