Bagikan melalui


Tutorial: Mengelola disk dengan Azure PowerShell

Komputer virtual (VM) Azure menggunakan disk untuk menyimpan sistem operasi (OS), aplikasi, dan data. Ketika Anda membuat komputer virtual, penting untuk memilih ukuran dan konfigurasi disk yang sesuai dengan beban kerja yang diharapkan.

Tutorial ini mencakup penyebaran dan pengelolaan disk VM. Dalam tutorial ini, Anda akan mempelajari cara:

  • Membuat, melampirkan, dan menginisialisasi disk data
  • Memverifikasi status disk
  • Menginisialisasi disk
  • Memperluas dan meningkatkan disk
  • Melepas dan menghapus disk

Prasyarat

Anda memerlukan akun Azure dengan langganan aktif. 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. Cuplikan layar yang menunjukkan contoh Try It for Azure Cloud Shell.
Buka https://shell.azure.com, atau pilih tombol Luncurkan Cloud Shell untuk membuka Cloud Shell di browser Anda. Tombol untuk meluncurkan Azure Cloud Shell.
Pilih tombol Cloud Shell pada bilah menu di kanan atas di portal Microsoft Azure. Cuplikan layar yang menunjukkan tombol Cloud Shell di portal Azure

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 VM

Latihan dalam tutorial ini membutuhkan VM. Ikuti langkah-langkah di bagian ini untuk membuat VM.

Sebelum Anda mulai, temukan variabel $azRegion ​​yang terletak di baris pertama kode sampel dan perbarui nilainya untuk mencerminkan wilayah yang Anda inginkan. Misalnya, untuk menentukan wilayah US Tengah, gunakan $azRegion = "Central US". Selanjutnya, gunakan kode untuk menyebarkan VM dalam grup sumber daya baru. Anda diminta memasukkan nilai nama pengguna dan kata sandi untuk akun administrator lokal VM.

$azRegion = "[Your Region]"
$azResourceGroup = "myDemoResourceGroup"
$azVMName = "myDemoVM"
$azDataDiskName = "myDemoDataDisk"

New-AzVm `
    -Location $azRegion `
    -ResourceGroupName $azResourceGroup `
    -Name $azVMName `
    -Size "Standard_D2s_v3" `
    -VirtualNetworkName "myDemoVnet" `
    -SubnetName "myDemoSubnet" `
    -SecurityGroupName "myDemoNetworkSecurityGroup" `
    -PublicIpAddressName "myDemoPublicIpAddress"

Output mengonfirmasi bahwa VM berhasil dibuat.

ResourceGroupName        : myDemoResourceGroup
Id                       : /subscriptions/{GUID}/resourceGroups/myDemoResourceGroup/providers/Microsoft.Compute/virtualMachines/myDemoTestVM
VmId                     : [{GUID}]
Name                     : myDemoVM
Type                     : Microsoft.Compute/virtualMachines
Location                 : centralus
Tags                     : {}
HardwareProfile          : {VmSize}
NetworkProfile           : {NetworkInterfaces}
OSProfile                : {ComputerName, AdminUsername, WindowsConfiguration, AllowExtensionOperations, RequireGuestProvisionSignal}
ProvisioningState        : Succeeded
StorageProfile           : {ImageReference, OsDisk, DataDisks}
FullyQualifiedDomainName : mydemovm-abc123.Central US.cloudapp.azure.com

VM disediakan, dan dua disk dibuat dan dilampirkan secara otomatis.

  • Disk sistem operasi, yang menghosting sistem operasi komputer virtual.
  • Disk sementara, yang terutama digunakan untuk operasi seperti pemrosesan data sementara.

Menambahkan disk data

Kami menyarankan agar Anda memisahkan aplikasi dan data pengguna dari data terkait OS jika memungkinkan. Jika perlu menyimpan data pengguna atau aplikasi di VM, Anda biasanya akan membuat dan melampirkan disk data tambahan.

Ikuti langkah-langkah di bagian ini untuk membuat, melampirkan, dan menginisialisasi disk data di VM.

Menambahkan disk data

