Tanya Jawab Umum untuk Azure Virtual Machine Scale Sets

Dapatkan jawaban atas tanya jawab umum tentang Virtual Machine Scale Sets di Azure.

Tanya jawab umum teratas untuk set skala

Berapa biaya untuk menggunakan Virtual Machine Scale Sets?

Anda membayar sumber daya dasar yang digunakan oleh set skala Anda, seperti komputer virtual, penyimpanan, dan sumber daya jaringan. Tidak ada biaya tambahan untuk pengaturan skala sendiri.

Berapa banyak VM yang dapat saya miliki dalam satu set skala?

Kumpulan skala dapat berkisar antara 0 hingga 1.000 mesin virtual (VM) berdasarkan gambar platform, atau berkisar antara 0 hingga 600 berdasarkan gambar kustom.

Apakah disk data didukung dalam set skala?

Ya. Kumpulan skala dapat menentukan konfigurasi disk data terlampir yang berlaku untuk semua VM dalam kumpulan tersebut. Untuk informasi selengkapnya, lihat Set skala Azure dan disk data terlampir. Opsi lain untuk menyimpan data meliputi:

  • Disk terkelola Azure - Premium v2, Premium, Standar, Ultra
  • Azure Files - Penyimpanan bersama Server Message Block (SMB) atau Network File System (NFS)
  • Azure NetApp Files
  • Disk bersama Azure
  • Sistem operasi drive
  • Drive sementara - lokal, tidak didukung oleh Azure Storage
  • Layanan data Azure - misalnya, Azure Table Storage atau Azure Blob Storage
  • Layanan data eksternal - misalnya, database jarak jauh

Wilayah Azure mana yang mendukung set skala?

Semua wilayah mendukung set skala.

Unit Penyimpanan Stok Mesin Virtual Azure (SKU) mana yang didukung untuk Set Skala Mesin Virtual?

Semua SKU Virtual Machine mendukung Virtual Machine Scale Sets.

Bagaimana cara membuat kumpulan skala menggunakan citra kustom?

Buat dan ambil gambar komputer virtual (VM), lalu gunakan sebagai sumber untuk set skala Anda. Untuk tutorial tentang cara membuat dan menggunakan gambar VM kustom, Anda dapat menggunakan Azure CLI atau Azure PowerShell.

Apa perbedaan antara Peningkatan Gambar OS dan Reimage?

Peningkatan Citra OS adalah proses bertahap dan tanpa gangguan yang memperbarui citra OS untuk seluruh Skala Mesin Virtual seiring waktu, memastikan dampak minimal pada beban kerja yang sedang berjalan.

Reimage adalah tindakan yang lebih langsung dan mengganggu yang hanya memengaruhi instans VM yang dipilih, menghentikannya untuk sementara waktu dan menginstal ulang sistem operasi.

Pelajari selengkapnya tentang perbedaan antara Peningkatan Gambar OS dan Reimage.

Jika saya mengurangi kapasitas set skala saya dari 20 hingga 15, VM mana yang dihapus?

Secara bawaan, pengaturan skala menghapus VM secara merata di seluruh zona ketersediaan dan domain kerusakan untuk memaksimalkan ketersediaan. Ini menghapus VM dengan ID tertinggi terlebih dahulu.

Anda dapat menentukan kebijakan penskalaan untuk mengubah urutan penghapusan mesin virtual.

Bagaimana jika saya kemudian meningkatkan kapasitas dari 15 ke 18?

Jika Anda meningkatkan kapasitas menjadi 18, 3 VM baru akan dibuat. Setiap kali, ID instans VM ditambah dari nilai tertinggi sebelumnya (misalnya, 20, 21, 22). VM diseimbangkan di seluruh domain kesalahan.

Apa yang terjadi ketika VM dalam set skala menjadi tidak sehat?

Azure secara otomatis menggantikan instans yang tidak sehat berdasarkan sinyal pemeriksaan kesehatan atau ekstensi kesehatan aplikasi.

Apakah identitas terkelola didukung dengan VM Scale Sets?

Iya, skala set VM mendukung identitas terkelola Azure. Ini memungkinkan VM set skala Anda mengakses sumber daya Azure dengan aman seperti Key Vault tanpa memerlukan kredensial dalam kode.

Saat saya menggunakan beberapa ekstensi dalam set skala, bisakah saya menerapkan urutan eksekusi?

Ya, Anda dapat menggunakan urutan ekstensi set skala.

Apakah set skala berfungsi dengan set ketersediaan Azure?

Set skala regional (nonzonal) menggunakan grup penempatan, yang bertindak sebagai set ketersediaan implisit dengan lima domain kesalahan dan lima domain pembaruan. Sekumpulan skala yang terdiri dari lebih dari 100 VM meliputi beberapa kelompok penempatan. Untuk informasi selengkapnya tentang grup penempatan, lihat Bekerja dengan Skala Set Mesin Virtual yang besar. Set ketersediaan VM dapat berada di jaringan virtual yang sama dengan set skala VM. Konfigurasi umum adalah menempatkan VM node pengontrol (yang sering memerlukan konfigurasi unik) ke dalam kumpulan ketersediaan, dan menempatkan node data ke dalam kumpulan skala.

Apakah kumpulan skala berfungsi pada zona ketersediaan Azure?

Ya. Untuk informasi selengkapnya, lihat dokumentasi zona ketersediaan tentang pengaturan skala.

Skala Otomatis

Apa saja praktik terbaik untuk skala otomatis Azure?

Di mana saya dapat menemukan nama metrik untuk penskalaan otomatis yang menggunakan metrik berbasis host?

Apakah ada contoh penskalaan otomatis berdasarkan topik Azure Service Bus dan panjang antrean?

Ya. Untuk contoh tersebut, lihat metrik umum penskalaan otomatis Azure Monitor.

Untuk antrean Service Bus, gunakan JSON berikut:

