Tutorial: Membuat dan mengelola set skala komputer virtual dengan antarmuka tingkat panggilan Azure PowerShell

Berlaku untuk: ✔️ VM LINUX ✔️ VM Windows ✔️ Set skala seragam

Set skala komputer virtual menggunakan disk untuk menyimpan sistem operasi, aplikasi, dan data instans komputer virtual. Saat Anda membuat dan mengelola set skala, penting untuk memilih ukuran dan konfigurasi disk yang sesuai dengan beban kerja yang diharapkan. Tutorial ini mencakup cara membuat dan mengelola disk komputer virtual. Dalam tutorial ini, Anda akan belajar cara:

  • Disk OS dan disk sementara
  • Disk data
  • Disk Standar dan Premium
  • Performa disk
  • Memasang dan menyiapkan disk data

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

Catatan

Artikel ini menggunakan modul Azure Az PowerShell, yang merupakan modul PowerShell yang direkomendasikan untuk berinteraksi dengan Azure. Untuk mulai menggunakan modul Az PowerShell, lihat Menginstal Azure PowerShell. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.

Menggunakan 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 pun di lingkungan lokal Anda.

Untuk memulai Azure Cloud Shell:

Opsi Contoh/Tautan
Pilih Coba di sudut kanan atas blok kode. Memilih Coba tidak secara otomatis menyalin kode ke Cloud Shell. Contoh Coba untuk Azure Cloud Shell
Buka https://shell.azure.com, atau pilih tombol Luncurkan Cloud Shell untuk membuka Cloud Shell di browser Anda. Luncurkan Cloud Shell di jendela baru
Pilih tombol Cloud Shell pada bilah menu di kanan atas di portal Microsoft Azure. Tombol Cloud Shell di portal Microsoft Azure

Untuk menjalankan kode dalam artikel ini di Azure Cloud Shell:

  1. Mulai Cloud Shell.

  2. Pilih tombol Salin pada blok kode untuk menyalin kode.

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

  4. Pilih Enter untuk menjalankan kode.

Disk Azure default

Saat set skala dibuat atau diskalakan, dua disk secara otomatis dipasang ke setiap instans komputer virtual.

Disk sistem operasi - Disk sistem operasi dapat berukuran hingga 2 TB, dan menghosting sistem operasi instans komputer virtual. Disk OS diberi label /dev/sda secara default. Konfigurasi penembolokan disk dari disk OS dioptimalkan untuk performa OS. Karena konfigurasi ini, disk OS tidak boleh meng-host aplikasi atau data. Untuk aplikasi dan data, gunakan disk data, yang diperinci nanti di artikel ini.

Disk sementara - Disk sementara menggunakan drive dengan kondisi solid yang terletak di host Azure yang sama dengan instans komputer virtual. Ini adalah disk berperforma tinggi dan dapat digunakan untuk operasi seperti pemrosesan data sementara. Namun, jika instans komputer virtual dipindahkan ke host baru, data apa pun yang disimpan di disk sementara akan dihapus. Ukuran disk sementara ditentukan oleh ukuran instans komputer virtual. Disk sementara diberi label /dev/sdb dan memiliki titik pemasangan dari /mnt.

Ukuran disk sementara

Jenis Ukuran umum Ukuran disk temp maks (GiB)
Tujuan umum Seri A, B, dan D 1600
Komputasi dioptimalkan Seri F 576
Memori Dioptimalkan Seri D, E, G, dan M 6144
Penyimpanan yang dioptimalkan Seri L 5630
GPU Seri N 1440
Performa tinggi Seri A dan H 2000

Disk data Azure

Disk data tambahan dapat ditambahkan jika Anda perlu memasang aplikasi dan menyimpan data. Disk data harus digunakan dalam situasi apa pun di mana penyimpanan data yang tahan lama dan responsif diinginkan. Setiap disk data memiliki kapasitas maksimum 4 TB. Ukuran instans komputer virtual menentukan berapa banyak disk data yang dapat dilampirkan. Untuk setiap VM vCPU, dua disk data dapat ditambahkan.

Disk data maks per VM

