Что такое Azure CLI?

Завершено

Интерфейс azure Command-Line (CLI) — это кроссплатформенное средство командной строки, предназначенное для подключения к Azure и выполнения административных команд в ресурсах Azure. Он предоставляет согласованный, скриптируемый интерфейс для управления облачной инфраструктурой, интерактивной работы в терминале или автоматизации задач с помощью скриптов.

Что такое Azure CLI?

Azure CLI позволяет:

  • Выполнять команды в интерактивном режиме: Введите команды в командной строке терминала и просмотрите немедленные результаты.
  • Автоматизация с помощью сценариев: Объединение команд в Bash, PowerShell или других скриптах оболочки для повторяющихся задач.
  • Управление всеми службами Azure: Создание, настройка, удаление и мониторинг ресурсов Azure с помощью согласованного синтаксиса.
  • Работа в любом месте: Установите в Linux, macOS, Windows, контейнерах Docker или используйте Azure Cloud Shell.

Параметры установки и выполнения

Поддержка платформы:

Platform Параметры оболочки Метод установки
Линукс Bash, PowerShell 7 Диспетчер пакетов (apt, yum) или скрипт
macOS Bash, Zsh, PowerShell 7 Homebrew или установщик
Виндоус cmd.exe, PowerShell, PowerShell 7 Установщик MSI
Docker Bash Предварительно созданный образ контейнера
Azure Cloud Shell Bash, PowerShell Встроенная (установка не требуется)

Рекомендуемые среды:

  • Azure Cloud Shell: Предварительная установка с автоматически настроенной up-to-date Azure CLI и аутентификацией.
  • Bash в Linux или macOS: Естественная оболочка для Azure CLI с отличными возможностями сценариев.
  • PowerShell 7: Кроссплатформенная powerShell обеспечивает согласованный интерфейс в операционных системах.
  • Командная строка Windows (cmd.exe): Базовая оболочка Windows для простого выполнения команд.

Подробные сведения об установке и шаблоны выполнения команд подробно описаны в этом модуле. Прежде чем продолжить, давайте рассмотрим архитектуру и структуру команд Azure CLI.

Ссылочные типы Azure CLI

Команды Azure CLI организованы в две категории: основные ссылки и расширения. Понимание разницы помогает управлять установкой Azure CLI и получать доступ к новейшим функциям.

Основные ссылки

Основные ссылки — это постоянные встроенные команды, которые автоматически устанавливаются с помощью Azure CLI:

  • Всегда доступно: Установка с помощью Azure CLI; дополнительная настройка не требуется.
  • Готово к работе: Стабильные, хорошо проверенные команды для повседневного управления Azure.
  • Автоматическое обновление: При использовании Azure Cloud Shell основные ссылки всегда являются текущими.
  • Комплексное покрытие: Включает команды для большинства служб Azure и распространенных задач.

Примеры основных ссылочных групп:

  • az account — Управление подписками Azure.
  • az group — управление группами ресурсов.
  • az storage — Управление учетными записями хранения Azure.
  • az vm — управление виртуальными машинами.
  • az network — Управление сетевыми ресурсами.

Extensions

Расширения предоставляют необязательные специализированные функциональные возможности, которые выполняются в качестве команд Azure CLI:

  • Установка при выборе: Не включен по умолчанию; установите при необходимости.
  • Доступ к новым функциям: Получите предварительный просмотр и экспериментальные возможности Azure, прежде чем они станут общедоступными (GA - общая доступность).
  • Гибкие обновления: Обновление расширений независимо от основного интерфейса командной строки Azure.
  • Автоматическая строка: Azure CLI предлагает установить расширение при первом использовании.

Распространенные варианты использования расширений:

  • Предварительные версии функций для служб Azure.
  • Специализированные средства для конкретных сценариев (например, Azure IoT, Машинное обучение Azure).
  • Команды, предоставленные поставщиком, для сторонних интеграций.

Пример: При первом запуске команды расширения Azure CLI, система запросит у вас:

$ az aks create --resource-group myResourceGroup --name myAKSCluster
The command requires the extension aks-preview. Do you want to install it now? (Y/n): Y

Состояние справки по Azure CLI

Команды Azure CLI имеют этапы жизненного цикла , указывающие их уровень стабильности и поддержки. Состояние (а не тип) определяет, готова ли команда к работе.

Три категории состояния

Состояние Устойчивость Использование в рабочей среде Уровень поддержки
Общедоступный Постоянный Да Полная поддержка Майкрософт
Общедоступная предварительная версия Может измениться на основе обратной связи Использование с осторожностью Условия предварительной версии Azure
не рекомендуется Будет удален нет Миграция на замену

Сведения о состоянии:

  • GA (Общедоступный):

    • Готовые к рабочей среде стабильные команды.
    • Критические изменения только в обновлениях основных версий.
    • Полная поддержка Майкрософт и покрытие соглашения об уровне обслуживания.
    • Рекомендуется для производственных рабочих нагрузок.
  • Предварительная общедоступная версия:

    • Новые функции, доступные для тестирования и обратной связи.
    • Могут быть критические изменения без предупреждения.
    • Ограниченная поддержка; сообщить о проблемах с помощью GitHub или каналов отзывов.
    • Тестирование в средах разработки перед использованием рабочей среды.
  • Устаревшие:

    • Команда, запланированная для удаления в будущем выпуске.
    • Обычно заменено более новой, лучшей командой.
    • Путь миграции, предоставленный в документации.
    • Избегайте использования в новых сценариях или автоматизации.