"metricName": "MessageCount",
"metricNamespace": "",
"metricResourceUri": "/subscriptions/s1/resourceGroups/rg1/providers/Microsoft.ServiceBus/namespaces/mySB/queues/myqueue"

Untuk antrean penyimpanan, gunakan JSON berikut:

"metricName": "ApproximateMessageCount",
"metricNamespace": "",
"metricResourceUri": "/subscriptions/s1/resourceGroups/rg1/providers/Microsoft.ClassicStorage/storageAccounts/mystorage/services/queue/queues/mystoragequeue"

Ganti nilai contoh dengan URI sumber daya Anda.

Haruskah saya melakukan skala otomatis menggunakan metrik berbasis host atau ekstensi diagnostik?

Anda dapat membuat pengaturan skala otomatis pada VM untuk menggunakan metrik tingkat host, atau metrik berdasarkan sistem operasi tamu.

Untuk daftar metrik yang didukung, lihat Metrik umum penskalaan otomatis Azure Monitor.

Untuk sampel lengkap untuk Virtual Machine Scale Sets, lihat Konfigurasi skala otomatis tingkat lanjut dengan menggunakan templat Resource Manager untuk Virtual Machine Scale Sets.

Sampel tersebut menggunakan metrik CPU pada level host dan metrik jumlah pesan.

Bagaimana cara mengatur aturan peringatan pada Virtual Machine Scale Set?

Anda dapat membuat pemberitahuan tentang metrik untuk Virtual Machine Scale Sets melalui PowerShell atau Azure CLI. Untuk informasi selengkapnya, lihat Sampel mulai cepat Azure Monitor PowerShell dan Sampel mulai cepat CLI lintas platform Azure Monitor.

TargetResourceId Kumpulan Skala Komputer Virtual terlihat seperti:

/subscriptions/yoursubscriptionid/resourceGroups/yourresourcegroup/providers/Microsoft.Compute/virtualMachineScaleSets/yourvmssname

Anda dapat memilih penghitung kinerja VM apa pun sebagai metrik untuk mengatur pemberitahuan. Untuk informasi selengkapnya, lihat Metrik sistem operasi tamu untuk VM Windows berbasis Resource Manager dan Metrik sistem operasi tamu untuk VM Linux di artikel metrik umum penskalaan otomatis Azure Monitor.

Bagaimana cara menyiapkan skala otomatis pada Virtual Machine Scale Set dengan menggunakan PowerShell?

Lihat menskalakan Virtual Machine Scale Set secara otomatis. Anda juga dapat mengonfigurasikan skala otomatis dengan templat Azure CLI dan Azure.

Jika saya menghentikan (dibatalkan alokasinya) VM, apakah VM dimulai sebagai bagian dari operasi skala otomatis?

Tidak. Aturan skala otomatis membuat instans VM baru saat lebih banyak kapasitas diperlukan. VM yang dihentikan (dialokasikan ulang) tidak akan dimulai selama peristiwa autoscaling. Namun, mereka dapat dihapus selama peristiwa pengurangan skala, sama seperti instans VM lainnya, berdasarkan urutan ID instans.

Sertifikat

Bagaimana cara mengirim sertifikat dengan aman ke VM?

Untuk mengirim sertifikat dengan aman ke VM, Anda dapat memasang sertifikat pelanggan langsung ke penyimpanan sertifikat Windows dari brankas kunci pelanggan.

Gunakan JSON berikut:

"secrets": [
    {
        "sourceVault": {
            "id": "/subscriptions/{subscriptionid}/resourceGroups/myrg1/providers/Microsoft.KeyVault/vaults/mykeyvault1"
        },
        "vaultCertificates": [
            {
                "certificateUrl": "https://mykeyvault1.vault.azure.net/secrets/{secretname}/{secret-version}",
                "certificateStore": "certificateStoreName"
            }
        ]
    }
]

Kode ini mendukung Windows dan Linux.

Untuk informasi selengkapnya, lihat Membuat atau memperbarui Virtual Machine Scale Set.

Bagaimana cara menggunakan sertifikat yang ditandatangani sendiri yang diprovisikan untuk kluster Azure Service Fabric?

Untuk contoh terkini, di dalam shell Azure, gunakan pernyataan Azure CLI berikut, yang akan mencetak output ke stdout:

az sf cluster create -h

Hindari menggunakan sertifikat yang ditandatangani sendiri untuk kepercayaan terdistribusi. Sertifikat yang ditandatangani sendiri tidak disarankan untuk kluster Service Fabric yang ditujukan untuk solusi produksi perusahaan. Untuk panduan keamanan tambahan, harap lihat praktik terbaik keamanan Azure Service Fabric serta skenario keamanan kluster Service Fabric.

Untuk autentikasi SSH dengan Linux Virtual Machine Scale Set dari templat Resource Manager, dapatkah saya menentukan pasangan kunci SSH yang akan digunakan?

Ya. REST API untuk osProfile mirip dengan VM REST API standar.

Sertakan osProfile dalam templat Anda:

"osProfile": {
    "computerName": "[variables('vmName')]",
    "adminUsername": "[parameters('adminUserName')]",
    "linuxConfiguration": {
        "disablePasswordAuthentication": "true",
        "ssh": {
            "publicKeys": [
                {
                    "path": "[variables('sshKeyPath')]",
                    "keyData": "[parameters('sshKeyData')]"
                }
            ]
        }
    }
}

Blok JSON ini akan digunakan dalam Template Mulai Cepat Azure ini.

Untuk informasi selengkapnya, lihat Membuat atau memperbarui Virtual Machine Scale Set.

Bagaimana cara menghapus sertifikat yang tidak digunakan lagi?

Untuk menghapus sertifikat yang tidak digunakan lagi, hapus sertifikat lama dari daftar sertifikat vault. Tinggalkan semua sertifikat yang ingin Anda simpan di komputer Anda dalam daftar. Tindakan ini tidak menghapus sertifikat dari semua VM Anda. Ini juga tidak menambahkan sertifikat ke VM baru yang dibuat di Virtual Machine Scale Set.

