Mulai Cepat: Membuat Set Skala Komputer Virtual dengan Azure PowerShell

Berlaku untuk: ✔️ VM Linux ✔️ VM Windows ✔️ 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.

Virtual Machine Scale Set memungkinkan Anda untuk 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 Azure PowerShell.

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

Azure Cloud Shell

Azure meng-hosting Azure Cloud Shell, lingkungan shell interaktif yang dapat Anda gunakan melalui browser. Anda dapat menggunakan Bash atau PowerShell dengan Cloud Shell untuk bekerja dengan layanan Azure. Anda dapat menggunakan perintah Cloud Shell yang telah diinstal sebelumnya untuk menjalankan kode dalam artikel ini tanpa harus menginstal apa-apa di lingkungan lokal Anda.

Untuk memulai Azure Cloud Shell:

Opsi Contoh/Tautan
Pilih Coba di pojok kanan atas blok kode atau perintah. Memilih Coba tidak otomatis menyalin kode atau perintah ke Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Buka https://shell.azure.com, atau pilih tombol Luncurkan Cloud Shell untuk membuka Cloud Shell di browser Anda. Button to launch Azure Cloud Shell.
Pilih tombol Cloud Shell pada bilah menu di kanan atas di portal Microsoft Azure. Screenshot that shows the Cloud Shell button in the Azure portal

Untuk menggunakan Azure Cloud Shell:

  1. Mulai Cloud Shell.

  2. Pilih tombol Salin pada blok kode (atau blok perintah) untuk menyalin kode atau perintah.

  3. Tempel kode atau perintah ke dalam sesi Cloud Shell dengan memilih Ctrl+Shift+V di Windows dan Linux, atau dengan memilih Cmd+Shift+V di macOS.

  4. Pilih Masukkan untuk menjalankan kode atau perintah.

Membuat set skala

Sebelum Anda membuat set skala, buat grup sumber daya dengan New-AzResourceGroup terlebih dahulu. Contoh berikut ini menampilkan cara membuat grup sumber daya bernama myResourceGroup di lokasi eastus:

New-AzResourceGroup -ResourceGroupName "myResourceGroup" -Location "EastUS"

Sekarang buat Virtual Machine Scale Set dengan New-AzVmss. Contoh berikut ini menampilkan cara membuat set skala dengan nama myScaleSet yang menggunakan gambar platform Windows Server 2016 Datacenter. Sumber daya jaringan Azure untuk jaringan virtual, alamat IP publik, dan penyeimbang muatan akan dibuat secara otomatis. Saat diminta, berikan kredensial administratif yang Anda inginkan untuk instans komputer virtual di dalam set 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 Melanggar Perubahan untuk Pelanggan VMSS PowerShell/CLI - Microsoft Community Hub

New-AzVmss `
  -ResourceGroupName "myResourceGroup" `
  -Location "EastUS" `
  -VMScaleSetName "myScaleSet" `
  -VirtualNetworkName "myVnet" `
  -SubnetName "mySubnet" `
  -PublicIpAddressName "myPublicIPAddress" `
  -LoadBalancerName "myLoadBalancer" `
  -OrchestrationMode 'Uniform' `
  -UpgradePolicyMode "Automatic"

Dibutuhkan beberapa menit untuk membuat dan mengonfigurasi semua sumber daya dan komputer virtual set skala.

Sebarkan aplikasi sampel

Untuk menguji set skala Anda, instal aplikasi web dasar. Azure Custom Script Extension digunakan untuk mengunduh dan menjalankan skrip yang menginstal IIS(Internet Information Services/Layanan Informasi Internet) pada instans komputer virtual. Ekstensi ini berguna untuk konfigurasi pasca penyebaran, penginstalan perangkat lunak, atau tugas konfigurasi/manajemen lainnya. Untuk informasi selengkapnya, lihat Gambaran Umum Ekstensi Skrip Kustom.

Gunakan Ekstensi Skrip Kustom untuk menginstal server web IIS dasar. Terapkan Ekstensi Skrip Kustom yang menginstal IIS dengan langkah berikut:

# Define the script for your Custom Script Extension to run
$publicSettings = @{
    "fileUris" = (,"https://raw.githubusercontent.com/Azure-Samples/compute-automation-configurations/master/automate-iis.ps1");
    "commandToExecute" = "powershell -ExecutionPolicy Unrestricted -File automate-iis.ps1"
}

# Get information about the scale set
$vmss = Get-AzVmss `
            -ResourceGroupName "myResourceGroup" `
            -VMScaleSetName "myScaleSet"

# Use Custom Script Extension to install IIS and configure basic website
Add-AzVmssExtension -VirtualMachineScaleSet $vmss `
    -Name "customScript" `
    -Publisher "Microsoft.Compute" `
    -Type "CustomScriptExtension" `
    -TypeHandlerVersion 1.8 `
    -Setting $publicSettings

