Tutorial: Membuat dan mengelola Virtual Machine Scale Set dengan Azure CLI

Virtual Machine Scale Set memungkinkan Anda untuk menyebarkan dan mengelola sekumpulan komputer virtual. Sepanjang siklus hidup Set Skala Komputer Virtual, Anda mungkin perlu menjalankan satu atau beberapa tugas manajemen. Dalam tutorial ini, Anda akan mempelajari cara:

  • Buat grup sumber daya
  • Membuat Set Skala Komputer Virtual
  • Peluasan skala dan masuk
  • Menghentikan, Memulai, dan memulai ulang instans VM

Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.

Prasyarat

Artikel ini memerlukan antarmuka tingkat panggilan Azure versi 2.0.29 atau yang lebih baru. Jika menggunakan Azure Cloud Shell, versi terbaru sudah terinstal.

Buat grup sumber daya

Grup sumber daya Azure adalah kontainer logis tempat sumber daya Azure disebarkan dan dikelola. Grup sumber daya harus dibuat sebelum Set Skala Komputer Virtual. Buat grup sumber daya dengan perintah az group create. Dalam contoh ini, grup sumber daya bernama myResourceGroup dibuat di wilayah eastus.

az group create --name myResourceGroup --location eastus

Nama grup sumber daya ditentukan ketika Anda membuat atau memodifikasi set skala dalam tutorial ini.

Membuat 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

Anda membuat Virtual Machine Scale Set dengan perintah 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 \
  --orchestration-mode flexible \
  --image <SKU image> \
  --admin-username azureuser \
  --generate-ssh-keys

Perlu waktu beberapa menit untuk membuat dan mengonfigurasi semua sumber daya set skala dan instans komputer virtual. Untuk mendistribusikan lalu lintas ke instans komputer virtual individual, load balancer juga dibuat.

Melihat informasi tentang instans VM di set skala Anda

Untuk melihat daftar instans VM dalam set skala, gunakan az vm list sebagai berikut:

az vm list --resource-group myResourceGroup --output table

Contoh output berikut menunjukkan dua instans komputer virtual dalam set skala:

Name                 ResourceGroup    Location    Zones
-------------------  ---------------  ----------  -------
myScaleSet_instance1  myResourceGroup  eastus
myScaleSet_instance2  myResourceGroup  eastus

Untuk melihat informasi tambahan tentang instans VM tertentu, gunakan az vm show dan tentukan nama VM.

az vm show --resource-group myResourceGroup --name myScaleSet_instance1
{
  "hardwareProfile": {
    "vmSize": "Standard_DS1_v2",
  },
  "id": "/subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myScaleSet_instance1",
  "location": "eastus",
  "name": "myScaleSet_instance1",
  "networkProfile": {
    "networkInterfaces": [
      {
        "deleteOption": "Delete",
        "id": "/subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/mysca2215Nic-0396c71c",
        "primary": true,
        "resourceGroup": "myResourceGroup"
      }
    ]
  },
  "osProfile": {
    "adminUsername": "azureuser",
    "allowExtensionOperations": true,
    "computerName": "myScaleSN30BP1",
    "linuxConfiguration": {
      "disablePasswordAuthentication": true,
      "enableVmAgentPlatformUpdates": false,
      "patchSettings": {
        "assessmentMode": "ImageDefault",
        "patchMode": "ImageDefault"
      },
      "provisionVmAgent": true,
      "ssh": {
        "publicKeys": [
          {
            "keyData": "ssh-rsa",
            "path": "/home/azureuser/.ssh/authorized_keys"
          }
        ]
      }
    },
    "requireGuestProvisionSignal": true,
    "secrets": [],
  },
  "provisioningState": "Succeeded",
  "resourceGroup": "myResourceGroup",
  "storageProfile": {
    "dataDisks": [],
    "imageReference": {
      "exactVersion": "XXXXX",
      "offer": "myOffer",
      "publisher": "myPublisher",
      "sku": "mySKU",
      "version": "latest"
    },
    "osDisk": {
      "caching": "ReadWrite",
      "createOption": "FromImage",
      "deleteOption": "Delete",
      "diskSizeGb": 30,
      "managedDisk": {
        "id": "/subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myScaleSet_instance1_disk1",
        "resourceGroup": "myResourceGroup",
        "storageAccountType": "Premium_LRS"
      },
      "name": "myScaleSet_instance1_disk1",
      "osType": "Linux",
    }
  },
  "tags": {},
  "timeCreated": "2022-11-16T20:32:15.024581+00:00",
  "type": "Microsoft.Compute/virtualMachines",
  "virtualMachineScaleSet": {
    "id": "/subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myScaleSet",
    "resourceGroup": "myResourceGroup"
  },
}