Bagian ini memandu Anda membuat disk data.

  1. Sebelum disk data dapat dibuat, Anda harus terlebih dahulu membuat objek disk. Kode sampel berikut menggunakan cmdlet New-AzDiskConfig untuk mengonfigurasi objek disk.

    $diskConfig = New-AzDiskConfig `
        -Location $azRegion `
        -CreateOption Empty `
        -DiskSizeGB 128 `
        -SkuName "Standard_LRS"
    
  2. Setelah objek disk dibuat, gunakan cmdlet New-AzDisk untuk menyediakan disk data.

    $dataDisk = New-AzDisk `
        -ResourceGroupName $azResourceGroup `
        -DiskName $azDataDiskName `
        -Disk $diskConfig
    

    Anda dapat menggunakan cmdlet Get-AzDisk ​​​​untuk memverifikasi bahwa disk telah dibuat.

    Get-AzDisk `
        -ResourceGroupName $azResourceGroup `
        -DiskName $azDataDiskName
    

    Dalam contoh ini, output mengonfirmasi bahwa disk telah dibuat. Nilai properti DiskState dan ManagedBy mengonfirmasi bahwa disk belum dilampirkan.

    ResourceGroupName            : myDemoResourceGroup
    ManagedBy                    :
    ManagedByExtended            : {}
    OsType                       :
    DiskSizeGB                   : 128
    DiskSizeBytes                : 137438953472
    ProvisioningState            : Succeeded
    DiskIOPSReadWrite            : 500
    DiskMBpsReadWrite            : 60
    DiskState                    : Unattached
    Name                         : myDemoDataDisk
    

Melampirkan disk data

Disk data harus dilampirkan ke VM sebelum VM dapat mengaksesnya. Selesaikan langkah-langkah di bagian ini guna membuat referensi untuk VM, menyambungkan disk, dan memperbarui konfigurasi VM.

  1. Dapatkan VM yang akan Anda lampirkan disk datanya. Kode sampel berikut menggunakan cmdlet Get-AzVM untuk membuat referensi ke VM.

    $vm = Get-AzVM `
        -ResourceGroupName $azResourceGroup `
        -Name $azVMName
    
  2. Selanjutnya, lampirkan disk data ke konfigurasi VM dengan cmdlet Add-AzVMDataDisk.

    $vm = Add-AzVMDataDisk `
        -VM $vm `
        -Name $azDataDiskName `
        -CreateOption Attach `
        -ManagedDiskId $dataDisk.Id `
        -Lun 1
    
  3. Terakhir, perbarui konfigurasi VM dengan cmdlet Update-AzVM.

    Update-AzVM `
        -ResourceGroupName $azResourceGroup `
        -VM $vm
    

    Setelah jeda singkat, output mengonfirmasi bahwa disk data berhasil dilampirkan.

    RequestId IsSuccessStatusCode StatusCode ReasonPhrase
    --------- ------------------- ---------- ------------
                             True         OK OK
    

Menginisialisasi disk data

Setelah disk data dilampirkan ke VM, OS perlu dikonfigurasi untuk menggunakan disk. Bagian berikut memberikan panduan tentang cara menyambungkan ke VM jarak jauh dan mengonfigurasi disk pertama yang ditambahkan.

  1. Masuk ke portal Azure.

  2. Temukan VM tempat Anda melampirkan disk data. Buat koneksi Protokol Desktop Jarak Jauh (RDP) dan masuk sebagai administrator lokal.

  3. Setelah Anda membuat koneksi RDP ke VM jarak jauh, pilih menu Start Windows. Masukkan PowerShell di kotak penelusuran dan pilih Windows PowerShell untuk membuka jendela PowerShell.

    Gambar jendela koneksi desktop jarak jauh.

  4. Di jendela PowerShell yang terbuka, jalankan skrip berikut.

    Get-Disk | Where PartitionStyle -eq 'raw' |
        Initialize-Disk -PartitionStyle MBR -PassThru |
        New-Partition -AssignDriveLetter -UseMaximumSize |
        Format-Volume -FileSystem NTFS -NewFileSystemLabel "myDemoDataDisk" -Confirm:$false
    

    Output mengonfirmasi bahwa inisialisasi berhasil.

    DriveLetter FileSystemLabel FileSystem DriveType HealthStatus OperationalStatus SizeRemaining   Size
    ----------- --------------- ---------- --------- ------------ ----------------- -------------   ----
    F           myDemoDataDisk  NTFS       Fixed     Healthy      OK                    127.89 GB 128 GB
    

Memperluas disk

Anda dapat memperluas disk Azure untuk menyediakan kapasitas penyimpanan ekstra saat VM Anda kekurangan ruang disk yang tersedia.

Beberapa skenario memerlukan data untuk disimpan pada disk OS. Misalnya, Anda mungkin diminta untuk mendukung aplikasi warisan yang memasang komponen pada drive OS. Anda mungkin juga perlu memigrasikan VM atau PC fisik lokal dengan drive OS yang lebih besar. Dalam kasus semacam ini, Anda mungkin perlu memperluas disk OS VM.