Untuk menghapus sertifikat dari VM yang ada, gunakan ekstensi skrip kustom untuk menghapus sertifikat secara manual dari penyimpanan sertifikat Anda.

Bagaimana cara menyuntikkan kunci publik SSH yang sudah ada ke lapisan SSH Virtual Machine Scale Set selama penyediaan?

Jika menyediakan mesin virtual hanya dengan kunci SSH umum, Anda tidak perlu meletakkan kunci umum di Azure Key Vault. Kunci umum bukanlah rahasia.

Anda dapat menyediakan kunci umum SSH dalam teks biasa saat Membuat VM Linux:

"linuxConfiguration": {
    "ssh": {
        "publicKeys": [
            {
                "path": "path",
                "keyData": "publickey"
            }
        ]
    }
}
linuxConfiguration nama elemen Wajib Tipe Deskripsi
ssh Tidak Koleksi Menentukan konfigurasi kunci SSH untuk sistem operasi Linux.
path Ya String Menentukan jalur file Linux tempat kunci atau sertifikat SSH seharusnya diletakkan.
keyData Ya String Menentukan kunci umum SSH yang dikodekan base64.

Misalnya, lihat templat mulai cepat GitHub vm-sshkey.

Saat saya menjalankan Update-AzVmss setelah menambahkan lebih dari satu sertifikat dari brankas kunci yang sama, mengapa saya mendapatkan pesan kesalahan?

Kesalahan ini dapat terjadi jika Anda mencoba membaca vault yang sama alih-alih menggunakan sertifikat vault baru untuk vault sumber yang ada. Perintah Add-AzVmssSecret tidak akan berfungsi dengan benar jika Anda menambahkan rahasia tambahan.

Untuk menambahkan rahasia lain dari key vault yang sama, perbarui daftar berikut: $vmss.properties.osProfile.secrets[0].vaultCertificates.

Untuk struktur input yang diharapkan, lihat Membuat atau memperbarui set komputer virtual.

Temukan rahasia di objek Virtual Machine Scale Set yang ada di brankas kunci. Kemudian, tambahkan referensi sertifikat Anda (URL dan nama penyimpanan rahasia) ke daftar yang terkait dengan vault.

Catatan

Saat ini, Anda tidak dapat menghapus sertifikat dari VM dengan menggunakan API Virtual Machine Scale Set.

VM yang baru disediakan tidak akan menggunakan sertifikat yang tidak digunakan lagi. Namun, VM yang ada yang sudah disebarkan dengan sertifikat mempertahankannya, kecuali dimodifikasi secara eksplisit.

Dapatkah saya mengirim sertifikat ke Virtual Machine Scale Set tanpa memberikan kata sandi, ketika sertifikat berada di penyimpanan rahasia?

Anda tidak perlu kata sandi yang dikodekan secara permanen dalam skrip. Anda dapat mengambil kata sandi secara dinamis dengan izin yang Anda gunakan untuk menjalankan skrip penyebaran. Jika Anda memiliki skrip yang memindahkan sertifikat dari brankas kunci penyimpanan rahasia, perintah penyimpanan rahasia get certificate juga menghasilkan kata sandi file .pfx.

Bagaimana cara kerja properti "Secrets" dari virtualMachineProfile.osProfile untuk Virtual Machine Scale Set? Mengapa saya memerlukan nilai sourceVault ketika saya harus menentukan URI absolut untuk sertifikat dengan menggunakan properti certificateUrl?

Referensi sertifikat Windows Remote Management (WinRM) harus ada di properti Secrets dari profil sistem operasi.

Tujuan menunjukkan vault sumber adalah untuk menerapkan kebijakan daftar kontrol akses (ACL) yang ada dalam model Azure Cloud Service milik pengguna. Jika vault sumber tidak ditentukan, pengguna yang tidak memiliki izin untuk mengakses atau menggunakan rahasia di key vault tetap dapat melakukannya melalui Compute Resource Provider (CRP). ACL ada bahkan untuk sumber daya yang tidak ada.

Jika Anda memberikan ID vault sumber yang salah, tetapi URL key vault yang valid, kesalahan akan dilaporkan ketika Anda memantau operasi tersebut.

Jika saya menambahkan rahasia ke Virtual Machine Scale Set yang ada, apakah rahasia disuntikkan ke VM yang ada, atau hanya ke yang baru?

Sertifikat ditambahkan ke semua VM Anda, bahkan yang sudah ada sebelumnya. Jika properti Set upgradePolicy Skala Komputer Virtual Anda diatur ke manual, sertifikat ditambahkan ke VM saat Anda melakukan pembaruan manual pada VM.

Di mana saya menempatkan sertifikat untuk VM Linux?

Untuk mempelajari cara menyebarkan sertifikat untuk VM Linux, lihat Menyebarkan sertifikat ke VM dari brankas kunci yang dikelola pelanggan.

Bagaimana cara menambahkan sertifikat vault baru ke objek sertifikat baru?

Untuk menambahkan sertifikat vault ke rahasia yang sudah ada, lihat contoh PowerShell berikut ini. Menggunakan hanya satu objek rahasia.

$newVaultCertificate = New-AzVmssVaultCertificateConfig -CertificateStore MY -CertificateUrl https://sansunallapps1.vault.azure.net:443/secrets/dg-private-enc/55fa0332edc44a84ad655298905f1809

$vmss.VirtualMachineProfile.OsProfile.Secrets[0].VaultCertificates.Add($newVaultCertificate)

Update-AzVmss -VirtualMachineScaleSet $vmss -ResourceGroup $rg -Name $vmssName

Apa yang terjadi pada sertifikat jika saya mencitrakan ulang VM?

