Azure yönetilen diskinin disk türünü değiştirme

Şunlar için geçerlidir: ✔️ Linux VM'leri ✔️ Windows

Azure tarafından yönetilen beş disk türü vardır: Azure Ultra Diskler, Premium SSD v2, premium SSD, Standart SSD ve Standart HDD. Performans gereksinimlerinize göre Premium SSD, Standart SSD ve Standart HDD arasında kolayca geçiş yapabilirsiniz. Premium SSD ve Standart SSD, Alanlar arası yedekli depolama ile de kullanılabilir. Henüz ultra diskten veya Premium SSD v2'den geçiş yapamazsınız, mevcut bir diskin anlık görüntüsüyle yeni bir tane dağıtmanız gerekir. Ayrıntılar için bkz . Premium SSD v2 veya Ultra Disk'e geçiş.

Bu işlevsellik yönetilmeyen diskler için desteklenmez. Ancak yönetilmeyen bir diski CLI veya PowerShell ile yönetilen diske kolayca dönüştürerek disk türleri arasında geçiş yapabilirsiniz.

Başlamadan önce

Dönüştürme işlemi, sanal makinenin (VM) yeniden başlatılmasını gerektirdiğinden, diskinizin geçişini önceden var olan bir bakım penceresi sırasında zamanlayın.

Kısıtlamalar

  • Disk türünü günde yalnızca iki kez değiştirebilirsiniz.
  • Yalnızca yönetilen disklerin disk türünü değiştirebilirsiniz. Diskiniz yönetilmezse, disk türleri arasında geçiş yapmak için cli veya PowerShell ile yönetilen diske dönüştürün.

Vm'nin tüm yönetilen disklerini bir hesaptan diğerine değiştirme

Bu örnekte, bir VM'nin tüm disklerinin premium depolamaya nasıl dönüştürüldüğü gösterilmektedir. Ancak, bu örnekteki $storageType değişkenini değiştirerek VM'nin disk türünü standart SSD veya standart HDD'ye dönüştürebilirsiniz. Premium yönetilen diskleri kullanmak için VM'nizin, Premium depolamayı destekleyen bir VM boyutu kullanması gerekir. Bu örnek ayrıca premium depolamayı destekleyen bir boyuta geçer:

# Name of the resource group that contains the VM
$rgName = 'yourResourceGroup'

# Name of the your virtual machine
$vmName = 'yourVM'

# Choose between Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_ZRS, and Premium_LRS based on your scenario
$storageType = 'Premium_LRS'

# Premium capable size
# Required only if converting storage from Standard to Premium
$size = 'Standard_DS2_v2'

# Stop and deallocate the VM before changing the size
Stop-AzVM -ResourceGroupName $rgName -Name $vmName -Force

$vm = Get-AzVM -Name $vmName -resourceGroupName $rgName

# Change the VM size to a size that supports Premium storage
# Skip this step if converting storage from Premium to Standard
$vm.HardwareProfile.VmSize = $size
Update-AzVM -VM $vm -ResourceGroupName $rgName

# Get all disks in the resource group of the VM
$vmDisks = Get-AzDisk -ResourceGroupName $rgName 

# For disks that belong to the selected VM, convert to Premium storage
foreach ($disk in $vmDisks)
{
	if ($disk.ManagedBy -eq $vm.Id)
	{
		$disk.Sku = [Microsoft.Azure.Management.Compute.Models.DiskSku]::new($storageType)
		$disk | Update-AzDisk
	}
}

Start-AzVM -ResourceGroupName $rgName -Name $vmName

Tek bir yönetilen diskin türünü değiştirme

Geliştirme/test iş yükünüze yönelik maliyetlerinizi azaltmak için Standart ve Premium disklerin bir karışımını kullanmak isteyebilirsiniz. Yalnızca daha iyi performans gerektiren diskleri yükseltmeyi seçebilirsiniz. Bu örnekte, tek bir VM diskin Standart depolamadan Premium depolamaya nasıl dönüştürüldüğü gösterilmektedir. Ancak, bu örnekteki $storageType değişkenini değiştirerek VM'nin disk türünü standart SSD veya standart HDD'ye dönüştürebilirsiniz. Premium yönetilen diskleri kullanmak için VM'nizin, Premium depolamayı destekleyen bir VM boyutu kullanması gerekir. Bu örnekleri, bir diski Yerel olarak yedekli depolama (LRS) diskinden Alanlar arası yedekli depolama (ZRS) diskine veya tam tersi olarak değiştirmek için de kullanabilirsiniz. Bu örnek, Premium depolamayı destekleyen bir boyuta nasıl geçildiğini de gösterir:


