Perlindungan Instans untuk instans Azure Virtual Machine Scale Set

Catatan

Sebaiknya gunakan Orkestrasi Fleksibel untuk beban kerja baru. Untuk informasi selengkapnya, lihat Mode orkesrasi untuk Virtual Machine Scale Sets di Azure.

Azure Virtual Machine Scale Sets memungkinkan elastisitas yang lebih baik untuk beban kerja Anda melalui Autoscale, sehingga Anda dapat mengonfigurasi saat infrastruktur Anda diskalakan dan saat diskalakan. Rangkaian skala juga memungkinkan Anda mengelola, mengonfigurasi, dan memperbarui VM dalam jumlah besar secara terpusat melalui berbagai pengaturan kebijakan peningkatan. Anda dapat mengonfigurasi pembaruan pada model set skala dan konfigurasi baru diterapkan secara otomatis ke setiap instans set skala jika Anda telah mengatur kebijakan peningkatan ke Otomatis atau Bergulir.

Saat aplikasi Anda memproses lalu lintas, mungkin ada situasi di mana Anda menginginkan instans tertentu diperlakukan secara berbeda dari instans set skala lainnya. Misalnya, instans tertentu dalam set skala dapat melakukan operasi jangka panjang, dan Anda tidak menginginkan instans ini diskalakan masuk hingga operasi selesai. Anda mungkin juga telah mengkhususkan beberapa instans dalam set skala untuk melakukan tugas tambahan atau berbeda dari anggota set skala lainnya. Anda memerlukan VM 'khusus' ini untuk tidak dimodifikasi dengan instans lain dalam set skala. Perlindungan instans menyediakan kontrol tambahan untuk mengaktifkannya dan skenario lain untuk aplikasi Anda.

Artikel ini menjelaskan cara Anda dapat menerapkan dan menggunakan kemampuan perlindungan instans yang berbeda dengan instans set skala.

Jenis perlindungan instans

Set skala menyediakan dua jenis kemampuan perlindungan instans:

  • Perlindugan dari skala masuk

    • Diaktifkan melalui properti protectFromScaleIn pada instans set skala
    • Melindungi instans dari skala masuk yang diinisiasi Skala otomatis
    • Operasi instans yang diinisiasi pengguna (termasuk penghapusan instans) tidak diblokir
    • Operasi yang diinisiasi pada set skala (peningkatan, pelepasan, pembatalan alokasi, dll.) tidak diblokir
  • Perlindungan dari tindakan set skala

    • Diaktifkan melalui properti protectFromScaleSetActions di instans set skala
    • Melindungi instans dari skala masuk yang diinisiasi Skala otomatis
    • Melindungi instance dari operasi yang diinisisi pada set skala (seperti peningkatan, pelepasan, pembatalan alokasi, dll.)
    • Operasi instans yang diinisiasi pengguna (termasuk penghapusan instans) tidak diblokir
    • Penghapusan set skala penuh tidak diblokir

Perlindugan dari skala masuk

Perlindungan instans dapat diterapkan ke instans set skala setelah instans dibuat. Perlindungan hanya diterapkan dan diubah di model instans, bukan di model set skala.

Ada beberapa cara untuk menerapkan perlindungan skala masuk pada instans set skala seperti yang dijelaskan dalam contoh di bawah ini.

Portal Azure

Anda dapat menerapkan perlindungan penskalaan melalui portal Azure ke instans dalam set skala. Anda tidak dapat menyesuaikan lebih dari satu instans secara bersamaan. Ulangi langkah-langkah untuk setiap instans yang ingin dilindungi.

  1. Buka Set Skala Komputer Virtual yang ada.
  2. Pilih Instans dari meni di sebelah kiri, pada bagian Pengaturan.
  3. Pilih nama instans yang ingin dilindungi.
  4. Pilih tab Kebijakan Perlindungan.
  5. Di bilah Kebijakan Perlindungan, pilih opsi Lindungi dari skala masuk.
  6. Pilih Simpan.

REST API

Contoh berikut menerapkan perlindungan skala masuk ke instans dalam set skala.

PUT on `/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instance-id}?api-version=2019-03-01`
{
  "properties": {
    "protectionPolicy": {
      "protectFromScaleIn": true
    }
  }        
}

Catatan

Dengan mode orkestrasi Fleksibel, perlindungan instans hanya didukung dengan API versi 2023-09-01 ke atas. Untuk mode orkestrasi Seragam, perlindungan instans tersedia dengan API versi 2019-03-01 ke atas.

Azure PowerShell

