无法创建批处理池:
> az login
> az account set --subscription $myid
> az batch account set --resource-group $resourceGroupName --name $batchAccountName
> az batch pool create --json-file pool.json
usage: az batch pool create [-h] [--verbose] [--debug]
[--output {json,jsonc,table,tsv,yaml,none}]
[--query JMESPATH] [--id ID] [--vm-size VM_SIZE]
[--os-family {2,3,4,5}] [--os-version OS_VERSION]
[--node-agent-sku-id NODE_AGENT_SKU_ID]
[--resize-timeout RESIZE_TIMEOUT]
[--target-dedicated-nodes TARGET_DEDICATED_NODES]
[--target-low-priority-nodes TARGET_LOW_PRIORITY_NODES]
[--auto-scale-formula AUTO_SCALE_FORMULA]
[--enable-inter-node-communication]
[--start-task-command-line START_TASK_COMMAND_LINE]
[--start-task-resource-files START_TASK_RESOURCE_FILES [START_TASK_RESOURCE_FILES ...]]
[--start-task-wait-for-success]
[--certificate-references CERTIFICATE_REFERENCES [CERTIFICATE_REFERENCES ...]]
[--application-package-references APPLICATION_PACKAGE_REFERENCES [APPLICATION_PACKAGE_REFERENCES ...]]
[--application-licenses APPLICATION_LICENSES [APPLICATION_LICENSES ...]]
[--max-tasks-per-node MAX_TASKS_PER_NODE]
[--metadata METADATA [METADATA ...]]
[--json-file JSON_FILE]
[--account-name ACCOUNT_NAME]
[--account-key ACCOUNT_KEY]
[--account-endpoint ACCOUNT_ENDPOINT]
[--image IMAGE] [--subscription _SUBSCRIPTION]
az batch pool create: error: 'NoneType' object has no attribute 'startswith'
pool.json的内容: Azure documentation
我刚刚发现我在其他批处理池命令中遇到了相同的错误:
C:\Users\>az batch pool list
usage: az batch pool list [-h] [--verbose] [--debug]
[--output {json,jsonc,table,tsv,yaml,none}]
[--query JMESPATH] [--filter FILTER]
[--select SELECT] [--expand EXPAND]
[--account-name ACCOUNT_NAME]
[--account-key ACCOUNT_KEY]
[--account-endpoint ACCOUNT_ENDPOINT]
[--subscription _SUBSCRIPTION]
az batch pool list: error: 'NoneType' object has no attribute 'startswith'
我再次重新安装了azure cli,但没有任何区别。
答案 0 :(得分:3)
对于您的问题,我可能会再次出现与您相同的错误:
这是因为您需要使用Batch帐户登录,而不仅仅是使用Azure CLI登录。
您可以在Manage Batch resources with Azure CLI中看到说明,该说明如下:
要将Azure CLI与Batch一起使用,您需要登录并进行身份验证。 要遵循两个简单步骤:
- 登录到Azure。登录到Azure可让您访问Azure资源管理器命令,包括批处理管理服务 命令。
- 登录您的批处理帐户。登录您的Batch帐户可以访问Batch服务命令。
所以我认为可能的原因是您还需要登录Batch帐户。