在 powershell 中,我通过调用上下文来验证它是否存在。
New-AzureStorageContext -StorageAccountName "testdisks401" -StorageAccountKey "...."
结果
StorageAccountName : testdisks401
BlobEndPoint : https://testdisks401.blob.core.windows.net/
TableEndPoint : https://testdisks401.table.core.windows.net/
QueueEndPoint : https://testdisks401.queue.core.windows.net/
FileEndPoint : https://testdisks401.file.core.windows.net/
Context : Microsoft.WindowsAzure.Commands.Common.Storage.AzureStorageContext
Name :
StorageAccount : BlobEndpoint=https://testdisks401.blob.core.windows.net/;QueueEndpoint=https://testdisks401.queue.core.windows.net/;TableEndpoint=https://testdi
sks401.table.core.windows.net/;FileEndpoint=https://testdisks401.file.core.windows.net/;AccountName=testdisks401;AccountKey=[key hidden]
EndPointSuffix : core.windows.net/
当我尝试在这里设置时:
Set-AzureSubscription -SubscriptionName 'XXXX' -CurrentStorageAccount "testdisks401"
我明白了
Set-AzureSubscription : ResourceNotFound: The storage account 'testdisks401' was not found.
At line:1 char:1
+ Set-AzureSubscription -SubscriptionName 'XXX
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : CloseError: (:) [Set-AzureSubscription], CloudException
+ FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.Profile.SetAzureSubscriptionCommand
卡了好久。我基本上想编写 shellscript 来从现有的操作系统磁盘创建一个 VM。我设法使用 powershell 创建了现有光盘的副本(使用第一个命令中的上下文使其工作)。但是现在我正在尝试使用以下方法创建 VM 配置:
$vmI1 = New-AzureVMConfig -Name "TestRecover" -InstanceSize Small -AvailabilitySetName 'RDGW' -DiskName 'MY-OS-Disk-Name'
我收到此错误:
New-AzureVMConfig : Must specify MediaLocation or set a current storage account using Set-AzureSubscription.
At line:1 char:9
+ $vmI1 = New-AzureVMConfig -Name "TestRecover" -InstanceSize Small -Av ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [New-AzureVMConfig], ArgumentException
+ FullyQualifiedErrorId : System.ArgumentException,Microsoft.WindowsAzure.Commands.ServiceManagement.IaaS.NewAzureVMConfigCommand
已经为此提供了 solution 将我带到这里(卡在缺少存储帐户错误上)。
最佳答案
Set-AzureSubscription
Cmdlet 期望通过 -CurrentStorageAccount
参数指定的存储帐户是经典存储帐户。
请确保您指定的是经典存储帐户的名称,而不是资源管理器存储帐户的名称。
关于Powershell 说存储帐户不存在,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39409523/