Menyusutkan disk yang ada tidak didukung dan berpotensi mengakibatkan hilangnya data.

Memperbarui ukuran disk

Ikuti langkah-langkah di bawah ini untuk mengubah ukuran disk OS atau disk data.

  1. Pilih VM yang berisi disk yang akan diubah ukurannya dengan cmdlet Get-AzVM.

     $vm = Get-AzVM `
       -ResourceGroupName $azResourceGroup `
       -Name $azVMName
    
  2. Sebelum dapat mengubah ukuran disk VM, Anda harus menghentikan VM. Gunakan cmdlet Stop-AzVM untuk menghentikan VM. Anda akan diminta untuk melakukan konfirmasi.

    Penting

    Sebelum Anda memulai penghentian VM, selalu konfirmasikan bahwa tidak ada sumber daya atau data penting yang dapat hilang.

    Stop-AzVM `
        -ResourceGroupName $azResourceGroup `
        -Name $azVMName
    

    Setelah jeda singkat, output mengonfirmasi bahwa komputer berhasil dihentikan.

    OperationId : abcd1234-ab12-cd34-123456abcdef
    Status      : Succeeded
    StartTime   : 9/13/2021 7:10:23 PM
    EndTime     : 9/13/2021 7:11:12 PM
    Error       :
    
  3. Setelah VM dihentikan, dapatkan referensi ke OS atau disk data yang dilampirkan ke VM dengan cmdlet Get-AzDisk.

    Contoh berikut memilih disk OS VM.

    $disk= Get-AzDisk `
        -ResourceGroupName $azResourceGroup `
        -DiskName $vm.StorageProfile.OsDisk.Name
    

    Contoh berikut memilih disk data pertama VM.

        $disk= Get-AzDisk `
            -ResourceGroupName $azResourceGroup `
            -DiskName $vm.StorageProfile.DataDisks[0].Name
    
  4. Sekarang setelah Anda memiliki referensi ke disk, tetapkan ukuran disk ke 250 GiB.

    Penting

    Ukuran baru harus lebih besar dari ukuran disk yang ada. Ukuran maksimum yang diizinkan adalah 4.095 GiB untuk disk OS.

    $disk.DiskSizeGB = 250
    
  5. Selanjutnya, perbarui gambar disk dengan cmdlet Update-AzDisk.

    Update-AzDisk `
        -ResourceGroupName $azResourceGroup `
        -Disk $disk -DiskName $disk.Name
    

    Gambar disk diperbarui, dan output mengonfirmasi ukuran baru disk.

    ResourceGroupName            : myDemoResourceGroup
    ManagedBy                    : /subscriptions/{GUID}/resourceGroups/myDemoResourceGroup/providers/Microsoft.Compute/virtualMachines/myDemoVM
    Sku                          : Microsoft.Azure.Management.Compute.Models.DiskSku
    TimeCreated                  : 9/135/2021 6:41:10 PM
    CreationData                 : Microsoft.Azure.Management.Compute.Models.CreationData
    DiskSizeGB                   : 250
    DiskSizeBytes                : 268435456000
    UniqueId                     : {GUID}
    ProvisioningState            : Succeeded
    DiskIOPSReadWrite            : 500
    DiskMBpsReadWrite            : 60
    DiskState                    : Reserved
    Encryption                   : Microsoft.Azure.Management.Compute.Models.Encryption
    Id                           : /subscriptions/{GUID}/resourceGroups/myDemoResourceGroup/providers/Microsoft.Compute/disks/myDemoDataDisk
    Name                         : myDemoDataDisk
    Type                         : Microsoft.Compute/disks
    Location                     : centralus
    
    
  6. Terakhir, hidupkan ulang VM dengan cmdlet Start-AzVM.

    Start-AzVM `
        -ResourceGroupName $azResourceGroup `
        -Name $azVMName
    

    Setelah jeda singkat, output mengonfirmasi bahwa komputer berhasil dihidupkan.

    OperationId : abcd1234-ab12-cd34-123456abcdef
    Status      : Succeeded
    StartTime   : 9/13/2021 7:44:54 PM
    EndTime     : 9/13/2021 7:45:15 PM
    Error       :
    

Memperluas volume disk di OS

