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
これが 2 番目のサブスクリプションである場合は、 を使用してデフォルトに変更する必要がありますaz account set -s <subscription-name-or-id>
。そうしないと、同じエラーが発生しますResource group 'PB' could not be found.
。