Gunakan cmdlet Update-AzVmssVM untuk menerapkan perlindungan skala masuk ke instans set skala Anda.

Contoh berikut menerapkan perlindungan skala masuk ke instans dalam set skala yang memiliki ID instans 0.

Update-AzVmssVM `
  -ResourceGroupName "myResourceGroup" `
  -VMScaleSetName "myVMScaleSet" `
  -InstanceId 0 `
  -ProtectFromScaleIn $true

Azure CLI 2.0

Gunakan az vmss update untuk menerapkan perlindungan skala masuk ke instans set skala Anda.

Contoh berikut menerapkan perlindungan skala masuk ke instans dalam set skala yang memiliki ID instans 0.

az vmss update \  
  --resource-group <myResourceGroup> \
  --name <myVMScaleSet> \
  --instance-id 0 \
  --protect-from-scale-in true

Perlindungan dari tindakan set skala

Perlindungan instans dapat diterapkan ke instans set skala setelah instans dibuat. Perlindungan hanya diterapkan dan diubah di model instans, bukan di model set skala.

Melindungi instans dari tindakan set skala juga melindungi instans dari skala masuk yang diinisiasi Skala otomatis.

Ada beberapa cara untuk menerapkan perlindungan skala masuk pada instans set skala seperti yang dijelaskan dalam contoh di bawah ini.

Portal Azure

Anda dapat menerapkan perlindungan dari tindakan set skala melalui portal Azure ke instans dalam set skala. Anda tidak dapat menyesuaikan lebih dari satu instans secara bersamaan. Ulangi langkah-langkah untuk setiap instans yang ingin dilindungi.

  1. Buka Set Skala Komputer Virtual yang ada.
  2. Pilih Instans dari meni di sebelah kiri, pada bagian Pengaturan.
  3. Pilih nama instans yang ingin dilindungi.
  4. Pilih tab Kebijakan Perlindungan.
  5. Di bilah Kebijakan Perlindungan, pilih opsi Lindungi dari skala masuk.
  6. Pilih Simpan.

REST API

Contoh berikut menerapkan perlindungan dari tindakan set skala ke instans dalam set skala.

PUT on `/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vMScaleSetName}/virtualMachines/{instance-id}?api-version=2019-03-01`
{
  "properties": {
    "protectionPolicy": {
      "protectFromScaleIn": true,
      "protectFromScaleSetActions": true
    }
  }        
}

Catatan

Perlindungan instans hanya didukung dengan API versi 2019-03-01 dan yang lebih baru.
Melindungi instans dari tindakan set skala juga melindungi instans dari penyempitan skala yang diinisiasi Penskalaan otomatis. Anda dapat menentukan "protectFromScaleIn": false saat mengatur "protectFromScaleSetActions": true

Azure PowerShell

Gunakan cmdlet Update-AzVmssVM untuk menerapkan perlindungan dari tindakan set skala ke instans set skala Anda.

Contoh berikut menerapkan perlindungan dari tindakan set skala ke instans dalam set skala yang memiliki ID instans 0.

Update-AzVmssVM `
  -ResourceGroupName "myResourceGroup" `
  -VMScaleSetName "myVMScaleSet" `
  -InstanceId 0 `
  -ProtectFromScaleIn $true `
  -ProtectFromScaleSetAction $true

Azure CLI 2.0

Gunakan az vmss update untuk menerapkan perlindungan dari tindakan set skala ke instans set skala Anda.

Contoh berikut menerapkan perlindungan dari tindakan set skala ke instans dalam set skala yang memiliki ID instans 0.

az vmss update \  
  --resource-group <myResourceGroup> \
  --name <myVMScaleSet> \
  --instance-id 0 \
  --protect-from-scale-in true \
  --protect-from-scale-set-actions true

Pemecahan masalah

Tidak ada protectionPolicy di model set skala

Perlindungan instans hanya diterapkan pada instans set skala, bukan pada model set skala.

Tidak ada protectionPolicy di model instans set skala

Secara default, kebijakan perlindungan tidak diterapkan ke instans saat dibuat.

Anda dapat menerapkan perlindungan instans ke instans set skala setelah instans dibuat.

Tidak dapat menerapkan perlindungan instans

Perlindungan instans hanya didukung dengan API versi 2019-03-01 dan yang lebih baru. Periksa versi API yang digunakan dan perbarui sesuai kebutuhan. Anda mungkin juga perlu memperbarui PowerShell atau CLI ke versi terbaru.

Langkah berikutnya

Pelajari cara menyebarkan aplikasi Anda di Virtual Machine Scale Sets.