Ber*_*nox 7 powershell hard-drive virtual-machines azure
我已经在 RM 中创建了一个 Azure VM,并删除了 VM 和组件,除了高级存储帐户 (Blob) 中的 OSDisk。现在我想创建一个新的 VM 并将 OS 磁盘附加到新的 VM。
我尝试将 Set-AzureRmVmOsDisk 用于现有 VM。那行不通。我还尝试创建一个新的 VM 并修改 OSDisk。但有错误:
New-AzureRmVM : Changing property 'osDisk.name' is not allowed.
Run Code Online (Sandbox Code Playgroud)
关于如何创建新 VM 并将旧 VM 中的 OS .vhd 分配为新系统磁盘的任何想法?
编辑:我尝试了以下方法:
$VM = Get-AzureRmVM -Name "VM01" -ResourceGroupName "TestResource1"
Set-AzureRmVMOSDisk -VM $VM -Name "**VM123456**.vhd" -VhdUri "https://vm01disk.blob.core.windows
.net/vhds/**VM123456**.vhd" -CreateOption Attach
Run Code Online (Sandbox Code Playgroud)
输出显示:
"osDisk": {
"osType": null,
"encryptionSettings": null,
"name": "VM123456.vhd",
"vhd": {
"uri": "https://vm01disk.blob.core.windows.net/vhds/**VM123456**.vhd"
},
Run Code Online (Sandbox Code Playgroud)
运行命令后:
Get-AzureRmVM -Name "VM01" -ResourceGroupName "TestResource1"
Run Code Online (Sandbox Code Playgroud)
再次,我可以看到:
"osDisk": {
"osType": "Windows",
"encryptionSettings": null,
"name": "VM01",
"vhd": {
"uri": "https://vm01disk.blob.core.windows.net/vhds/**VMoldID**.vhd"
},
Run Code Online (Sandbox Code Playgroud)
没有错误,命令中的提示表明更改已完成。但是当再次从VM调用infos时,仍然是旧的vhd
要创建一个新的 VM,使用现有磁盘,您应该可以使用以下 PowerShell(这是简化的,我没有添加任何 NICS 等)。
$vm = New-AzureRMVMConfig -VMName $vmName -VMSize $vmSize
$osDiskUri = "https://nameofyourstorageaccount.blob.core.windows.net/vhds/nameofyourvhd.vhd"
$vm = Set-AzureRMVMOSDisk -VM $vm -Name $osDiskName -VhdUri $osDiskUri -CreateOption attach -Windows
New-AzureRMVM -ResourceGroupName $rgName -Location $location -VM $vm
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
15063 次 |
最近记录: |