Важный: Команды ядра и расширения могут иметь любое состояние. Основная команда может находиться в предварительной версии, а команда расширения может быть общедоступной.

Образец справочника по Azure CLI

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

Структура команд

Шаблон синтаксиса:

az <reference-group> <subgroup> <command> --<parameter> <value>

Разбивка компонентов:

Компонент Description Example
az Базовая команда (всегда требуется) az
Референтная группа Служба Azure или категория account group storage vm
Подгруппа Конкретный тип ресурса (необязательно) blob container disk
Command Действие для выполнения create list delete show
Parameter Параметры, изменяющие поведение --name --resource-group --location
Ценность Данные, предоставленные параметру myStorageAccount, eastus

Практический пример. Изменение подписки Azure

Сценарий: Переключите подписку Azure по умолчанию.

Разбивка команд:

az account set --subscription "my subscription name"
  • Справочная группа:az account (управляет подписками Azure).
  • Команда:set (изменяет активную подписку).
  • Параметр:--subscription (указывает, какая подписка).
  • Значение параметра:"my subscription name" (имя или идентификатор подписки).

Дополнительные примеры команд

Создайте группу ресурсов:

az group create --name myResourceGroup --location eastus
  • Справочная группа:az group
  • Команда: create
  • Параметры:--name (имя группы ресурсов), --location (регион Azure)

Перечисление учетных записей хранения:

az storage account list --resource-group myResourceGroup --output table
  • Справочная группа:az storage
  • Подгруппа:account
  • Команда: list
  • Параметры:--resource-group (фильтр по группе), --output (формат результатов)

Перезапустите виртуальную машину:

az vm restart --name myVM --resource-group myResourceGroup
  • Справочная группа:az vm
  • Команда: restart
  • Параметры:--name (имя виртуальной машины), --resource-group (содержащая группу)

Совет по распознаванию шаблонов: Команды следуют шаблонам естественного языка. Если вы хотите создать учетную запись хранения в группе ресурсов, используйте az storage account create --resource-group.

Выполнение команд Azure CLI

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

Интерактивное выполнение

Интерактивный режим позволяет вводить команды в командной строке терминала и просматривать немедленные результаты. Этот подход идеально подходит для:

  • Обучение команд и синтаксиса Azure CLI.
  • Изучение ресурсов Azure и их свойств.
  • Быстрые однократные задачи (создание тестового ресурса, проверка состояния).
  • Устранение неполадок и отладка.

Принцип работы.

  1. Откройте предпочитаемую оболочку (Bash, PowerShell, cmd.exe, Azure Cloud Shell).
  2. Введите команду Azure CLI в командной строке.
  3. Нажмите клавишу ВВОД, чтобы выполнить.
  4. Немедленно просмотрите результаты.

Пример: Перезапустите виртуальную машину в интерактивном режиме:

az vm restart --resource-group MyResourceGroup --name MyVm

Интерактивный рабочий процесс:

# Check current subscription
$ az account show --output table

# List all resource groups
$ az group list --output table

# Create a storage account
$ az storage account create --name mystorageacct --resource-group myRG --location eastus

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

Режим сценариев объединяет несколько команд Azure CLI в файл скрипта для автоматизации. Этот подход необходим для:

  • Повторяющиеся задачи (создание сред разработки ежедневно).
  • Сложные многофакторные операции (развертывание целых приложений).
  • Конвейеры CI/CD (автоматизированные развертывания).
  • Реализации инфраструктуры как кода (IaC).

Принцип работы.

  1. Запись команд Azure CLI в файл скрипта (.sh для Bash .ps1 для PowerShell).
  2. При необходимости добавьте переменные, циклы и условную логику.
  3. Сделайте исполняемый скрипт (Bash: chmod +x script.sh).
  4. Выполните скрипт с параметрами.

Пример: Скрипт Bash, создающий несколько учетных записей хранения:

#!/bin/bash
# File: myScriptFile.sh

resourceGroup=$1
location="eastus"
accountCount=3

for i in $(seq 1 $accountCount); do
    accountName="storage${i}${RANDOM}"
    echo "Creating storage account: $accountName"
    az storage account create \
        --name $accountName \
        --resource-group $resourceGroup \
        --location $location \
        --sku Standard_LRS
done

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

# Make script executable
chmod +x myScriptFile.sh

# Run script with resource group parameter
./myScriptFile.sh myResourceGroupName

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

# File: myScript.ps1

param (
    [Parameter(Mandatory=$true)]
    [string]$ResourceGroupName
)

$location = "eastus"
$storageCount = 3

for ($i = 1; $i -le $storageCount; $i++) {
    $storageAccount = "storage$i$(Get-Random)"
    Write-Host "Creating storage account: $storageAccount"
    az storage account create `
        --name $storageAccount `
        --resource-group $ResourceGroupName `
        --location $location `
        --sku Standard_LRS
}

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

.\myScript.ps1 -ResourceGroupName "myResourceGroupName"

Выбор правильного режима выполнения

Вариант использования Interactive Скрипты
Обучение Лучший Не рекомендуется
Одноразовые задачи Лучший Не рекомендуется
Troubleshooting Лучший Иногда
Повторяющиеся задачи Не рекомендуется Лучший
Многоэтапные операции Иногда Лучший
Конвейеры CI/CD Не рекомендуется Лучший
Инфраструктура как код Не рекомендуется Лучший

Теперь, когда вы понимаете архитектуру и структуру команд Azure CLI, давайте выберите подходящую среду и установите Azure CLI.