Azure 帐户显示在 Web 界面上,但不显示在命令行界面上

Azure 帐户显示在 Web 界面上,但不显示在命令行界面上

我在 Azure 上获得了一个包含资源组 的新订阅PB。我可以在 Azure 门户上看到它,但它没有在命令行中显示:

$ az account list --output table
Name                                  CloudName    SubscriptionId                        State    IsDefault
------------------------------------  -----------  ------------------------------------  -------  -----------

所以我无法在其上创建虚拟机:

$az_cmd="az vm create
       --resource-group PB
       --name PBVM
       --image microsoft-dsvm:linux-data-science-vm-ubuntu:linuxdsvmubuntu:19.04.00
       --size Standard_F4s_v2
       --admin-username ${USER}"
$result=$($az_cmd)
error retrieving default location: Resource group 'PB' could not be found.

我尝试强制使用该帐户,az account set --subscription "<subscription-name>"az account set --subscription "<subscription-id>"无济于事。

我如何强制 CLI 查看这个新订阅?

答案1

关键是刷新账户列表,因为文档中暗示

az account list [--all] [--refresh] [--subscription]

...

--refresh

Retrieve up-to-date subscriptions from server.

结果是新的订阅可以通过命令行在本地使用:

$ az account list --refresh
[
  {
    "cloudName": "AzureCloud",
    "id": ...
    ...
    }
  },
  ...
]
$ az account list --output table
Name                                  CloudName    SubscriptionId                        State    IsDefault
------------------------------------  -----------  ------------------------------------  -------  -----------
new account                           AzureCloud                                         Enabled  Default

如果这是第二个订阅,您需要使用 将其更改为默认值az account set -s <subscription-name-or-id>,否则您将收到相同的错误Resource group 'PB' could not be found.

相关内容