Что такое 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 и их свойств.
- Быстрые однократные задачи (создание тестового ресурса, проверка состояния).
- Устранение неполадок и отладка.
Принцип работы.
- Откройте предпочитаемую оболочку (Bash, PowerShell, cmd.exe, Azure Cloud Shell).
- Введите команду Azure CLI в командной строке.
- Нажмите клавишу ВВОД, чтобы выполнить.
- Немедленно просмотрите результаты.
Пример: Перезапустите виртуальную машину в интерактивном режиме:
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).
Принцип работы.
- Запись команд Azure CLI в файл скрипта (
.shдля Bash.ps1для PowerShell). - При необходимости добавьте переменные, циклы и условную логику.
- Сделайте исполняемый скрипт (Bash:
chmod +x script.sh). - Выполните скрипт с параметрами.
Пример: Скрипт 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.