Partilhar via


Criar um disco gerido a partir de um instantâneo com o PowerShell

Este script cria um disco gerido a partir de um instantâneo. Utiliza-o para restaurar uma máquina virtual a partir de instantâneos do SO e discos de dados. Crie discos do SO e discos geridos de dados a partir dos respetivos instantâneos e, em seguida, crie uma nova máquina virtual ao anexar discos geridos. Também pode restaurar discos de dados de uma VM existente ao anexar discos de dados criados a partir de instantâneos.

Se não tiver uma subscrição do Azure, crie uma conta gratuita do Azure antes de começar.

Script de exemplo

#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

Impacto no desempenho - processo de cópia em segundo plano

Quando você cria um disco gerenciado a partir de um instantâneo, ele inicia um processo de cópia em segundo plano. Você pode anexar um disco a uma VM enquanto esse processo está em execução, mas sofrerá impacto no desempenho (os discos 4k terão impacto de leitura, 512e experimentarão impacto de leitura e gravação). Para Ultra Disks e Premium SSD v2, você pode verificar o status do processo de cópia em segundo plano com a CLI do Azure. Atualmente, isso não é suportado com o módulo do Azure PowerShell.

Importante

Não é possível usar as seções a seguir para obter o status do processo de cópia em segundo plano para tipos de disco diferentes de Ultra Disk ou SSD Premium v2. Outros tipos de disco sempre relatarão 100%.

Explicação do script

Este script utiliza os seguintes comandos para criar um disco gerido a partir de um instantâneo. Cada comando na tabela liga à documentação específica do comando.

Comando Notas
Get-AzSnapshot Obtém as propriedades do instantâneo.
New-AzDiskConfig Cria a configuração de disco que é utilizada para a criação do disco. Inclui o Id de recurso do instantâneo principal, a localização que seja a mesma que a localização do instantâneo principal e o tipo de armazenamento.
Novo-AzDisk Cria um disco com a configuração de disco, o nome do disco e o nome do grupo de recursos transmitidos como parâmetros.

Próximos passos

Criar uma máquina virtual a partir de um disco gerido

Para obter mais informações sobre o módulo do Azure PowerShell, veja Documentação do Azure PowerShell.

Pode ver exemplos adicionais de scripts do PowerShell da máquina virtual na Documentação da VM Windows do Azure.