Пакетный пул (Azure) az: ошибка: объект ‘NoneType’ не имеет атрибута ‘startswith’

#azure #azure-powershell

#azure #azure-powershell

Вопрос:

Не удается создать пакетный пул:

 > 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

введите описание изображения здесь

Я только что заметил, что получаю ту же ошибку с другими командами пакетного пула:

 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, но никакой разницы.

Ответ №1:

Что касается вашей проблемы, я могу повторно выдать ту же ошибку, что и вы:

введите описание изображения здесь

Это потому, что вам нужно войти в систему с учетной записью Batch, а не только с Azure CLI.

введите описание изображения здесь

Вы можете посмотреть описание в Управление пакетными ресурсами с помощью Azure CLI, оно показывает это:

Чтобы использовать Azure CLI с Batch, вам необходимо войти в систему и пройти аутентификацию. Необходимо выполнить два простых шага:

  1. Войдите в Azure. Вход в Azure предоставляет вам доступ к командам диспетчера ресурсов Azure, включая команды службы пакетного управления.
  2. Войдите в свою учетную запись Batch. Вход в вашу учетную запись Batch предоставляет вам доступ к командам пакетной службы.

Поэтому я думаю, что возможная причина в том, что вам также необходимо войти в учетную запись Batch.