Jenis Ukuran umum Disk data maks per VM
Tujuan umum Seri A, B, dan D 64
Komputasi dioptimalkan Seri F 64
Memori Dioptimalkan Seri D, E, G, dan M 64
Penyimpanan yang dioptimalkan Seri L 64
GPU Seri N 64
Performa tinggi Seri A dan H 64

Jenis disk komputer virtual

Azure menyediakan dua jenis disk.

Disk standar

Standard Storage didukung oleh HDD, dan memberikan penyimpanan dan performa yang hemat biaya. Disk standar ideal untuk dev yang efektif biaya dan beban kerja pengujian.

Disk premium

Disk premium didukung oleh disk berperforma tinggi, latensi rendah berbasis SSD. Disk ini disarankan untuk komputer virtual yang menjalankan beban kerja produksi. Premium Storage mendukung komputer virtual seri DS, seri DSv2, seri GS, dan seri FS. Saat Anda memilih ukuran disk, nilai dibulatkan ke atas ke jenis berikutnya. Misalnya, jika ukuran disk kurang dari 128 GB, jenis disk adalah P10. Jika ukuran disk antara 129 GB dan 512 GB, ukurannya adalah P20. Lebih dari, 512 GB, ukurannya adalah P30.

Performa disk premium

Jenis disk penyimpanan premium P4 P6 P10 P20 P30 P40 P50
Ukuran disk (dibulatkan ke atas) 32 GB 64 GB 128 GB 512 GB 1.024 GB (1 TB) 2.048 GB (2 TB) 4.095 GB (4 TB)
Maks IOPS per disk 120 240 500 2.300 5.000 7.500 7.500
Throughput per disk 25 MB/dtk 50 MB/dtk 100 MB/dtk 150 MB/dtk 200 MB/dtk 250 MB/dtk 250 MB/dtk

Sementara tabel di atas mengidentifikasi IOPS maks per disk, tingkat performa yang lebih tinggi dapat dicapai dengan melucuti beberapa disk data. Untuk instans, komputer virtual Standard_GS5 dapat mencapai maksimum 80.000 IOPS. Untuk informasi detail tentang maks IOPS per komputer virtual, lihat Ukuran VM Windows.

Membuat dan memasang disk

Anda dapat membuat dan memasang disk saat membuat set skala, atau dengan set skala yang ada.

Pada versi API2019-07-01, Anda dapat mengatur ukuran disk OS dalam set skala komputer virtual dengan properti storageProfile.osDisk.diskSizeGb. Setelah penyediaan, Anda mungkin harus memperluas atau mempartisi ulang disk untuk menggunakan seluruh ruang. Pelajari selengkapnya tentang memperluas disk di sini.

Memasang disk pada pembuatan set skala

Buat set skala komputer virtual dengan New-AzVmss. Saat diminta, berikan nama pengguna dan kata sandi untuk instans VM. Untuk mendistribusikan lalu lintas ke instans komputer virtual individual, load balancer juga dibuat. Load balancer mencakup aturan untuk mendistribusikan lalu lintas pada port TCP 80, serta memungkinkan lalu lintas desktop jarak jauh pada port TCP 3389 dan PowerShell jarak jauh pada port TCP 5985.

Dua disk dibuat dengan parameter -DataDiskSizeGb. Disk pertama berukuran 64 GB, dan disk kedua berukuran 128 GB. Saat diminta, berikan informasi masuk administratif yang Anda inginkan untuk instans komputer virtual dalam set skala:

New-AzVmss `
  -ResourceGroupName "myResourceGroup" `
  -Location "EastUS" `
  -VMScaleSetName "myScaleSet" `
  -VirtualNetworkName "myVnet" `
  -SubnetName "mySubnet" `
  -PublicIpAddressName "myPublicIPAddress" `
  -LoadBalancerName "myLoadBalancer" `
  -UpgradePolicyMode "Automatic" `
  -DataDiskSizeInGb 64,128

Perlu waktu beberapa menit untuk membuat dan mengonfigurasi semua sumber daya set skala dan instans komputer virtual.

Memasang disk ke set skala yang ada

Anda juga dapat memasang disk ke set skala yang ada. Gunakan set skala yang dibuat pada langkah sebelumnya untuk menambahkan disk lain dengan Add-AzVmssDataDisk. Contoh berikut melampirkan disk tambahan 128 GB ke set skala yang ada:

# Get scale set object
$vmss = Get-AzVmss `
          -ResourceGroupName "myResourceGroup" `
          -VMScaleSetName "myScaleSet"

# Attach a 128 GB data disk to LUN 2
Add-AzVmssDataDisk `
  -VirtualMachineScaleSet $vmss `
  -CreateOption Empty `
  -Lun 2 `
  -DiskSizeGB 128

# Update the scale set to apply the change
Update-AzVmss `
  -ResourceGroupName "myResourceGroup" `
  -VMScaleSetName "myScaleSet" `
  -VirtualMachineScaleSet $vmss