Jika Anda mengimajinasikan ulang VM, sertifikat akan dihapus. Mencitrakan ulang akan menghapus seluruh disk sistem operasi.

Apa yang terjadi jika saya menghapus sertifikat dari key vault?

Jika rahasia dihapus dari brankas kunci dan Anda kemudian stop deallocate semua VM Anda, menghidupkannya kembali gagal. Kegagalan ini terjadi karena penyedia sumber daya komputasi mencoba mengambil rahasia dari brankas kunci, tetapi tidak lagi tersedia. Untuk mengatasi masalah ini, Anda dapat menghapus sertifikat dari model Set Skala Komputer Virtual.

Penyedia sumber daya komputasi tidak menyimpan rahasia pelanggan secara terus-menerus. Saat Anda menjalankan stop deallocate semua VM di Virtual Machine Scale Set, rahasia yang di-cache akan dihapus. Dalam hal ini, penyedia sumber daya komputasi mencoba mengambil rahasia dari brankas kunci lagi.

Masalah ini tidak terjadi selama operasi peluasan skala karena salinan rahasia yang di-cache dipertahankan di Azure Service Fabric (dalam model penyewa fabric tunggal).

Mengapa saya harus menentukan versi sertifikat saat menggunakan Key Vault?

Tujuannya adalah untuk menjelaskan kepada pengguna sertifikat apa yang disebarkan di VM mereka.

Jika Anda membuat VM lalu memperbarui rahasia Anda di key vault, sertifikat baru tidak diunduh ke VM Anda. Tapi VM Anda tampaknya mereferensikannya, dan VM baru mendapatkan rahasia baru. Untuk menghindari masalah ini, Anda diharuskan untuk mereferensikan versi rahasia.

Tim saya bekerja dengan beberapa sertifikat yang didistribusikan kepada kami sebagai kunci umum .cer. Apa pendekatan yang direkomendasikan untuk menyebarkan sertifikat ini ke Set Skala Komputer Virtual?

Untuk menyebarkan kunci publik .cer ke Virtual Machine Scale Set, Anda dapat membuat file .pfx yang hanya berisi file .cer menggunakan X509ContentType = Pfx. Misalnya, muat file .cer sebagai objek x509Certificate2 di C# atau PowerShell, lalu panggil metode tersebut.

Untuk informasi selengkapnya, lihat X509Certificate.Export Method (X509ContentType, String).

Bagaimana cara meneruskan sertifikat sebagai string base64?

Untuk mensimulasikan pengoperan sertifikat sebagai string base64, Anda dapat mengekstrak URL versi terbaru dalam template Resource Manager. Sertakan properti JSON berikut ini di templat Resource Manager Anda:

"certificateUrl": "[reference(resourceId(parameters('vaultResourceGroup'), 'Microsoft.KeyVault/vaults/secrets', parameters('vaultName'), parameters('secretName')), '2015-06-01').secretUriWithVersion]"

Apakah saya harus membungkus sertifikat dalam objek JSON dalam brankas kunci?

Dalam Virtual Machine Scale Sets dan VM, sertifikat harus dibungkus dalam objek JSON.

Kami juga mendukung konten jenis application/x-pkcs12.

Saat ini kami tidak mendukung .cer file. Untuk menggunakan berkas .cer, ekspor mereka ke dalam kontainer .pfx.

Kepatuhan dan keamanan

Apakah Set Skala Komputer Virtual mematuhi PCI?

Virtual Machine Scale Sets adalah lapisan API tipis di atas CRP. Kedua komponen adalah bagian dari platform komputasi di pohon layanan Azure.

Dari perspektif kepatuhan, Virtual Machine Scale Sets adalah bagian mendasar dari platform komputasi Azure. Mereka berbagi informasi berikut dengan penyedia sumber daya komputasi itu sendiri: tim, alat, proses, metodologi penyebaran, kontrol keamanan, kompilasi just-in-time (JIT), pemantauan, dan pemberitahuan. Virtual Machine Scale Sets mematuhi standar Industri Kartu Pembayaran (PCI) karena CRP merupakan bagian dari penegasan Standar Keamanan Data PCI (DSS) saat ini.

Untuk mengetahui informasi selengkapnya, lihat Pusat Kepercayaan Microsoft.

Apakah identitas terkelola untuk sumber daya Azure dapat digunakan dengan Virtual Machine Scale Sets?

Ya. Untuk informasi selengkapnya, lihat ringkasan identitas terkelola. Anda dapat melihat beberapa contoh templat Identitas Layanan Terkelola (MSI) di Templat Mulai Cepat Azure untuk Linux dan Windows.

Menghapus

Apakah kunci yang saya tetapkan pada instans Virtual Machine Scale Set dihormati saat saya menghapus instans?

Di portal Azure, Anda memiliki kemampuan untuk menghapus instans tertentu atau menghapus secara massal dengan memilih beberapa instans. Jika Anda mencoba menghapus satu instans yang memiliki kunci, kunci akan diamankan dan Anda tidak dapat menghapus instans. Namun, jika Anda memilih beberapa instans secara massal, dan ada salah satu dari instans tersebut yang memiliki kunci, kunci-kunci tersebut tidak diperhatikan. Semua instans yang dipilih dihapus.

Di Azure CLI, Anda hanya memiliki kemampuan untuk menghapus instans tertentu. Jika Anda mencoba menghapus satu instans yang terkunci, kunci tersebut dipatuhi dan Anda tidak dapat menghapus instans tersebut.

Ekstensi

Bagaimana cara menghapus ekstensi Virtual Machine Scale Set?

Untuk menghapus ekstensi Virtual Machine Scale Set, gunakan contoh PowerShell berikut:

$vmss = Get-AzVmss -ResourceGroupName "resource_group_name" -VMScaleSetName "vmssName"

$vmss=Remove-AzVmssExtension -VirtualMachineScaleSet $vmss -Name "extensionName"

