如何使用 Powershell 创建具有 HDD OS 磁盘的新 VM



我想为要部署的新虚拟机选择 HDD 操作系统磁盘。我尝试使用"New-AzDisk"Set-AzVMOSDisk"和"New-AzVM"powershell命令,但收到错误:New-AzVM : Cannot attach an existing OS disk if the VM is created from a platform, user or a shared gallery image. ErrorCode: InvalidParameter ErrorMessage: Cannot attach an existing OS disk if the VM is created from a platform, user or a shared gallery image. ErrorTarget: osDisk StatusCode: 400 ReasonPhrase: Bad Request OperationID : e7cac0e6-2ed8-4a61-a4ef-0bd04590b935 Au caractère Ligne:1 : 1 + New-AzVM -ResourceGroupName $rg_name -Location $location -VM $vm_adfs ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : CloseError : (:) [New-AzVM], ComputeCloudException + FullyQualifiedErrorId : Microsoft.Azure.Commands.Compute.NewAzureVMCommand

我的代码如下

$diskconfig = New-AzDiskConfig -Location $location -DiskSizeGB 127 -AccountType Standard_LRS -OsType Windows -CreateOption Empty
$disk = New-AzDisk -ResourceGroupName $rg_name -DiskName $vm_name -Disk $diskconfig  
$vm = New-AzVMConfig -VMName $vm_name -VMSize "Standard_DS1_V2"
$vm = Set-AzVMOSDisk -VM $vm_adfs -ManagedDiskId $disk_adfs.Id -CreateOption Attach -Windows
$vm = Set-AzVMOperatingSystem -VM $vm -Windows -ComputerName $vm_name -Credential $vm_cred -ProvisionVMAgent -EnableAutoUpdate
$vm = Add-AzVMNetworkInterface -VM $vm -Id $nic.Id
$vm = Set-AzVMSourceImage -VM $vm_adfs -PublisherName 'MicrosoftWindowsServer' -Offer 'WindowsServer' -Skus '2016-Datacenter' -Version latest
New-AzVM -ResourceGroupName $rg_name -Location $location -VM $vm -Verbose

你似乎想要从 VM 映像创建具有 HDD OS 磁盘类型的 VM,但代码尝试附加现有 OS 磁盘。我认为这是导致错误的问题。因此,您的解决方案是更改命令:

$vm = Set-AzVMOSDisk -VM $vm_adfs -ManagedDiskId $disk_adfs.Id -CreateOption Attach -Windows

到:

$vm = Set-AzVMOSDisk -VM $vm_adfs -StorageAccountType Standard_LRS -CreateOption Attach -Windows

或者,如果要将现有 OS 磁盘附加到新 VM,则只需删除以下命令:

$vm = Set-AzVMSourceImage -VM $vm_adfs -PublisherName 'MicrosoftWindowsServer' -Offer 'WindowsServer' -Skus '2016-Datacenter' -Version latest

在将另一个现有 OS 磁盘附加到 VM 映像时,无法从该 VM 映像创建新的 VM。当您同时使用这两种方法时,这两种方法将发生冲突。

最新更新