使用Add-AzureVHD命令行开关在Azure Powershell中上载VHD的问题

时间:2013-05-17 13:51:13

标签: azure powershell azure-storage

我正在尝试什么应该是一个非常基本的任务。我已经创建了一个工作站模板的本地VHD,我想上传它以便在我的Azure环境中使用。我在Azure Powershell工作。

我上传了我的.cer文件来创建管理证书。我已导入.publishsettings文件,我可以使用Set-AzureSubscription和Select-AzureSubscription,没有明显的问题:

Set-AzureSubscription -SubscriptionName "Windows Azure Enterprise" -CurrentStorageAccount ATOQA

Select-AzureSubscription -SubscriptionName "Windows Azure Enterprise"

我遇到的问题是当我尝试使用Add-AzureVHD:

PS C:\Program Files\Microsoft SDKs\Windows Azure\.NET SDK\2012-10\bin> add-azurevhd -destination "https://ATOQA.blob.core.windows.net/vhds/ztemplate-W7.vhd" -localfilepath "C:\VM\W7_Template\ztemplate-w7.vhd"
add-azurevhd : "An exception occurred when calling the ServiceManagement API. HTTP Status Code: 404. Service Management Error Code: ResourceNotFound. Message: The requested storage account 
'atoqa' was not found.. Operation Tracking ID: df91c24901254047b39a7a7d5b037ea0."
At line:1 char:1
+ add-azurevhd -destination "https://ATOQA.blob.core.windows.net/vhds/ztemplate-W7 ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : CloseError: (:) [Add-AzureVhd], ServiceManagementClientException
    + FullyQualifiedErrorId : Microsoft.WindowsAzure.Management.ServiceManagement.StorageServices.AddAzureVhdCommand

我很确定我用来指定-destination的信息是正确的,因为我直接从Azure网站上的容器URL字段中复制了它。

我哪里错了?我一直在使用一些网站作为指南,让您了解我一直在做什么:

http://www.cloudtec.ch/blog/tech/upload-vhd-to-azure.html

http://msdn.microsoft.com/en-us/library/windowsazure/dn205185.aspx

我还试图使用相同的基本步骤使用CSUPLOAD并收到一条消息,指出“找不到存储帐户”,这让我相信我用错误的信息填充参数,但我真的对我的错误究竟是什么感到困惑。

很多,非常感谢提前!

2 个答案:

答案 0 :(得分:7)

简答:

请确保您的存储帐户与Set-AzureSubscription中指定的订阅相同。

长答案:

正在发生的事情(我认为)是,当您调用Set-Subscription时,cmdlet不会检查存储帐户是否在同一订阅中。现在,当您调用Add-AzureVhd并指定目标URL时,cmdlet需要查找存储帐户密钥,并使用Get Storage Account Keys操作来使用订阅ID和管理证书。由于指定订阅中不存在此存储帐户,因此您将收到“资源未找到”错误。

答案 1 :(得分:4)

我遇到了Set-AzureSubscription

的问题

Select-AzureSubscription成功了。