我正在尝试使用New-AzureRmResource来创建新的存储帐户。但是我遇到了令我困惑的事情。我的命令在这里:
New-AzureRmResource -Location "East US" -ResourceGroupName "myResGrp" -ResourceName "storagename" -ResourceType "microsoft.storage/storageaccounts" -Kind "Storage"
但这会转储错误
New-AzureRmResource:AccountTypeMissing:accountType字段是 请求中缺少。
所以我将其添加(尝试“AccountType”和“accountType”):
New-AzureRmResource -Location "East US" -ResourceGroupName "myResGrp" -ResourceName "storagename" -ResourceType "microsoft.storage/storageaccounts" -Kind "Storage" -AccountType "Standard_RAGRS"
然后我收到错误:
New-AzureRmResource:找不到匹配的参数 参数名称'AccountType'。
我如何传递此信息?我想我在这里很容易丢失一些东西。谢谢。
感谢下面的帮助
$ props = New-Object PSObject
$道具| add-member AccountType“Standard_RAGRS”
$道具| add-member Kind“存储”
New-AzureRmResource -Location“East US”-ResourceGroupName “myResGrp”-ResourceName“storagename”-ResourceType “microsoft.storage/storageaccounts” - 属性$ props -ApiVersion “2015年6月15日”
答案 0 :(得分:4)
您应该将accountType放入参数"属性"的哈希表中。 (如果您使用的是1.5.0,这是" PropertyObject"),您也应该指定API版本。这是一个例子。
$properties = @{"AccountType"="Standard_RAGRS"}
New-AzureRmResource -Location "East US" `
-ResourceGroupName "myResGrp" `
-ResourceName "storagename" `
-ResourceType "Microsoft.Storage/storageAccounts" `
-Properties $properties `
-ApiVersion "2015-06-15"
您需要指定API版本,因为在最新的Azure PowerShell中,默认情况下,他们使用2016-03-30 for Storage Account,它已将AccountType更改为SKU,但命令New-AzureRmResource
不支持SKU呢。
答案 1 :(得分:1)
如果您拥有2.0版的AzureRM.Resources,它应该支持使其工作所需的最新属性。在2016-01-01版本的api之前,SKU被称为accountType,就像你遇到的问题一样。
https://msdn.microsoft.com/en-us/library/azure/mt712701.aspx
检查您正在运行的模块版本:
Get-Module AzureRM.Resources
我建议使用Update-Module更新AzureRM模块(假设已安装WMF5,并且您使用get-module / install-module在第一时间安装了AzureRM.Resources模块)。
如果您无法升级AzureRM.Resources模块;您始终可以使用-Properties @ {“AccountType”=“Standard_RAGRS”}指定缺少的属性。您还可以尝试使用New-AzureRmStorageAccount,它可能具有您正在查找的属性(因为cmdlet位于AzureRM.Storage下,并且可能具有不同的版本/子集)。
希望这会有所帮助!:)