微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法使用 New-AzStorageContainer 创建新容器

如何解决无法使用 New-AzStorageContainer 创建新容器

我正在使用以下模式通过使用 powershell 传递变量来创建容器,但是正在创建的上下文似乎存在一些问题,这不允许我创建容器并显示 404(指定的资源没有存在)。

$storage= New-AzStorageAccount -ResourceGroupName $RESOURCE_GROUP_NAME -Location $LOCATION -Name $TF_STATE_STORAGE_ACCOUNT_NAME -SkuName Standard_lrs

$ctx=$storage.Context

New-AzStorageContainer -Name $TF_STATE_CONTAINER_NAME -Context $ctx

enter image description here

注意:(当我多次重试使用相同的命令时,它向我显示相同的错误,大约 10 分钟后,我的容器被创建,所以也许我遗漏了有关正在创建的上下文的内容??)

我已经发布了一个关于不同上下文的问题(也在下面的链接中)被显示为引用命名空间 Microsoft.WindowsAzure.Commands.Common.Storage 的 LazyStorage 构造函数,但是 cmdlet New-AzStorageContainer 接受类型“Microsoft.Azure .Commands.Common.Authentication.Abstractions.IStorageContext”作为接口,它应该获取 AzureStorageContext 类而不是 LazyAzureStorageContext 类。

https://docs.microsoft.com/en-us/powershell/module/az.storage/new-azstoragecontainer?view=azps-5.5.0

问题发布链接

https://docs.microsoft.com/en-us/answers/questions/289096/new-azstoragecontainer-command-not-accepting-valid.html?childToView=290003#comment-290003

注意:我已经尝试在 ps 脚本中的所有命令之间放入等待事件,但没有用。

注意:我已尝试在 azure 门户的控制台的 powershell 中使用 Azure CLI 的命令,并面临类似的问题,并出现以下错误

enter image description here

解决方法

存储帐户是在您请求它们时异步创建的,正如您所指出的,因此问题似乎与等待该帐户有关。也许您可以使用包含帐户和容器的 ARM 模板来部署存储帐户,而不是使用脚本?

另一种选择可能是使用 REST API 创建存储帐户,并在继续处理容器请求之前监视帐户的“provisioningState”直到它“成功”?

https://docs.microsoft.com/en-us/rest/api/storagerp/storage-sample-create-account

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。