Я создал виртуальную машину Azure в RM и удалил виртуальную машину, и компоненты ожидают OSDisk в учетной записи хранилища Premium (Blobs). Теперь я хотел бы создать новую виртуальную машину и подключить диск ОС к новой виртуальной машине.
Я пробовал использовать Set-AzureRmVmOsDisk для существующей виртуальной машины. Это не работает. Я также попытался создать новую виртуальную машину и изменить OSDisk. Но есть Ошибка:
New-AzureRmVM : Changing property 'osDisk.name' is not allowed.
Есть идеи, как создать новую виртуальную машину и назначить 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
Вывод показывает:
"osDisk": {
"osType": null,
"encryptionSettings": null,
"name": "VM123456.vhd",
"vhd": {
"uri": "https://vm01disk.blob.core.windows.net/vhds/**VM123456**.vhd"
},
После выполнения команды:
Get-AzureRmVM -Name "VM01" -ResourceGroupName "TestResource1"
снова я вижу:
"osDisk": {
"osType": "Windows",
"encryptionSettings": null,
"name": "VM01",
"vhd": {
"uri": "https://vm01disk.blob.core.windows.net/vhds/**VMoldID**.vhd"
},
Ошибки не было, и подсказка команды указывает, что изменения были внесены. Но при повторном вызове информации с виртуальной машины все еще остается старый vhd
Чтобы создать новую виртуальную машину, используя существующий диск, вы должны иметь возможность сделать это с помощью следующей оболочки PowerShell (это упрощено, я не добавил никаких сетевых адаптеров и т. Д.).
$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
В случае, если вам нужен выход без оболочки, то для меня сработало следующее.
Я случайно удалил одну из виртуальных машин SQL Server из своей фермы SharePoint 2013 с помощью нового портала Azure. Как обычно, дисковый VHD-файл остался нетронутым в хранилище BLOB-объектов моей учетной записи хранения.
Загрузите CloudXplorer. Запуск> Управление учетной записью> Учетная запись хранилища BLOB-объектов Azure. Введите имя учетной записи хранения и ключ (вы получите его на портале Azure). Вы видите все файлы VHD и т. Д. Найдите тот, который соответствует имени удаленной виртуальной машины. Выберите самый последний, на который вы хотите восстановить. Запишите его полное имя (* .vhd). Затем щелкните правой кнопкой мыши и выберите «Прервать аренду».
Вернитесь на портал Azure. Удалите сетевой адаптер и отключите общедоступный статический IP-адрес. Создайте новую виртуальную машину с той же конфигурацией, что и раньше. Когда он будет готов, он предоставит новый сетевой адаптер и новый диск с ОС. Остановите ВМ и перейдите в раздел Диски в свойствах. Запишите полный URL-адрес используемого файла VHD. Вернитесь в CloudXplorer и нажмите «Обновить». Найдите новый созданный виртуальный жесткий диск и скопируйте его имя. Удали это. Затем переименуйте исходный файл с именем, которое вы скопировали.
Вернитесь на портал Azure. Свяжите общедоступный статический IP-адрес с недавно созданной сетевой картой для новой виртуальной машины. (В моем случае внутренние IP-адреса были сохранены, потому что в этот момент не выделялись другие виртуальные машины.) Затем запустите виртуальную машину. Вот и все.
Не влияет на ферму SharePoint.
Это просто, если вы используете портал Azure (Новый). зайти на диски и сделать образ с него. А затем создайте новую виртуальную машину из этого снимка.