Update-AzVmss -ResourceGroupName "resource_group_name" -VMScaleSetName "vmssName" -VirtualMacineScaleSet $vmss

Anda dapat menemukan nilai extensionName di $vmss.

Apakah ada contoh templat Set Skala Komputer Virtual yang terintegrasi dengan Log Azure Monitor?

Untuk contoh templat Virtual Machine Scale Set yang terintegrasi dengan Azure Monitor Logs, lihat contoh kedua dalam Menyebarkan kluster Azure Service Fabric dan mengaktifkan pemantauan dengan menggunakan Azure Monitor Logs.

Bagaimana cara menambahkan ekstensi ke semua VM di Virtual Machine Scale Set saya?

Jika kebijakan pembaruan ditetapkan ke otomatis, penyebaran ulang templat dengan properti ekstensi baru akan memperbarui semua VM.

Jika kebijakan pembaruan ditetapkan ke manual, pertama-tama perbarui ekstensi tersebut, kemudian perbarui semua instans di VM Anda secara manual.

Jika ekstensi yang terkait dengan Virtual Machine Scale Set yang ada diperbarui, apakah VM yang ada terpengaruh?

Saat Anda memperbarui definisi ekstensi dalam model Virtual Machine Scale Set dan mengatur upgradePolicy ke automatic, Azure secara otomatis memperbarui ekstensi pada semua VM. Namun, jika upgradePolicy diatur ke manual, ekstensi ditandai sebagai tidak sinkron dengan model. Dalam hal ini, ekstensi tidak akan diperbarui sampai Anda memicu pembaruan untuk instans VM secara manual.

Apakah ekstensi dijalankan kembali ketika mesin yang ada diperbaiki atau dicitrakan ulang?

Jika VM yang ada dipulihkan oleh layanan, maka akan terlihat sebagai reboot, dan ekstensi tidak dijalankan lagi. Jika VM diinstal ulang, proses tersebut mirip dengan mengganti drive sistem operasi dengan citra sumber. Setiap spesialisasi dari model terbaru, seperti ekstensi, akan dijalankan lagi.

Bagaimana cara menggabungkan Set Skala Komputer Virtual ke domain Direktori Aktif?

Untuk bergabung dengan Set Skala Komputer Virtual ke domain Direktori Aktif, Anda dapat menentukan ekstensi.

Untuk menentukan ekstensi, gunakan properti JsonADDomainExtension:

"extensionProfile": {
    "extensions": [
        {
            "name": "joindomain",
            "properties": {
                "publisher": "Microsoft.Compute",
                "type": "JsonADDomainExtension",
                "typeHandlerVersion": "1.3",
                "settings": {
                    "Name": "[parameters('domainName')]",
                    "OUPath": "[variables('ouPath')]",
                    "User": "[variables('domainAndUsername')]",
                    "Restart": "true",
                    "Options": "[variables('domainJoinOptions')]"
                },
                "protectedsettings": {
                    "Password": "[parameters('domainJoinPassword')]"
                }
            }
        }
    ]
}

Ekstensi Virtual Machine Scale Set saya mencoba menginstal sesuatu yang memerlukan boot ulang. Apa yang harus saya lakukan?

Anda dapat menggunakan ekstensi Konfigurasi Status Yang Diinginkan Azure Automation. Jika sistem operasi adalah Windows Server 2012 R2, Azure mengunduh penyiapan Windows Management Framework (WMF) 5.0, melakukan boot ulang, kemudian melanjutkan dengan konfigurasi.

Bagaimana cara menjalankan skrip kustom yang dihosting di akun penyimpanan privat?

Menyiapkan pengaturan terlindung dengan nama dan kunci akun penyimpanan. Untuk informasi selengkapnya, lihat Ekstensi skrip kustom.

Kata Sandi

Bagaimana cara mengatur ulang kata sandi untuk VM di Set Skala Komputer Virtual saya?

Anda dapat:

  • Ubah model Virtual Machine Scale Set secara langsung. Opsi ini hanya tersedia dengan API 2017-12-01 dan versi yang lebih baru.

    Perbarui kredensial admin langsung dalam model kumpulan skala (misalnya menggunakan Azure Resource Explorer, PowerShell, atau CLI). Setelah kumpulan skala diperbarui, semua VM baru memiliki kredensial baru. VM yang ada hanya memiliki kredensial baru jika digambarkan ulang.

  • Atur ulang kata sandi menggunakan ekstensi akses VM. Pastikan untuk mengikuti persyaratan kata sandi, seperti yang dijelaskan dalam FAQ.

    Menggunakan ekstensi akses VM tidak memerlukan pencitraan ulang karena ekstensi tidak memperbarui kata sandi dalam model tersebut. Ekstensi menjalankan skrip untuk menambahkan kata sandi ke kata sandi atau ke file kunci SSH. Ekstensi tersebut tidak menghapus kunci SSH asli. Setelah ekstensi diperbarui, tingkatkan instans untuk menerapkan pembaruan ke nama pengguna dan kata sandi pada semua instans VM.

    Catatan

    Jika kebijakan peningkatan otomatis diatur ke manual, Anda perlu memilih dan meningkatkan instans VM individual secara manual. Jika diatur ke Automatic, ekstensi akan ditingkatkan secara otomatis. Untuk informasi selengkapnya, lihat Peningkatan Ekstensi Otomatis.

    Gunakan contoh PowerShell berikut untuk Windows Virtual Machine Scale Set:

    $vmssName = "myvmss"
    $vmssResourceGroup = "myvmssrg"
    $publicConfig = @{"UserName" = "newuser"}
    $privateConfig = @{"Password" = "********"}
    
    $extName = "VMAccessAgent"
    $publisher = "Microsoft.Compute"
    $vmss = Get-AzVmss -ResourceGroupName $vmssResourceGroup -VMScaleSetName $vmssName
    $vmss = Add-AzVmssExtension -VirtualMachineScaleSet $vmss -Name $extName -Publisher $publisher -Setting $publicConfig -ProtectedSetting $privateConfig -Type $extName -TypeHandlerVersion "2.0" -AutoUpgradeMinorVersion $true
    Update-AzVmss -ResourceGroupName $vmssResourceGroup -Name $vmssName -VirtualMachineScaleSet $vmss
    

    Gunakan contoh Azure CLI berikut untuk Linux Virtual Machine Scale Set:

    az vmss extension set \
      --resource-group myResouceGroup \ 
      --vmss-name myScaleSet \
      --publisher Microsoft.OSTCExtensions \
      --name VMAccessForLinux \
      --version 1.5 \
      --protected-settings "{'username': 'newUser', 'password': 'newPassword'}"
    

