Создание управляемого диска из моментального снимка с помощью PowerShell

Этот сценарий создает управляемый диск на основе моментального снимка. Его можно использовать для восстановления виртуальной машины из моментальных снимков ОС и дисков данных. Создайте управляемые диски для данных и ОС на основе соответствующих моментальных снимков, а затем создайте новую виртуальную машину, подключив к ней эти управляемые диски. Кроме того, вы можете восстановить диски данных существующей виртуальной машины, подключив диски данных, созданные из моментальных снимков.

Если у вас нет аккаунта Azure, создайте бесплатную учетную запись перед началом.

Пример скрипта

#Provide the subscription Id
$subscriptionId = 'yourSubscriptionId'

#Provide the name of your resource group
$resourceGroupName ='yourResourceGroupName'

#Provide the name of the snapshot that will be used to create Managed Disks
$snapshotName = 'yourSnapshotName'

#Provide the name of the Managed Disk
$diskName = 'yourManagedDiskName'

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

#Provide the storage type for Managed Disk. Acceptable values are Standard_LRS, Premium_LRS, PremiumV2_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS and StandardSSD_ZRS.
$storageType = 'Premium_LRS'

#Required for Premium SSD v2 and Ultra Disks
#Provide the Availability Zone you'd like the disk to be created in, default is 1
$zone=1

#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
$location = 'westus'

#Set the context to the subscription Id where Managed Disk will be created
Select-AzSubscription -SubscriptionId $SubscriptionId

$snapshot = Get-AzSnapshot -ResourceGroupName $resourceGroupName -SnapshotName $snapshotName 

#If you're creating a Premium SSD v2 or an Ultra Disk, add "-Zone $zone" to the end of the command
$diskConfig = New-AzDiskConfig -SkuName $storageType -Location $location -CreateOption Copy -SourceResourceId $snapshot.Id -DiskSizeGB $diskSize
 
New-AzDisk -Disk $diskConfig -ResourceGroupName $resourceGroupName -DiskName $diskName

Влияние на производительность — фоновый процесс копирования

При создании управляемого диска из моментального снимка он запускает процесс фонового копирования. Вы можете подключить диск к виртуальной машине во время выполнения этого процесса, но это негативно отразится на производительности (на 4k дисках это отразится на чтении, а на 512e — как на чтении, так и на записи). Для дисков ценовой категории "Ультра" и SSD уровня "Премиум" версии 2 можно проверить состояние фонового копирования с помощью azure CLI или модуля Azure PowerShell. Вы можете проверить состояние процесса фонового копирования только для дисков типа Ultra или SSD Premium v2, другие типы дисков всегда показывают 100%.

Описание скрипта

Этот сценарий использует приведенные ниже команды для создания управляемого диска на основе моментального снимка. Для каждой команды в таблице приведены ссылки на соответствующую документацию.

Команда Примечания.
Get-AzSnapshot Возвращает свойства моментального снимка.
New-AzDiskConfig Создает конфигурацию диска, которая используется для создания диска. Он включает идентификатор ресурса родительского моментального снимка, местоположение, совпадающее с местоположением родительского моментального снимка, и тип хранилища.
New-AzDisk Создает диск с помощью конфигурации диска, имени диска и имени группы ресурсов, которые передаются в качестве параметров.

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

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

Дополнительные сведения о модуле Azure PowerShell см. в документации по Azure PowerShell.

Дополнительные примеры сценариев PowerShell для виртуальных машин представлены в документации по виртуальным машинам Azure под управлением Windows.