3

您好我正在尝试使用 Azure RM REST API 创建一个 VM,但它给出了以下错误代码

"error": {
    "code": "ResourcePurchaseValidationFailed",
    "message": "User failed validation to purchase resources. Error message: 'Offer with PublisherId: Microsoft and OfferId: Windows Server 2008 R2 SP1 not found in Azure Data Market. If this offer has been created recently, please allow upto 30 minutes for this offer to be available for Purchase.'"
  }
}

有没有人遇到过这样的问题?

据我了解,它与 Azure 数据市场中的 PublisherId 和 OfferId 有关。请帮助我如何从 Azure 数据市场获取此 PublisherId 和 OfferId 用于我的订阅。

4

1 回答 1

1

如果您在请求中包含计划信息,则可能会发生这种情况。通过添加它,它迫使系统购买不存在的东西。这可以通过使用以下 powershell 命令进行验证:

$pubName = 'MicrosoftWindowsServer'
$offerName = 'WindowsServer'
$skuName = '2016-Datacenter'
$version = '2016.127.20180315'


Get-AzureRMVMImage -Location westeurope -Publisher $pubName -Offer $offerName -Skus $skuName -Version $version

如您所见,输出显示不需要通过 PurchasePlan 属性提供计划信息:

Id               : /Subscriptions/5e747971-92b4-41ac-963a-188c55951695/Providers/Microsoft.Compute/Locations/westeurope/Publishers/MicrosoftWindowsServer/ArtifactTypes/V
                   MImage/Offers/WindowsServer/Skus/2016-Datacenter/Versions/2016.127.20180315
Location         : westeurope
PublisherName    : MicrosoftWindowsServer
Offer            : WindowsServer
Skus             : 2016-Datacenter
Version          : 2016.127.20180315
FilterExpression :
Name             : 2016.127.20180315
OSDiskImage      : {
                     "operatingSystem": "Windows"
                   }
PurchasePlan     : null
DataDiskImages   : []

如果您尝试使该脚本部署可能需要或不需要购买计划的虚拟机,您可以在脚本中使用以下方法:

  1. 获取镜像的最新版本号:

    $AzureImageSku = Get-AzureRmVMImage -Location westeurope -PublisherName "MicrosoftWindowsServer" ` -Offer "WindowsServer" -Skus "2016-Datacenter" $AzureImageSku = $AzureImageSku | Sort-Object Version -Descending #put the latest first $AzureImageSku[0] #Newest2016-Datacenter

  2. 使用 Get-AzureRmImage cmdlet 检查是否需要计划

  3. 只有在需要计划时,才使用此处详述的方法设置计划信息:https ://docs.microsoft.com/en-us/azure/virtual-machines/windows/cli-ps-findimage#deploy-an-image-与市场条款
于 2019-07-10T20:14:24.890 回答