Jaringan

Apakah mungkin untuk menetapkan kelompok keamanan jaringan (NSG) ke set skala, sehingga berlaku untuk semua pengontrol antarmuka jaringan (NIC) VM dalam set?

Ya. Anda dapat menerapkan NSG langsung ke kumpulan skala dengan mereferensikannya di networkInterfaceConfigurations bagian profil jaringan. Berikut contohnya:

"networkProfile": {
    "networkInterfaceConfigurations": [
        {
            "name": "nic1",
            "properties": {
                "primary": "true",
                "ipConfigurations": [
                    {
                        "name": "ip1",
                        "properties": {
                            "subnet": {
                                "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', variables('vnetName'), '/subnets/subnet1')]"
                            },
                            "loadBalancerInboundNatPools": [
                                {
                                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/inboundNatPools/natPool1')]"
                                }
                            ],
                            "loadBalancerBackendAddressPools": [
                                {
                                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/backendAddressPools/addressPool1')]"
                                }
                            ]
                        }
                    }
                ],
                "networkSecurityGroup": {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/networkSecurityGroups/', variables('nsgName'))]"
                }
            }
        }
    ]
}

Bagaimana cara melakukan pertukaran IP virtual (VIP) untuk Virtual Machine Scale Sets di langganan yang sama dan wilayah yang sama?

Jika Anda memiliki dua Virtual Machine Scale Sets menggunakan Azure Load Balancer di langganan dan wilayah yang sama, Anda dapat menukar alamat IP publik mereka. Untuk melakukan ini, batalkan alokasi IP publik dari setiap set skala dan tetapkan ke yang lain. Untuk informasi selengkapnya, lihat VIP swap: Penyebaran biru hijau di Azure Resource Manager. Namun, Anda mungkin mengalami penundaan karena sumber daya dibatalkan alokasinya atau dialokasikan di tingkat jaringan. Opsi yang lebih cepat adalah menggunakan Azure Application Gateway dengan dua kumpulan back-end dan aturan perutean. Atau, Anda dapat menghosting aplikasi Anda dengan Azure App Service yang mendukung peralihan cepat antara slot penahapan dan produksi.

Bagaimana cara menentukan rentang alamat IP privat yang akan digunakan untuk alokasi alamat IP privat statis?

Alamat IP dipilih dari subnet yang Anda tentukan.

Metode alokasi alamat IP Set Skala Komputer Virtual selalu dinamis, tetapi itu tidak berarti bahwa alamat IP ini dapat berubah. Dalam kasus ini, dinamis hanya berarti bahwa Anda tidak menetapkan alamat IP dalam PUT permintaan. Tentukan set statis dengan menggunakan subnet.

Bagaimana cara menyebarkan Virtual Machine Scale Set ke jaringan virtual Azure yang sudah ada?

Dapatkah saya menggunakan kumpulan skala dengan jaringan yang dipercepat?

Ya. Untuk menggunakan jaringan yang dipercepat, tetapkan enableAcceleratedNetworking ke true di setelan networkInterfaceConfigurations kumpulan skala Anda. Contohnya:

"networkProfile": {
    "networkInterfaceConfigurations": [
        {
            "name": "niconfig1",
            "properties": {
                "primary": true,
                "enableAcceleratedNetworking" : true,
                "ipConfigurations": [
                ]
            }
        }
    ]
}

Bagaimana cara mengonfigurasi server sistem nama domain (DNS) yang digunakan oleh kelompok skala?

Untuk membuat Skala Set Mesin Virtual dengan konfigurasi DNS kustom, tambahkan dnsSettings paket JSON ke bagian Skala Set networkInterfaceConfigurations. Berikut contohnya:

    "dnsSettings":{
        "dnsServers":["10.0.0.6", "10.0.0.5"]
    }

Bagaimana cara mengonfigurasi set skala untuk menetapkan alamat IP publik untuk setiap VM?

Untuk membuat Set Skala Komputer Virtual yang menetapkan alamat IP publik ke setiap VM, pastikan bahwa versi Microsoft.Compute/virtualMachineScaleSets API sumber daya adalah 2017-03-30, dan tambahkan publicipaddressconfiguration paket JSON ke bagian set ipConfigurations skala. Berikut contohnya:

    "publicipaddressconfiguration": {
        "name": "pub1",
        "properties": {
        "idleTimeoutInMinutes": 15
        }
    }

Dapatkah saya mengonfigurasi kumpulan skala agar berfungsi dengan beberapa application gateway?

Ya. Anda dapat menambahkan ID sumber daya untuk beberapa kumpulan alamat ujung belakang gateway aplikasi ke daftar applicationGatewayBackendAddressPools dalam bagian ipConfigurations dari profil jaringan kumpulan skala Anda.

Dapatkah saya melampirkan beberapa NIC atau konfigurasi IP kustom ke VM dalam kumpulan skala?

Ya. Virtual Machine Scale Sets mendukung beberapa NIC dan konfigurasi IP kustom per instans saat menggunakan mode orkestrasi fleksibel. Ini memungkinkan topologi jaringan yang kompleks dan isolasi layanan.

Skala

Dalam hal apa saya akan membuat Virtual Machine Scale Set dengan kurang dari dua VM?

