Поиск существующей учетной записи уровня "Бесплатный" Azure Cosmos DB в подписке с помощью Azure CLI

Область применения: Nosql Mongodb Кассандра Гремлин Таблица

В скрипте в этой статье показано, как найти учетную запись Azure Cosmos DB уровня "Бесплатный" в подписке.

В каждой подписке Azure может быть до одной учетной записи Azure Cosmos DB уровня "Бесплатный". Если вы пытаетесь создать учетную запись уровня "Бесплатный", параметр может быть отключен на портале Azure или при попытке создать учетную запись уровня "Бесплатный" возникнет ошибка. При возникновении любой из этих проблем используйте этот скрипт, чтобы найти имя существующей учетной записи уровня "Бесплатный" и группу ресурсов, к которой она принадлежит.

Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.

Необходимые компоненты

  • Используйте среду Bash в Azure Cloud Shell. Дополнительные сведения см . в кратком руководстве по Bash в Azure Cloud Shell.

  • Если вы предпочитаете выполнять справочные команды CLI локально, установите Azure CLI. Если вы работаете в Windows или macOS, Azure CLI можно запустить в контейнере Docker. Дополнительные сведения см. в статье Как запустить Azure CLI в контейнере Docker.

    • Если вы используете локальную установку, выполните вход в Azure CLI с помощью команды az login. Чтобы выполнить аутентификацию, следуйте инструкциям в окне терминала. Сведения о других возможностях, доступных при входе, см. в статье Вход с помощью Azure CLI.

    • Установите расширение Azure CLI при первом использовании, когда появится соответствующий запрос. Дополнительные сведения о расширениях см. в статье Использование расширений с Azure CLI.

    • Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.

  • Для работы с этой статьей требуется Azure CLI версии 2.9.1 или более поздней. Если вы используете Azure Cloud Shell, последняя версия уже установлена.

Пример скрипта

Запуск Azure Cloud Shell

Azure Cloud Shell — это бесплатная интерактивная оболочка, с помощью которой можно выполнять действия, описанные в этой статье. Она включает предварительно установленные общие инструменты Azure и настроена для использования с вашей учетной записью.

Чтобы открыть Cloud Shell, просто выберите Попробовать в правом верхнем углу блока кода. Cloud Shell можно также запустить в отдельной вкладке браузера, перейдя на страницу https://shell.azure.com.

Когда откроется Cloud Shell, убедитесь, что для вашей среды выбран вариант Bash. В последующих сеансах в среде Bash будет использоваться Azure CLI. Нажмите кнопку Копировать, чтобы скопировать блоки кода. Вставьте код в Cloud Shell и нажмите клавишу ВВОД, чтобы выполнить его.

Вход в Azure

Проверка подлинности Cloud Shell автоматически производится с данными той учетной записи, с которой был осуществлен вход. Используйте следующий скрипт, чтобы войти с другой подпиской, указав вместо <Subscription ID> идентификатор нужной подписки Azure. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.

subscription="<subscriptionId>" # add subscription here

az account set -s $subscription # ...or use 'az login'

Дополнительные сведения см. в разделах Настройка активной подписки и Интерактивный вход.

Выполнение скрипта

# Azure Cosmos DB offers one free-tier account per subscription
# This script will find if you have a free-tier account and output 
# the name of the Cosmos DB account and its resource group 


# These can remain commented out if running in Azure Cloud Shell

#az login
#az account set -s {your subscription id}

isFound=0

# Iterate through all the resource groups in the subscription
for rg in $(az group list --query "[].name" --output tsv) 
do

    echo "Checking resource group: $rg"
    
    # Return the Cosmos DB account in the resource group marked as free tier
    ft=$(az cosmosdb list -g $rg --query "[?enableFreeTier].name" --output tsv)
    
    if [ ${#ft} -gt 0 ]; then
        
        echo "$ft is a free tier account in resource group: $rg"
        isFound=1
        break
    
    fi

done

if [ $isFound -eq 0 ]; then
    echo "No Free Tier accounts in subscription"
fi

Примеры

Этот скрипт использует следующие команды. Для каждой команды в таблице приведены ссылки на соответствующую документацию.

Команда Примечания.
az group list. Вывод списка всех групп ресурсов в подписке Azure.
az cosmosdb list Вывод списка всех учетных записей Azure Cosmos DB в группе ресурсов.

Следующие шаги

Дополнительные сведения об Azure Cosmos DB CLI см. в этой документации.

Примеры Azure CLI для конкретных API см. в следующих статьях: