Присоединение локально загруженного виртуального жесткого диска к классической виртуальной машине Azure
У меня есть виртуальный жесткий диск, который я загрузил в Azure с помощью
Set-AzureStorageBlobContent
и попытался с помощью -
Add-AzureVhd
Когда я использую
Add-AzureDataDisk
в консоли виртуальный жесткий диск, кажется, подключен к LUN 0 на виртуальной машине, когда я использую
Get-AzureVM Я использовал соответствующий URI для аргумента MediaLocation, но когда я проверяю классический портал (веб-интерфейс) или захожу в саму виртуальную машину, виртуальный жесткий диск все еще не подключен.
Если я делаю процесс вручную, VHD присоединяет все отлично и денди. Под ВМ-> Экземпляры-> Диски
Я могу видеть VHD, который был загружен туда, если я делаю процесс вручную, но используя командлеты, я не могу заставить VHD появляться в "существующих дисках" через экземпляры виртуальных машин.
Теперь я все трижды проверил, моя учетная запись хранения находится в том же регионе, что и мой экземпляр виртуальной машины. Мой локально загруженный виртуальный жесткий диск исправлен и правильно помечен в двоичных объектах как "someVHD.vhd". Когда я пытаюсь использовать Add-AzureDataDisk, в консоли возвращается, что диск подключен, странное поведение заключается в том, что если я пометил существующий диск во время аргументы подключения командлета, диск по-прежнему не присоединяется с использованием командлетов.
Это мой точный сценарий -
$createVHD = New-VHD -Path $($vhdInstallFullPath) -Fixed -SizeBytes 256MB -ComputerName $hostName
Copy files to VHD and prepare them for upload to azure utilizing either Set-AzureStorageBlobContent or Add-AzureVHD, in this case I utilized Set-AzureStorageBlobContent, because the VHD is really small.
$migrateVHD = Set-AzureStorageBlobContent -File $vhdInstallFullPath -Blob $VHDInstallName -Container $StorageContainerName -Context $($newAzureContext.Context) -BlobType Page -Confirm:$False
$addAzureDataDisk = Add-AzureDataDisk -VM $azureVMInfo -ImportFrom -MediaLocation $azureInstallBlobURI -DiskLabel "InstallPackage" -LUN $azureDataDiskLUN
Теперь у меня много переменных, и я делаю много других вещей, чтобы получить контекст хранилища, объект виртуальной машины Azure и копировать файлы на VHD до того, как я выложу их, но этот блок скрипта должен дать всем мою суть.
Может ли быть проблема между использованием блобов страниц и блобов для виртуальных жестких дисков? Из документации я понял, что виртуальный жесткий диск с несколькими файлами хотел бы быть блоб-страницей.
1 ответ
Может быть, вы могли бы попробовать использовать следующий командлет.
Get-AzureVM "stlcs01" -Name "shuitest1" | Add-AzureDataDisk -ImportFrom -MediaLocation "https://t5portalvhdsx2463gvmvrz7.blob.core.windows.net/vhds/shui-shui-2017-02-02.vhd" -DiskLabel "InstallPackage" -LUN 1
Я нашел хорошую статью о вашей проблеме, может быть, вы можете проверить эту статью: Добавить, Импортировать диск данных на виртуальную машину Azure с помощью Powershell.
Я тестирую в своей лаборатории.
Add-AzureVhd -Destination “https://t5portalvhdsx2463gvmvrz7.blob.core.windows.net/vhds/shui.vhd” -LocalFilePath “D:\shui.vhd” -NumberOfUploaderThreads 32
Get-AzureVM -name shuitest -ServiceName shuitest | Add-AzureDataDisk -ImportFrom -MediaLocation “https://t5portalvhdsx2463gvmvrz7.blob.core.windows.net/vhds/shui.vhd” -DiskLabel “test” -LUN 1
Get-AzureVM -ServiceName shuitest -Name shuitest|Get-AzureDataDisk