Salah satu alasan untuk membuat Virtual Machine Scale Set dengan kurang dari dua VM adalah dengan menggunakan properti elastis dari Virtual Machine Scale Set. Misalnya, Anda dapat menyebarkan Virtual Machine Scale Set dengan nol VM untuk menentukan infrastruktur Anda tanpa membayar biaya berjalan VM. Kemudian, ketika Anda siap untuk menerapkan VM, Anda dapat meningkatkan jumlah kapasitas Virtual Machine Scale Set ke jumlah instans produksi.

Alasan lain Anda mungkin membuat Set Skala Komputer Virtual dengan kurang dari dua VM adalah jika Anda kurang memperhatikan ketersediaan daripada dengan menggunakan set ketersediaan dengan VM diskrit. Virtual Machine Scale Sets memberi Anda cara untuk bekerja dengan unit komputasi yang tidak dibedakan dan dapat dipertukarkan. Keseragaman ini adalah pembeda utama untuk Virtual Machine Scale Sets dibandingkan dengan set ketersediaan. Banyak tugas tanpa status tidak melacak unit individu. Jika beban kerja turun, Anda dapat menurunkan skala ke satu unit komputasi, lalu meningkatkan skala hingga banyak saat beban kerja meningkat.

Bagaimana cara mengubah jumlah VM dalam Set Skala Komputer Virtual?

Untuk mengubah jumlah VM dalam Set Skala Mesin Virtual di portal Azure, dari bagian Properti Set Skala Mesin Virtual, pilih panel Penskalaan, dan gunakan bilah penggeser.

Bagaimana cara menentukan pemberitahuan kustom saat ambang batas tertentu tercapai?

Anda memiliki beberapa fleksibilitas dalam cara Anda menangani pemberitahuan untuk ambang batas yang ditentukan. Misalnya, Anda dapat menentukan webhook yang disesuaikan. Contoh webhook berikut ini berasal dari templat Resource Manager:

{
    "type": "Microsoft.Insights/autoscaleSettings",
    "apiVersion": "[variables('insightsApi')]",
    "name": "autoscale",
    "location": "[parameters('resourceLocation')]",
    "dependsOn": [
        "[concat('Microsoft.Compute/virtualMachineScaleSets/', parameters('vmSSName'))]"
    ],
    "properties": {
        "name": "autoscale",
        "targetResourceUri": "[concat('/subscriptions/',subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Compute/virtualMachineScaleSets/', parameters('vmSSName'))]",
        "enabled": true,
        "notifications": [
            {
                "operation": "Scale",
                "email": {
                    "sendToSubscriptionAdministrator": true,
                    "sendToSubscriptionCoAdministrators": true,
                    "customEmails": [
                        "youremail@address.com"
                    ]
                },
                "webhooks": [
                    {
                        "serviceUri": "<service uri>",
                        "properties": {
                            "key1": "custommetric",
                            "key2": "scalevmss"
                        }
                    }
                ]
            }
        ]
    }
}

Patching dan operasi

Bisakah saya membuat set skala dalam grup sumber daya yang ada?

Ya, Anda bisa.

Bisakah saya memindahkan set skala ke grup sumber daya lain?

Ya, Anda dapat memindahkan sumber daya set skala ke langganan atau grup sumber daya baru.

Bagaimana cara memperbarui Virtual Machine Scale Set saya ke gambar baru? Bagaimana cara mengelola pembaruan patch VM dalam kumpulan skala saya?

Untuk memperbarui Virtual Machine Scale Set Anda ke gambar baru, dan untuk mengelola patching, lihat Upgrade Virtual Machine Scale Set.

Bisakah saya menggunakan operasi reimage untuk mereset VM tanpa mengubah gambar? (Artinya, saya ingin mengatur ulang VM ke pengaturan pabrik daripada ke gambar baru.)

Ya, Anda dapat menggunakan operasi reimage untuk mengatur ulang VM tanpa mengubah gambar. Namun, jika Set Skala Komputer Virtual Anda mereferensikan gambar platform dengan version = latest, VM Anda dapat memperbarui ke gambar sistem operasi yang lebih baru saat Anda memanggil reimage.

Dapatkah mengintegrasikan kumpulan skala dengan Azure Monitor Logs?

Ya, dengan menginstal ekstensi Azure Monitor pada kumpulan skala VM. Berikut adalah contoh yang menggunakan Azure CLI:

az vmss extension set --name MicrosoftMonitoringAgent --publisher Microsoft.EnterpriseCloud.Monitoring --resource-group Team-03 --vmss-name nt01 --settings "{'workspaceId': '<your workspace ID here>'}" --protected-settings "{'workspaceKey': '<your workspace key here'}"

Anda dapat menemukan workspaceId dan workspaceKey yang diperlukan dalam ruang kerja Log Analytics di portal Azure. Pada halaman Ringkasan, pilih kotak Pengaturan. Pilih tab Sumber Terhubung di bagian atas.

Catatan

Jika kumpulan skala upgradePolicy ditetapkan ke manual, Anda harus menerapkan ekstensi ke semua VM dalam kumpulan tersebut dengan memanggil perintah upgrade pada VM tersebut. Untuk Azure CLI, gunakan az vmss update-instances.

Catatan

Artikel ini baru-baru ini diperbarui untuk menggunakan istilah log Azure Monitor alih-alih Analitik Log. Data log masih disimpan di ruang kerja Analitik Log dan masih dikumpulkan dan dianalisis oleh layanan Analitik Log yang sama. Kami memperbarui terminologi untuk mencerminkan peran log di Azure Monitor dengan lebih baik. Lihat Perubahan terminologi Azure Monitor untuk detailnya.

Pemecahan Masalah

Bagaimana cara mengaktifkan diagnostik boot?

