Crie um instantâneo de um VHD para criar vários discos gerenciados idênticos em um pequeno período de tempo com o PowerShell (Windows)
Este script cria um instantâneo a partir de um ficheiro VHD numa conta de armazenamento numa mesma subscrição ou numa subscrição diferente. Utilize este script para importar um VHD especializado (não generalizado/processado pelo Sysprep) para um instantâneo e, em seguida, utilize o instantâneo para criar vários discos geridos idênticos num pequeno período de tempo. Além disso, utilize-o para importar um VHD de dados para um instantâneo e, em seguida, utilize o instantâneo para criar vários discos geridos num pequeno período de tempo.
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 where snapshot will be created
$subscriptionId = 'yourSubscriptionId'
#Provide the name of your resource group where snapshot will be created.
$resourceGroupName ='yourResourceGroupName'
#Provide the name of the snapshot
$snapshotName = 'yourSnapshotName'
#Provide the storage type for snapshot. PremiumLRS or StandardLRS.
$storageType = 'StandardLRS'
#Provide the Azure region (e.g. westus) where snapshot will be located.
#This location should be same as the storage account location where VHD file is stored
#Get all the Azure location using command below:
#Get-AzLocation
$location = 'westus'
#Provide the URI of the VHD file (page blob) in a storage account. Please not that this is NOT the SAS URI of the storage container where VHD file is stored.
#e.g. https://contosostorageaccount1.blob.core.windows.net/vhds/contosovhd123.vhd
#Note: VHD file can be deleted as soon as Managed Disk is created.
$sourceVHDURI = 'https://yourStorageAccountName.blob.core.windows.net/vhds/yourVHDName.vhd'
#Provide the resource Id of the storage account where VHD file is stored.
#e.g. /subscriptions/6582b1g7-e212-446b-b509-314e17e1efb0/resourceGroups/MDDemo/providers/Microsoft.Storage/storageAccounts/contosostorageaccount1
#This is an optional parameter if you are creating snapshot in the same subscription
$storageAccountId = '/subscriptions/yourSubscriptionId/resourceGroups/yourResourceGroupName/providers/Microsoft.Storage/storageAccounts/yourStorageAccountName'
#Set the context to the subscription Id where Managed Disk will be created
Select-AzSubscription -SubscriptionId $SubscriptionId
$snapshotConfig = New-AzSnapshotConfig -AccountType $storageType -Location $location -CreateOption Import -StorageAccountId $storageAccountId -SourceUri $sourceVHDURI
New-AzSnapshot -Snapshot $snapshotConfig -ResourceGroupName $resourceGroupName -SnapshotName $snapshotName
Próximos passos
Criar um disco gerido a partir de um instantâneo
Criar uma máquina virtual ao anexar um disco gerido como disco do SO
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.