Menyiapkan disk data

Disk yang dibuat dan dilampirkan ke instans komputer virtual set skala Anda adalah disk mentah. Sebelum Anda dapat menggunakannya dengan data dan aplikasi Anda, disk harus disiapkan. Untuk menyiapkan disk, Anda membuat partisi, membuat sistem file, dan memasangnya.

Untuk mengotomasi proses di beberapa instans komputer virtual dalam set skala, Anda dapat menggunakan Ekstensi Skrip Kustom Azure. Ekstensi ini dapat menjalankan skrip secara lokal pada setiap instans komputer virtual, seperti untuk menyiapkan disk data yang terpasang. Untuk informasi selengkapnya, lihat gambaran umum Ekstensi Skrip Kustom.

Contoh berikut menjalankan skrip dari repo sampel GitHub pada setiap instans komputer virtual dengan Add-AzVmssExtension yang menyiapkan semua disk data yang terpasang mentah:

# Get scale set object
$vmss = Get-AzVmss `
          -ResourceGroupName "myResourceGroup" `
          -VMScaleSetName "myScaleSet"

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

# Use Custom Script Extension to prepare the attached data disks
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" `
  -VMScaleSetName "myScaleSet" `
  -VirtualMachineScaleSet $vmss

Untuk mengonfirmasi bahwa disk telah disiapkan dengan benar, RDP ke salah satu instans komputer virtual.

Pertama, dapatkan objek load balancer dengan Get-AzLoadBalancer. Kemudian, lihat aturan NAT masuk dengan Get-AzLoadBalancerInboundNatRuleConfig. Aturan NAT mencantumkan FrontendPort untuk setiap instans VM yang didengarkan RDP. Terakhir, dapatkan alamat IP publik load balancer dengan Get-AzPublicIpAddress:

# Get the load balancer object
$lb = Get-AzLoadBalancer -ResourceGroupName "myResourceGroup" -Name "myLoadBalancer"

# View the list of inbound NAT rules
Get-AzLoadBalancerInboundNatRuleConfig -LoadBalancer $lb | Select-Object Name,Protocol,FrontEndPort,BackEndPort

# View the public IP address of the load balancer
Get-AzPublicIpAddress -ResourceGroupName "myResourceGroup" -Name myPublicIPAddress | Select IpAddress

Untuk terhubung ke VM Anda, tentukan alamat IP publik anda sendiri dan nomor port instans komputer virtual yang diperlukan, seperti yang ditunjukkan di perintah sebelumnya. Saat diminta, masukkan kredensial yang digunakan saat Anda membuat set skala. Jika Anda menggunakan Azure Cloud Shell, lakukan langkah ini dari permintaan PowerShell lokal atau Klien Desktop Jarak Jauh. Contoh berikut terhubung ke instans komputer virtual 1:

mstsc /v 52.168.121.216:50001

Buka sesi PowerShell lokal pada instans VM dan lihat disk yang terhubung dengan Get-Disk:

Get-Disk

Contoh output berikut menunjukkan bahwa tiga disk data dilampirkan ke instans VM.

Number  Friendly Name      HealthStatus  OperationalStatus  Total Size  Partition Style
------  -------------      ------------  -----------------  ----------  ---------------
0       Virtual HD         Healthy       Online                 127 GB  MBR
1       Virtual HD         Healthy       Online                  14 GB  MBR
2       Msft Virtual Disk  Healthy       Online                  64 GB  MBR
3       Msft Virtual Disk  Healthy       Online                 128 GB  MBR
4       Msft Virtual Disk  Healthy       Online                 128 GB  MBR

Periksa sistem file dan titik kait pada instans komputer virtual sebagai berikut:

Get-Partition

Contoh output berikut menunjukkan bahwa tiga disk data ditetapkan huruf drive:

   DiskPath: \\?\scsi#disk&ven_msft&prod_virtual_disk#000001

PartitionNumber  DriveLetter  Offset   Size  Type
---------------  -----------  ------   ----  ----
1                F            1048576  64 GB  IFS

   DiskPath: \\?\scsi#disk&ven_msft&prod_virtual_disk#000002

PartitionNumber  DriveLetter  Offset   Size   Type
---------------  -----------  ------   ----   ----
1                G            1048576  128 GB  IFS

   DiskPath: \\?\scsi#disk&ven_msft&prod_virtual_disk#000003

PartitionNumber  DriveLetter  Offset   Size   Type
---------------  -----------  ------   ----   ----
1                H            1048576  128 GB  IFS

Disk pada setiap instans komputer virtual dalam skala Anda secara otomatis disiapkan dengan cara yang sama. Saat set skala Anda akan ditingkatkan, disk data yang diperlukan dilampirkan ke instans komputer virtual baru. Ekstensi Skrip Kustom juga berjalan untuk menyiapkan disk secara otomatis.

Tutup sesi koneksi desktop jarak jauh dengan instans VM.

Mencantumkan disk terpasang

Untuk melihat informasi tentang disk yang dilampirkan ke set skala, gunakan Get-AzVmss sebagai berikut:

Get-AzVmss -ResourceGroupName "myResourceGroup" -Name "myScaleSet"

Di bawah properti VirtualMachineProfile.StorageProfile, daftar DataDisks ditampilkan. Informasi tentang ukuran disk, tingkat penyimpanan, dan LUN (Nomor Unit Logis) ditampilkan. Contoh output berikut memerinci tiga disk data yang dilampirkan ke set skala:

DataDisks[0]                            :
  Lun                                   : 0
  Caching                               : None
  CreateOption                          : Empty
  DiskSizeGB                            : 64
  ManagedDisk                           :
    StorageAccountType                  : PremiumLRS
DataDisks[1]                            :
  Lun                                   : 1
  Caching                               : None
  CreateOption                          : Empty
  DiskSizeGB                            : 128
  ManagedDisk                           :
    StorageAccountType                  : PremiumLRS
DataDisks[2]                            :
  Lun                                   : 2
  Caching                               : None
  CreateOption                          : Empty
  DiskSizeGB                            : 128
  ManagedDisk                           :
    StorageAccountType                  : PremiumLRS

Melepaskan disk

Ketika Anda tidak lagi memerlukan disk yang diberikan, Anda dapat melepaskannya dari set skala. Disk dihapus dari semua instans komputer virtual dalam set skala. Untuk melepaskan disk dari set skala, gunakan Remove-AzVmssDataDisk dan tentukan LUN disk. LUN ditampilkan dalam output dari Get-AzVmss di bagian sebelumnya. Contoh berikut melepaskan LUN 3 dari set skala:

# Get scale set object
$vmss = Get-AzVmss `
          -ResourceGroupName "myResourceGroup" `
          -VMScaleSetName "myScaleSet"

# Detach a disk from the scale set
Remove-AzVmssDataDisk `
  -VirtualMachineScaleSet $vmss `
  -Lun 2

# Update the scale set and detach the disk from the VM instances
Update-AzVmss `
  -ResourceGroupName "myResourceGroup" `
  -VMScaleSetName "myScaleSet" `
  -VirtualMachineScaleSet $vmss

Membersihkan sumber daya

Untuk menghapus set skala dan sumber daya disk, hapus grup sumber daya dan semua sumber dayanya dengan Remove-AzResourceGroup. 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

Dalam tutorial ini, Anda belajar cara membuat dan menggunakan disk dengan set skala dengan antarmuka tingkat panggilan Azure PowerShell:

  • Disk OS dan disk sementara
  • Disk data
  • Disk Standar dan Premium
  • Performa disk
  • Memasang dan menyiapkan disk data

Lanjutkan ke tutorial berikutnya untuk mempelajari cara menggunakan citra kustom untuk instans komputer virtual set skala Anda.