# Update the scale set and apply the Custom Script Extension to the VM instances
Update-AzVmss `
    -ResourceGroupName "myResourceGroup" `
    -Name "myScaleSet" `
    -VirtualMachineScaleSet $vmss

Mengizinkan lalu lintas ke aplikasi

Untuk mengizinkan akses ke aplikasi web dasar, buat grup keamanan jaringan dengan New-AzNetworkSecurityRuleConfig dan New-AzNetworkSecurityGroup. Untuk informasi selengkapnya, lihat Jaringan untuk Set Skala Komputer Virtual Azure.

# Get information about the scale set
$vmss = Get-AzVmss `
            -ResourceGroupName "myResourceGroup" `
            -VMScaleSetName "myScaleSet"

#Create a rule to allow traffic over port 80
$nsgFrontendRule = New-AzNetworkSecurityRuleConfig `
  -Name myFrontendNSGRule `
  -Protocol Tcp `
  -Direction Inbound `
  -Priority 200 `
  -SourceAddressPrefix * `
  -SourcePortRange * `
  -DestinationAddressPrefix * `
  -DestinationPortRange 80 `
  -Access Allow

#Create a network security group and associate it with the rule
$nsgFrontend = New-AzNetworkSecurityGroup `
  -ResourceGroupName  "myResourceGroup" `
  -Location EastUS `
  -Name myFrontendNSG `
  -SecurityRules $nsgFrontendRule

$vnet = Get-AzVirtualNetwork `
  -ResourceGroupName  "myResourceGroup" `
  -Name myVnet

$frontendSubnet = $vnet.Subnets[0]

$frontendSubnetConfig = Set-AzVirtualNetworkSubnetConfig `
  -VirtualNetwork $vnet `
  -Name mySubnet `
  -AddressPrefix $frontendSubnet.AddressPrefix `
  -NetworkSecurityGroup $nsgFrontend

Set-AzVirtualNetwork -VirtualNetwork $vnet

# Update the scale set and apply the Custom Script Extension to the VM instances
Update-AzVmss `
    -ResourceGroupName "myResourceGroup" `
    -Name "myScaleSet" `
    -VirtualMachineScaleSet $vmss

Menguji set skala Anda

Untuk melihat set skala Anda berfungsi, akses aplikasi web sampel di browser web. Dapatkan alamat IP publik penyeimbang muatan Anda dengan Get-AzPublicIpAddress. Contoh berikut menampilkan alamat IP yang dibuat di grup sumber daya myResourceGroup:

Get-AzPublicIpAddress -ResourceGroupName "myResourceGroup" | Select IpAddress

Masukkan alamat IP publik penyeimbang beban ke browser web. Penyeimbang muatan mendistribusikan lalu lintas ke salah satu instans komputer virtual Anda, seperti yang ditunjukkan oleh contoh berikut:

Running IIS site

Membersihkan sumber daya

Jika tidak diperlukan lagi, Anda dapat menggunakan Remove-AzResourceGroup untuk menghapus grup sumber daya, set skala, dan semua sumber daya terkait seperti yang disebutkan berikut ini. Parameter -Force mengonfirmasi bahwa Anda ingin menghapus sumber daya tanpa permintaan tambahan untuk melakukannya. Parameter -AsJob mengembalikan kontrol ke permintaan tanpa menunggu operasi selesai.

Remove-AzResourceGroup -Name "myResourceGroup" -Force -AsJob

Langkah berikutnya

Di tutorial mulai cepat ini, Anda membuat set skala dasar dan menggunakan Ekstensi Skrip Kustom untuk menginstal server web IIS dasar pada instans komputer virtual. Untuk mempelajari lebih lanjut, lanjutkan ke tutorial tentang cara membuat dan mengelola Azure Virtual Machine Scale Sets.