我正在尝试什么应该是一个非常基本的任务。我已经创建了一个工作站模板的本地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并收到一条消息,指出“找不到存储帐户”,这让我相信我用错误的信息填充参数,但我真的对我的错误究竟是什么感到困惑。
很多,非常感谢提前!
答案 0 :(得分:7)
简答:
请确保您的存储帐户与Set-AzureSubscription
中指定的订阅相同。
长答案:
正在发生的事情(我认为)是,当您调用Set-Subscription
时,cmdlet不会检查存储帐户是否在同一订阅中。现在,当您调用Add-AzureVhd
并指定目标URL时,cmdlet需要查找存储帐户密钥,并使用Get Storage Account Keys
操作来使用订阅ID和管理证书。由于指定订阅中不存在此存储帐户,因此您将收到“资源未找到”错误。
答案 1 :(得分:4)
我遇到了Set-AzureSubscription
Select-AzureSubscription
成功了。