$diskName = 'yourDiskName'
# resource group that contains the managed disk
$rgName = 'yourResourceGroupName'
# Choose between Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_ZRS, and Premium_LRS based on your scenario
$storageType = 'Premium_LRS'
# Premium capable size 
$size = 'Standard_DS2_v2'

$disk = Get-AzDisk -DiskName $diskName -ResourceGroupName $rgName

# Get parent VM resource
$vmResource = Get-AzResource -ResourceId $disk.ManagedBy

# Stop and deallocate the VM before changing the storage type
Stop-AzVM -ResourceGroupName $vmResource.ResourceGroupName -Name $vmResource.Name -Force

$vm = Get-AzVM -ResourceGroupName $vmResource.ResourceGroupName -Name $vmResource.Name 

# Change the VM size to a size that supports Premium storage
# Skip this step if converting storage from Premium to Standard
$vm.HardwareProfile.VmSize = $size
Update-AzVM -VM $vm -ResourceGroupName $rgName

# Update the storage type
$disk.Sku = [Microsoft.Azure.Management.Compute.Models.DiskSku]::new($storageType)
$disk | Update-AzDisk

Start-AzVM -ResourceGroupName $vm.ResourceGroupName -Name $vm.Name

Premium SSD v2 veya Ultra Disk'e geçiş

Şu anda mevcut bir diski yalnızca Standart Depolama (Artımlı Standart HDD Anlık Görüntüsü) depolanan anlık görüntüler aracılığıyla Ultra Disk'e veya Premium SSD v2'ye geçirebilirsiniz. Premium depolamada ve diğer seçeneklerde depolanan anlık görüntülerle geçiş desteklenmez.

Hem Premium SSD v2 disklerinin hem de Ultra Disklerin kendi kısıtlamaları vardır. Örneğin, ikisi de işletim sistemi diski olarak kullanılamaz ve tüm bölgelerde kullanılamaz. Daha fazla bilgi için makalelerinin Premium SSD v2 sınırlamaları ve Ultra Disk GA kapsamı ve sınırlamaları bölümlerine bakın.

Önemli

Standart HDD, Standart SSD veya Premium SSD'yi Ultra Disk veya Premium SSD v2'ye geçirirken mantıksal kesim boyutu 512 olmalıdır.

Aşağıdaki betik Standart HDD, Standart SSD veya Premium SSD'nin anlık görüntüsünü Ultra Diske veya Premium SSD v2'ye geçirir.

$diskName = "yourDiskNameHere"
$resourceGroupName = "yourResourceGroupNameHere"
$snapshotName = "yourDesiredSnapshotNameHere"

# Valid values are 1, 2, or 3
$zone = "yourZoneNumber"

#Provide the size of the disks in GB. It should be greater than the VHD file size.
$diskSize = '128'

#Provide the storage type. Use PremiumV2_LRS or UltraSSD_LRS.
$storageType = 'PremiumV2_LRS'

#Provide the Azure region (e.g. westus) where Managed Disks will be located.
#This location should be same as the snapshot location
#Get all the Azure location using command below:
#Get-AzLocation

#Select the same location as the current disk
#Note that Premium SSD v2 and Ultra Disks are only supported in a select number of regions
$location = 'eastus'

#When migrating a Standard HDD, Standard SSD, or Premium SSD to either an Ultra Disk or Premium SSD v2, the logical sector size must be 512
$logicalSectorSize=512

# Get the disk that you need to backup by creating an incremental snapshot
$yourDisk = Get-AzDisk -DiskName $diskName -ResourceGroupName $resourceGroupName

# Create an incremental snapshot by setting the SourceUri property with the value of the Id property of the disk
$snapshotConfig=New-AzSnapshotConfig -SourceUri $yourDisk.Id -Location $yourDisk.Location -CreateOption Copy -Incremental 
$snapshot = New-AzSnapshot -ResourceGroupName $resourceGroupName -SnapshotName $snapshotName -Snapshot $snapshotConfig

$diskConfig = New-AzDiskConfig -SkuName $storageType -Location $location -CreateOption Copy -SourceResourceId $snapshot.Id -DiskSizeGB $diskSize -LogicalSectorSize $logicalSectorSize -Zone $zone
 
New-AzDisk -Disk $diskConfig -ResourceGroupName $resourceGroupName -DiskName $diskName

Sonraki adımlar

Anlık görüntü kullanarak vm'nin salt okunur bir kopyasını oluşturun.