Untuk mengaktifkan diagnostik boot, pertama, buat akun penyimpanan. Kemudian, letakkan blok JSON ini di Set virtualMachineProfileSkala Komputer Virtual Anda, dan perbarui Set Skala Komputer Virtual:

"diagnosticsProfile": {
    "bootDiagnostics": {
        "enabled": true,
        "storageUri": "http://yourstorageaccount.blob.core.windows.net"
    }
}

Saat VM baru dibuat, properti InstanceView dari VM menampilkan detail untuk cuplikan layar. Berikut contohnya:

"bootDiagnostics": {
    "consoleScreenshotBlobUri": "https://o0sz3nhtbmkg6geswarm5.blob.core.windows.net/bootdiagnostics-swarmagen-4157d838-8335-4f78-bf0e-b616a99bc8bd/swarm-agent-9574AE92vmss-0_2.4157d838-8335-4f78-bf0e-b616a99bc8bd.screenshot.bmp",
    "serialConsoleLogBlobUri": "https://o0sz3nhtbmkg6geswarm5.blob.core.windows.net/bootdiagnostics-swarmagen-4157d838-8335-4f78-bf0e-b616a99bc8bd/swarm-agent-9574AE92vmss-0_2.4157d838-8335-4f78-bf0e-b616a99bc8bd.serialconsole.log"
}

Bagaimana cara untuk memecahkan masalah lain?

Properti mesin virtual

Bagaimana cara mendapatkan informasi properti untuk setiap VM tanpa melakukan beberapa panggilan? Misalnya, bagaimana cara mendapatkan domain kesalahan untuk masing-masing dari 100 VM di Set Skala Komputer Virtual saya?

Anda dapat memanggil ListVMInstanceViews dengan melakukan panggilan REST API GET pada URI sumber daya berikut: /subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.Compute/virtualMachineScaleSets/<scaleset_name>/virtualMachines?$expand=instanceView&$select=instanceView

Catatan: Jika set skala menggunakan penyebaran maksimum (platformFaultDomainCount = 1), informasi domain kesalahan tidak akan diberikan, karena jumlah domain kesalahan yang digunakan tidak dijamin dengan konfigurasi ini.

Dapatkah saya meneruskan argumen ekstensi yang berbeda ke VM yang berbeda dalam Set Skala Komputer Virtual?

Tidak, Anda tidak bisa. Namun, ekstensi dapat bertindak berdasarkan properti unik VM yang mereka jalankan, seperti pada nama komputer. Ekstensi juga dapat mengkueri metadata instans di http://169.254.169.254 untuk mendapatkan informasi selengkapnya tentang VM.

Mengapa ada celah (misalnya, 0, 1, 3) antara nama komputer Virtual Machine Scale Set VM saya dan ID VM?

Celah adalah karena properti Set overprovision Skala Komputer Virtual Anda diatur ke nilai truedefault . Jika provisi berlebih diatur ke true, lebih banyak VM daripada yang diminta akan dibuat. VM tambahan kemudian dihapus. Dalam kasus ini, Anda mendapatkan peningkatan keandalan penyebaran, tetapi dengan mengorbankan penamaan yang tumpang-tindih dan aturan terjemahan alamat jaringan (NAT) yang tumpang tindih.

Anda dapat mengatur properti ini ke false. Untuk Set Skala Komputer Virtual kecil, keandalan penyebaran tidak terpengaruh.

Apa perbedaan antara menghapus VM dalam Virtual Machine Scale Set dan mendealokasikan VM? Kapan saya harus memilih satu opsi di atas yang lain?

Perbedaan utamanya adalah deallocate tidak menghapus hard disk virtual (VHD). Ada biaya penyimpanan yang terkait dengan stop deallocate yang berjalan. Anda mungkin menggunakan satu atau yang lain karena salah satu alasan berikut:

  • Anda ingin berhenti membayar biaya komputasi, tetapi Anda ingin mempertahankan status disk VM.
  • Anda ingin memulai sekumpulan VM lebih cepat daripada Anda dapat menskalakan Set Skala Komputer Virtual.
  • Terkait dengan skenario ini, mungkin Anda memiliki mesin penskalaan otomatis Anda sendiri dan menginginkan penskalaan menyeluruh yang lebih cepat.
  • Anda memiliki Set Skala Mesin Virtual yang didistribusikan tidak merata di seluruh domain kesalahan atau domain pembaruan. Distribusi yang tidak merata ini mungkin karena Anda menghapus VM secara selektif, atau karena VM dihapus setelah provisi berlebihan. Menjalankan stop deallocate diikuti oleh start pada Virtual Machine Scale Set mendistribusikan VM secara merata di seluruh domain kesalahan atau domain pembaruan.

Bagaimana cara mengambil rekam jepret instans Virtual Machine Scale Set?

Buat snapshot dari contoh Virtual Machine Scale Set. Berikut contohnya:

$rgname = "myResourceGroup"
$vmssname = "myVMScaleSet"
$Id = 0
$location = "East US"

$vmss1 = Get-AzVmssVM -ResourceGroupName $rgname -VMScaleSetName $vmssname -InstanceId $Id
$snapshotconfig = New-AzSnapshotConfig -Location $location -AccountType Standard_LRS -OsType Windows -CreateOption Copy -SourceUri $vmss1.StorageProfile.OsDisk.ManagedDisk.id
New-AzSnapshot -ResourceGroupName $rgname -SnapshotName 'mySnapshot' -Snapshot $snapshotconfig

Buat disk terkelola dari cuplikan. Berikut contohnya:

$snapshotName = "mySnapshot"
$snapshot = Get-AzSnapshot -ResourceGroupName $rgname -SnapshotName $snapshotName
$diskConfig = New-AzDiskConfig -AccountType Premium_LRS -Location $location -CreateOption Copy -SourceResourceId $snapshot.Id
$osDisk = New-AzDisk -Disk $diskConfig -ResourceGroupName $rgname -DiskName ($snapshotName + '_Disk')