Membuat set skala dengan ukuran instans komputer virtual tertentu

Ketika Anda membuat set skala di awal tutorial, SKU komputer virtual default Standard_D1_v2 disediakan untuk instans komputer virtual. Anda dapat menentukan ukuran instans komputer virtual yang berbeda berdasarkan output dari az vm list-sizes. Contoh berikut akan membuat set skala dengan parameter --vm-sku untuk menentukan ukuran instans VM Standard_F1. Karena diperlukan beberapa menit untuk membuat dan mengonfigurasi semua instans komputer virtual dan sumber daya set skala, Anda tidak perlu menerapkan set skala berikut:

az vmss create \
  --resource-group myResourceGroup \
  --name myScaleSet \
  --orchestration-mode flexible \
  --image <SKU image> \
  --vm-sku Standard_F1 \
  --admin-user azureuser \
  --generate-ssh-keys

Mengubah kapasitas set skala

Ketika Anda membuat set skala di awal tutorial, dua instans komputer virtual diterapkan secara default. Anda dapat menentukan parameter --instance-count dengan az vmss create untuk mengubah jumlah instans yang dibuat dengan set skala. Untuk menambah atau mengurangi jumlah instans komputer virtual dalam set skala yang ada, Anda dapat mengubah kapasitas secara manual. Set skala membuat atau menghapus jumlah instans VM yang diperlukan, lalu mengonfigurasi load balancer untuk mendistribusikan lalu lintas.

Untuk meningkatkan atau mengurangi jumlah instans komputer virtual secara manual dalam set skala, gunakan az vmss scale. Contoh berikut menetapkan jumlah instans komputer virtual dalam skala Anda yang diatur ke 3:

az vmss scale \
  --resource-group myResourceGroup \
  --name myScaleSet \
  --new-capacity 3

Diperlukan beberapa menit untuk memperbarui kapasitas set skala Anda. Untuk melihat jumlah instans yang sekarang Anda miliki dalam set skala, gunakan daftar az vm dan kueri pada grup sumber daya terkait.

az vm list --resource-group myResourceGroup --output table
Name                 ResourceGroup    Location    Zones
-------------------  ---------------  ----------  -------
myScaleSet_instance1  myResourceGroup  eastus
myScaleSet_instance2  myResourceGroup  eastus
myScaleSet_instance3  myResourceGroup  eastus

Menghentikan dan membatalkan alokasi instans komputer virtual dalam set skala

Untuk menghentikan semua instans VM dalam set skala, gunakan az vmss stop.

az vmss stop \
  --resource-group myResourceGroup \
  --name myScaleSet

Untuk menghentikan instans VM individual dalam set skala, gunakan az vm stop dan tentukan nama instans.

az vm stop \
  --resource-group myResourceGroup \
  --name myScaleSet_instance1

Instans komputer virtual yang dihentikan tetap dialokasikan dan terus dikenakan biaya komputasi. Jika Anda ingin instans VM dibatalkan alokasinya dan hanya dikenakan biaya penyimpanan, gunakan az vm deallocate dan tentukan nama instans yang ingin Anda batalkan alokasinya .

az vm deallocate \
  --resource-group myResourceGroup \
  --name myScaleSet_instance1

Memulai instans VM dalam set skala

Untuk memulai semua instans VM dalam set skala, gunakan az vmss start.

az vmss start \
  --resource-group myResourceGroup \
  --name myScaleSet

Untuk memulai instans VM individual dalam set skala, gunakan az vm start dan tentukan nama instans.

az vm start \
  --resource-group myResourceGroup \
  --name myScaleSet_instance1

Menghidupkan ulang instans VM dalam set skala

Untuk menghidupkan ulang semua instans VM dalam set skala, gunakan az vmss restart.

az vmss restart \
  --resource-group myResourceGroup \
  --name myScaleSet

Untuk memulai ulang instans VM individual dalam set skala, gunakan az vm restart dan tentukan nama instans.

az vm restart \
  --resource-group myResourceGroup \
  --name myScaleSet_instance1

Membersihkan sumber daya

Saat Anda menghapus grup sumber daya, semua sumber daya yang ada di dalamnya, seperti instans VM, jaringan virtual, dan disk, juga akan dihapus. 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 berikutnya

Dalam tutorial ini, Anda telah mempelajari cara menjalankan tugas pembuatan set skala dasar dan manajemen dengan Azure CLI:

  • Buat grup sumber daya
  • Membuat set skala
  • Melihat dan menggunakan ukuran VM tertentu
  • Menskalakan set skala secara manual
  • Lakukan tugas manajemen set skala umum seperti menghentikan, memulai, dan memulai ulang set skala Anda

Lanjutkan ke tutorial berikutnya untuk mempelajari cara menyambungkan ke instans set skala Anda.