Поделиться через


Преобразование типа диска управляемого диска Azure

Область применения: ✔️ Виртуальные машины Linux ✔️ Windows

Существует пять типов дисков управляемых дисков Azure: диски Azure Ценовой категории "Ультра", SSD уровня "Премиум" версии 2, SSD уровня "Премиум", SSD уровня "Стандартный" и "Стандартный" HDD. Вы можете легко переключаться между SSD уровня "Премиум", "Стандартный" и "Стандартный HDD" на основе ваших потребностей в производительности. SSD уровня "Премиум" и SSD уровня "Стандартный" также доступны в хранилище, избыточном между зонами. В большинстве случаев вы еще не можете переключаться с диска категории "Ультра" или "Премиум" ssd версии 2, необходимо развернуть новый с моментальным снимком существующего диска. Однако в качестве предварительной версии можно переключаться с существующих дисков на SSD уровня "Премиум" версии 2. Дополнительные сведения см. в разделе "Преобразование дисков SSD уровня "Премиум" версии 2 (предварительная версия ).

Эта функция не поддерживается для неуправляемых дисков. Но вы можете легко преобразовать неуправляемый диск в управляемый диск с помощью ИНТЕРФЕЙСА командной строки или PowerShell , чтобы иметь возможность переключаться между типами дисков.

Подготовка к работе

Так как преобразование требует перезагрузки виртуальной машины, запланируйте перенос диска на предварительно заданный период обслуживания.

Ограничения

  • Тип диска можно изменять только дважды в день.
  • Изменить тип можно только для управляемых дисков. Если диск неуправляем, преобразуйте его в управляемый диск с помощью интерфейса командной строки или PowerShell для переключения между типами дисков.

Преобразование дисков SSD уровня "Премиум" версии 2 (предварительная версия)

Как общедоступная предварительная версия, можно переключить существующие диски на диски SSD уровня "Премиум" версии 2 так же, как и для других типов дисков. Диски SSD уровня "Премиум" версии 2 имеют некоторые ограничения, см . раздел ограничений SSD уровня "Премиум" версии 2, чтобы узнать больше.

Предварительная версия, позволяющая напрямую переключиться на диски SSD уровня Premium версии 2, имеет некоторые дополнительные ограничения и региональные ограничения:

  • Вы не можете переключить диск ОС на диск SSD уровня "Премиум" версии 2.
  • Существующие диски можно переключать только на 512 дисков SSD уровня Premium версии 2.
  • Одновременно на каждую подписку можно выполнять только 40 преобразований.
  • Если существующий диск является общим диском, необходимо отключить все виртуальные машины перед переходом на SSD класса Premium версии 2.
  • Если существующий диск использует кэширование узла, необходимо установить его на нет , прежде чем переходить на SSD уровня "Премиум" версии 2.
  • Если существующий диск использует ускорение, необходимо отключить его перед переходом на SSD уровня Premium версии 2.
  • Если существующий диск использует двойное шифрование, необходимо переключиться на один из вариантов шифрования перед переходом на SSD класса Premium версии 2.
  • Вы не можете напрямую переключаться с SSD уровня "Премиум" версии 2 на другой тип диска. Если вы хотите изменить SSD уровня "Премиум" версии 2 на другой тип диска, необходимо перенести их с помощью моментальных снимков.
  • Вы не можете напрямую переключаться с дисков ценовой категории "Ультра" на диски SSD уровня "Премиум" версии 2, необходимо перенести с помощью моментальных снимков.
  • Если вы используете rest API, необходимо использовать версию API или более новую для 2020-12-01 поставщика вычислительных ресурсов и поставщика ресурсов диска.

В настоящее время эта предварительная версия доступна только в следующих регионах:

  • Центральная часть США
  • Восточная часть США
  • Восточная часть США 2
  • Западная часть США
  • Западная Европа
  • Северная Европа
  • западная часть США 2
  • Восточная Азия
  • Юго-Восточная Азия
  • Центральная Индия
  • Центральная Франция

Отключение кэширования узла

Если диск использует кэширование узла, необходимо отключить его перед преобразованием в SSD класса Premium версии 2. Для идентификации LUN диска и отключения кэширования узла можно использовать следующий скрипт CLI. Замените и nameOfYourVM на свои yourResourceGroup собственные значения, а затем запустите скрипт.

$myRG="yourResourceGroup"
$myVM="nameOfYourVM"

lun=$(az vm show -g $myRG -n $myVM --query "storageProfile.dataDisks[].lun")

az vm update --resource-group $myRG --name $myVM --disk-caching $lun=None

