Ошибка создания плана при подготовке Ubuntu DSVM с помощью PowerShell - PullRequest
0 голосов
/ 26 апреля 2018

Я пытаюсь создать Ubuntu DSVM с помощью PowerShell. Я определил, что образ Ubuntu DSVM выпущен издателем microsoft-ads по предложению linux-data-science-vm-ubuntu и SKU linuxdsvmubuntu. Я понял, что при указании конфигурации моей виртуальной машины в PowerShell мне нужно использовать Set-AzureRmVMPlan и Set-AzureRmVMSourceImage, и я попробовал следующее:

$vmConfig = New-AzureRmVMConfig -VMName $vmName -VMSize Standard_D4s_v3
$vmConfig = Set-AzureRmVMPlan -VM $vmConfig -Name "linuxdsvmubuntu" -Product "linux-data-science-vm-ubuntu" -Publisher "microsoft-ads"
$vmConfig = Set-AzureRmVMOperatingSystem -VM $vmConfig -Linux -ComputerName $vmName -Credential $cred
$vmConfig = Set-AzureRmVMSourceImage -VM $vmConfig -PublisherName "microsoft-ads" -Offer "linux-data-science-vm-ubuntu" -Skus "linuxdsvmubuntu" -Version latest
$vmConfig = Add-AzureRmVMNetworkInterface -VM $vmConfig -Id $nic.Id
New-AzureRmVM -ResourceGroupName $rgName -Location $location -VM $vmConfig

К сожалению, я получаю сообщение об ошибке от команды New-AzureRmVM:

New-AzureRmVM : This resource was created without a plan. A new plan cannot be associated with an update.
ErrorCode: CannotSetPlanOnUpdate
ErrorMessage: This resource was created without a plan. A new plan cannot be associated with an update.
StatusCode: 400
ReasonPhrase: Bad Request
OperationID : 648c62cd-4029-408e-8b6c-2ae4310001f6
At line:1 char:1
+ New-AzureRmVM -ResourceGroupName $rgName -Location $location -VM $vmC ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : CloseError: (:) [New-AzureRmVM], ComputeCloudException
    + FullyQualifiedErrorId : Microsoft.Azure.Commands.Compute.NewAzureVMCommand

Похоже, я не правильно использовал Set-AzureRmVMPlan. Всем понятно, что я делаю не так?

1 Ответ

0 голосов
/ 27 апреля 2018

Я обнаружил, что проблема не в самой этой команде, а, по-видимому, в неудачном развертывании из более ранней версии команды.

Когда я впервые попытался использовать Set-AzureRmVMSourceImage, я не знал, что мне нужно было также использовать Set-AzureRmVMPlan. Это привело к неудачному развертыванию, которое, как я предполагал, означало, что развернутая виртуальная машина будет удалена из моей группы ресурсов (или вообще никогда не будет добавлена ​​в мою группу ресурсов).

На самом деле произошло то, что в результате неудачного развертывания в моей группе ресурсов осталась виртуальная машина со статусом «Сбой». Когда я позже выполнил команды, показанные выше, команда New-AzureRmVM была обработана как шаг обновления вместо создания новой виртуальной машины. Вот почему сообщение об ошибке указывает, что «Этот ресурс был создан без плана».

Удаление всего и запуск заново привел к успеху с командами выше.

...