Код: Выделить всё
ISnapshot snapshot = azure.Snapshots.GetById(snapshotId);
Console.WriteLine("Creating os disk for vm...");
IDisk disk = azure.Disks.Define(vmOSDiskName)
.WithRegion(vmRegion)
.WithExistingResourceGroup(vmResourceGroupName)
.WithWindowsFromSnapshot(snapshot)
.WithSizeInGB(128)
.WithSku(DiskSkuTypes.SStandardSSDLRS)
.Create();
if (disk != null)
{
Console.WriteLine("Creating virtual machine from Snapshot...");
IVirtualMachine vm = await azure.VirtualMachines.Define(vmName)
.WithRegion(vmRegion)
.WithExistingResourceGroup(vmResourceGroupName)
.WithExistingPrimaryNetworkInterface(networkInterface)
.WithSpecializedOSDisk(disk, OperatingSystemTypes.Windows)
.WithSize(VirtualMachineSizeTypes.StandardE2sV3)
.CreateAsync();
return vm;
}
else
{
Console.WriteLine("Unable to create os disk for vm...");
}
Код: Выделить всё
$snapshot = Get-AzSnapshot -ResourceGroupName $resourceGroupName -SnapshotName $snapshotName
Write-Host "Creating Disk Config"
$diskConfig = New-AzDiskConfig -AccountType StandardSSD_LRS -Location $snapshot.Location -SourceResourceId $snapshot.Id -CreateOption Copy
Write-Host "Creating OS Disk"
$disk = New-AzDisk -Disk $diskConfig -ResourceGroupName $resourceGroupName -DiskName $osDiskName
#Initialize virtual machine configuration
Write-Host "Creating VM Config"
$VirtualMachine = New-AzVMConfig -VMName $virtualMachineName -VMSize $virtualMachineSize
Write-Host "Updating VM config with OS Disk"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -ManagedDiskId $disk.Id -CreateOption Attach -Windows
Write-Host "Creating virtual machine and powering on"
New-AzVM -VM $VirtualMachine -ResourceGroupName $resourceGroupName -Location $snapshot.Location
Есть ли у Azure.ResourceManager.Compute возможность возможность это сделать и есть ли примеры кода для этого?
Я пытаюсь перейти с Microsoft.Azure.Management.Compute.Fluent, который устарел, на Azure.ResourceManager.Compute, но образцы и документация отсутствуют.
Подробнее здесь: https://stackoverflow.com/questions/785 ... n-existing