Отключение ускорения

Если диск использует ускорение, необходимо отключить его перед преобразованием в SSD уровня "Премиум" версии 2. Если вы включили ускорение в течение 12 часов, необходимо дождаться 13-го часа или более поздней версии, чтобы отключить его.

Для отключения ускорения диска можно использовать следующую команду: az disk update --name "yourDiskNameHere" --resource-group "yourRGNameHere" --enable-bursting false

Отключение двойного шифрования

Если диск использует двойное шифрование, его необходимо отключить перед преобразованием в SSD уровня "Премиум" версии 2. Следующая команда позволяет изменить диск с двойного шифрования на шифрование неактивных с помощью ключей, управляемых клиентом:

az disk-encryption-set update --name "nameOfYourDiskEncryptionSetHere" --resource-group "yourRGNameHere" --key-url yourKeyURL --source-vault "yourKeyVaultName" --encryption-type EncryptionAtRestWithCustomerKey

Переключение всех управляемых дисков виртуальной машины из одной учетной записи в другую

В этом примере показано, как преобразовать все диски виртуальной машины в хранилище класса Premium. Изменив переменную $storageType в этом примере, можно также преобразовать диски в SSD цен. категории "Стандартный" или HDD цен. категории "Стандартный". Чтобы использовать управляемые диски класса Premium, необходимо использовать размер виртуальной машины, поддерживающий хранилище класса Premium. В этом примере также выполняется переключение на размер, поддерживающий хранилище уровня "Премиум".

# 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

Изменение типа отдельного управляемого диска

Для рабочей нагрузки разработки и тестирования может потребоваться сочетание дисков категорий "Стандартный" и "Премиум", чтобы сократить затраты. Можно выбрать преобразование только тех дисков, для которых требуется обеспечить более высокую производительность. В этом примере показано, как преобразовать один диск виртуальной машины из категории "Стандартный" в "Премиум". Изменив переменную $storageType в этом примере, можно также преобразовать диски в SSD цен. категории "Стандартный" или HDD цен. категории "Стандартный". Чтобы использовать управляемые диски класса Premium, необходимо использовать размер виртуальной машины, поддерживающий хранилище класса Premium. Эти примеры также можно использовать для изменения диска с диска локально избыточного хранилища (LRS) на диск, избыточный по зонам (ZRS), или наоборот. В этом примере также показано переключение на размер, поддерживающий хранилище класса Premium.

Примечание.

В общедоступной предварительной версии можно изменить тип существующего диска на диск SSD уровня "Премиум" версии 2 так же, как и для других типов дисков. Сведения о регистрации для предварительной версии см. в статье "Миграция SSD уровня "Премиум" версии 2 (предварительная версия).


$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

Миграция на SSD уровня "Премиум" версии 2 или "Ультра" с помощью моментальных снимков

Примечание.

В общедоступной предварительной версии можно изменить тип существующего диска на диск SSD уровня "Премиум" версии 2 так же, как и для других типов дисков. Сведения о регистрации для предварительной версии см. в статье "Миграция SSD уровня "Премиум" версии 2 (предварительная версия).

В настоящее время вы можете перенести существующий диск только на SSD уровня "Премиум" версии 2 или на диск категории "Ультра", используя моментальные снимки, хранящиеся в хранилище уровня "Стандартный" (добавочный моментальный снимок HDD уровня "Стандартный"). Миграция с моментальными снимками, хранящимися в хранилище класса Premium, и другие параметры не поддерживаются. Миграция с моментального снимка с SSD уровня "Премиум" версии 2 или "Ультра" на SSD уровня "Премиум" версии 1, SSD уровня "Стандартный" и "Стандартный" hdD не поддерживается.

Диски SSD ценовой категории "Премиум" версии 2 и "Ультра" имеют собственный набор ограничений. Например, ни в качестве диска ОС нельзя использовать, а также не доступны во всех регионах. Дополнительные сведения см. в разделах об ограничениях SSD уровня "Премиум" версии 2 и области общедоступной версии 2.

Внимание

При переносе SSD уровня "Стандартный", "Стандартный" или "Премиум" SSD на диск "Ультра" или "Премиум SSD версии 2" размер логического сектора должен составлять 512.

Следующий скрипт переносит моментальный снимок диска HDD уровня "Стандартный", "Стандартный" или SSD уровня "Премиум" на диск категории "Ультра" или SSD уровня "Премиум" версии 2.

$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

Следующие шаги

Создайте копию виртуальной машины, доступную только для чтения, с помощью моментальных снимков.