Sebelum dapat memanfaatkan ukuran disk baru, Anda perlu memperluas volume di dalam OS. Ikuti langkah-langkah di bawah ini untuk memperluas volume disk dan memanfaatkan ukuran disk baru.

  1. Masuk ke portal Azure.

  2. Temukan VM tempat Anda melampirkan disk data. Buat koneksi Protokol Desktop Jarak Jauh (RDP) dan masuk. Jika Anda tidak lagi memiliki akses ke akun administratif, buat objek kredensial untuk nama pengguna dan kata sandi tertentu dengan cmdlet Get-Credential.

  3. Setelah Anda membuat koneksi RDP ke VM jarak jauh, pilih menu Start Windows. Masukkan PowerShell di kotak penelusuran dan pilih Windows PowerShell untuk membuka jendela PowerShell.

    Gambar jendela koneksi desktop jarak jauh.

  4. Buka PowerShell dan jalankan skrip berikut. Ubah nilai variabel -DriveLetter ​​yang sesuai. Misalnya, untuk mengubah ukuran partisi di drive F:, gunakan $driveLetter = "F".

    $driveLetter = "[Drive Letter]" 
    $size = (Get-PartitionSupportedSize -DriveLetter $driveLetter) 
    Resize-Partition `
        -DriveLetter $driveLetter `
        -Size $size.SizeMax
    
  5. Kecilkan jendela RDP dan beralihlah kembali ke Azure Cloud Shell. Gunakan cmdlet Get-AzDisk untuk memverifikasi bahwa disk berhasil diubah ukurannya.

    Get-AzDisk `
        -ResourceGroupName $azResourceGroup | Out-Host -Paging
    

Meningkatkan disk

Ada beberapa cara untuk merespons perubahan beban kerja organisasi Anda. Misalnya, Anda dapat memilih untuk meningkatkan HDD standar ke SSD premium untuk menangani peningkatan permintaan.

Ikuti langkah-langkah di bagian ini untuk meningkatkan disk yang dikelola dari standar ke premium.

  1. Pilih VM yang berisi disk yang akan Anda tingkatkan dengan cmdlet Get-AzVM.

     $vm = Get-AzVM `
       -ResourceGroupName $azResourceGroup `
       -Name $azVMName
    
  2. Sebelum dapat meningkatkan disk VM, Anda harus menghentikan VM. Gunakan cmdlet Stop-AzVM untuk menghentikan VM. Anda akan diminta untuk melakukan konfirmasi.

    Penting

    Sebelum Anda memulai penghentian VM, selalu konfirmasikan bahwa tidak ada sumber daya atau data penting yang dapat hilang.

    Stop-AzVM `
        -ResourceGroupName $azResourceGroup `
        -Name $azVMName
    

    Setelah jeda singkat, output mengonfirmasi bahwa komputer berhasil dihentikan.

    OperationId : abcd1234-ab12-cd34-123456abcdef
    Status      : Succeeded
    StartTime   : 9/13/2021 7:10:23 PM
    EndTime     : 9/13/2021 7:11:12 PM
    Error       :
    
  3. Setelah VM dihentikan, dapatkan referensi ke OS atau disk data yang dilampirkan ke VM dengan cmdlet Get-AzDisk.

    Contoh berikut memilih disk OS VM.

    $disk= Get-AzDisk `
        -ResourceGroupName $azResourceGroup `
        -DiskName $vm.StorageProfile.OsDisk.Name
    

    Contoh berikut memilih disk data pertama VM.

        $disk= Get-AzDisk `
            -ResourceGroupName $azResourceGroup `
            -DiskName $vm.StorageProfile.DataDisks[0].Name
    
  4. Sekarang setelah Anda memiliki referensi ke disk, tetapkan SKU disk ke Premium_LRS.

    $disk.Sku = [Microsoft.Azure.Management.Compute.Models.DiskSku]::new('Premium_LRS')
    
  5. Selanjutnya, perbarui gambar disk dengan cmdlet Update-AzDisk.

    Update-AzDisk `
        -ResourceGroupName $azResourceGroup `
        -Disk $disk -DiskName $disk.Name
    

    Gambar disk diperbarui. Gunakan kode contoh berikut untuk memvalidasi bahwa SKU disk telah ditingkatkan.

    $disk.Sku.Name
    

    Output mengonfirmasi SKU baru disk.

    Premium_LRS
    
  6. Terakhir, hidupkan ulang VM dengan cmdlet Start-AzVM.

    Start-AzVM `
        -ResourceGroupName $azResourceGroup `
        -Name $azVMName
    

    Setelah jeda singkat, output mengonfirmasi bahwa komputer berhasil dihidupkan.

    OperationId : abcd1234-ab12-cd34-123456abcdef
    Status      : Succeeded
    StartTime   : 9/13/2021 7:44:54 PM
    EndTime     : 9/13/2021 7:45:15 PM
    Error       :
    

Melepas disk data

Anda dapat melepaskan disk data dari VM ketika Anda ingin melampirkannya ke VM yang berbeda, atau ketika disk data tidak lagi diperlukan. Secara default, disk yang dilepas tidak dihapus untuk mencegah kehilangan data yang tidak disengaja. Disk yang dilepas akan terus dikenai biaya penyimpanan hingga disk tersebut dihapus.

  1. Pertama, pilih VM tempat disk dilampirkan dengan cmdlet Get-AzVM.

    $vm = Get-AzVM `
       -ResourceGroupName $azResourceGroup `
       -Name $azVMName
    
  2. Selanjutnya, lepaskan disk dari VM dengan cmdlet Remove-AzVMDataDisk.

    Remove-AzVMDataDisk `
        -VM $vm `
        -Name $azDataDiskName
    
  3. Perbarui status VM dengan cmdlet Update-AzVM untuk menghapus disk data.

    Update-AzVM `
        -ResourceGroupName $azResourceGroup `
        -VM $vm
    

    Setelah jeda singkat, output mengonfirmasi bahwa VM berhasil diperbarui.

    RequestId IsSuccessStatusCode StatusCode ReasonPhrase
    --------- ------------------- ---------- ------------
                             True         OK OK
    

Menghapus disk data

Saat Anda menghapus VM, disk data yang dilampirkan ke VM akan tetap disediakan dan terus dikenai biaya hingga disk data tersebut dihapus. Perilaku default ini membantu mencegah kehilangan data yang disebabkan oleh penghapusan yang tidak disengaja.

Anda dapat menggunakan skrip PowerShell sampel berikut untuk menghapus disk yang tidak dilampirkan. Pengambilan disk terbatas pada myDemoResourceGroup karena pengalihan -ResourceGroupName digunakan dengan Get-AzDisk cmdlet.

# Get all disks in resource group $azResourceGroup
$allDisks = Get-AzDisk -ResourceGroupName $azResourceGroup

# Determine the number of disks in the collection
if($allDisks.Count -ne 0) {

    Write-Host "Found $($allDisks.Count) disks."

    # Iterate through the collection
    foreach ($disk in $allDisks) {

        # Use the disk's "ManagedBy" property to determine if it is unattached
        if($disk.ManagedBy -eq $null) {

            # Confirm that the disk can be deleted
            Write-Host "Deleting unattached disk $($disk.Name)."
            $confirm = Read-Host "Continue? (Y/N)"
            if ($confirm.ToUpper() -ne 'Y') { break }
            else {

                # Delete the disk
                $disk | Remove-AzDisk -Force 
                Write-Host "Unattached disk $($disk.Name) deleted."
            }
        }
    }
}

Disk data yang tidak dilampirkan dihapus seperti yang ditunjukkan oleh output.

Name      : abcd1234-ab12-cd34-ef56-abcdef123456
StartTime : 9/13/2021 10:14:05 AM
EndTime   : 9/13/2021 10:14:35 AM
Status    : Succeeded
Error     :

Membersihkan sumber daya

Jika tidak lagi diperlukan, hapus grup sumber daya, VM, dan semua sumber daya terkait. Anda dapat menggunakan skrip PowerShell sampel berikut untuk menghapus grup sumber daya yang dibuat sebelumnya dalam tutorial ini.

Perhatian

Berhati-hatilah saat menghapus grup sumber daya. Untuk menghindari hilangnya data penting, selalu konfirmasikan bahwa tidak ada sumber daya atau data penting yang terdapat dalam grup sumber daya sebelum grup tersebut dihapus.

    Remove-AzResourceGroup -Name $azResourceGroup

Anda diminta untuk melakukan konfirmasi. Setelah jeda singkat, respons True mengonfirmasikan bahwa myDemoResourceGroup berhasil dihapus.

Confirm
Are you sure you want to remove resource group 'myDemoResourceGroup'
[Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): Y
True

Langkah berikutnya

Dalam tutorial ini, Anda mempelajari cara:

  • Membuat, melampirkan, dan menginisialisasi disk data
  • Memverifikasi status disk
  • Menginisialisasi disk
  • Memperluas dan meningkatkan disk
  • Melepas dan menghapus disk

Lanjutkan ke tutorial berikutnya untuk mempelajari cara mengotomatiskan konfigurasi VM.