Поделиться через


Выберите правое средство командной строки Azure

Когда речь идет об управлении Azure, у вас есть много вариантов. В этой статье сравниваются azure CLI и язык Azure PowerShell и сравниваются среды оболочки, в которых они выполняются.

Azure CLI, Azure PowerShell и Azure Cloud Shell имеют перекрывающиеся функции. Каждый работает по-разному, и язык иногда путается с средой. Используйте это руководство, чтобы определить, какой инструмент подходит для вас.

Преимущества использования средства командной строки Azure?

Azure работает на основе автоматизации. Каждое действие, выполняеме на портале, преобразуется в код, выполняемый для чтения, создания, изменения или удаления ресурсов.

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

Используя существующую автоматизацию, которая запускает Azure, средства командной строки снижают эти затраты.

Что такое средства командной строки Azure?

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

Использование средства командной строки Azure не всегда требуется, но это полезный навык.

Azure CLI и Azure PowerShell

Azure CLI и Azure PowerShell — это средства командной строки, позволяющие создавать ресурсы Azure и управлять ими. Оба являются кроссплатформенными, устанавливаемыми в Windows, macOS и Linux.

Azure CLI

  • Кроссплатформенный интерфейс командной строки, устанавливаемый в Windows, macOS, Linux
  • Выполняется в Windows PowerShell, Cmd или Bash и других оболочках Unix.

Azure PowerShell

  • Кроссплатформенный модуль PowerShell, работающий в Windows, macOS, Linux
  • Требуется Windows PowerShell или PowerShell

Разные среды оболочки

Среда оболочки Azure CLI (интерфейс командной строки Azure) Azure PowerShell
Командная строка (Cmd) Да
Bash Да
Windows PowerShell Да Да
PowerShell Да Да

Windows PowerShell, PowerShell, Cmd и Bash — это среды оболочки. От командной среды зависит не только то, какие инструменты можно использовать, но и особенности интерфейса командной строки.

Например, для символа продолжения строки Bash использует обратную косую черту \, а Windows PowerShell использует обратный апостроф `. Различия в среде оболочки не изменяют способ работы Azure CLI и Azure PowerShell. Однако они влияют на интерфейс командной строки.

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

Azure PowerShell представляет собой набор командлетов, упакованных в виде модуля PowerShell с именем Az, а не исполняемого файла. Для установки модуля Az необходимо использовать Windows PowerShell или PowerShell.

Windows PowerShell — это стандартная оболочка сценариев, которая предустановлена с большинством операционных систем Windows. PowerShell — это автономная установка, которая использует .NET Core в качестве среды выполнения, позволяя установить её в macOS, Linux и Windows.

Основные моменты:

  • AzureRM — это модуль PowerShell, который все еще используется для администрирования Azure с помощью PowerShell. Однако она была заменена Azure PowerShell и имеет официальную дату выхода на пенсию 29 февраля 2024 года.

Если вы используете AzureRM, вы можете перенести Azure PowerShell из AzureRM в Az.

Что такое Azure Cloud Shell?

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

Cloud Shell предоставляет две среды оболочки: Bash (с предварительно установленным интерфейсом командной строки Azure) и PowerShell (с предварительно установленной средой Azure PowerShell). Раскрывающийся список в верхней части окна Cloud Shell позволяет легко переключаться между двумя средами.

Cloud Shell доступен в веб-браузере и имеет интеграцию с терминалом Windows и Visual Studio Code.

Среды Azure CloudShell Bash и PowerShell

Примечание.

Azure Cloud Shell может не всегда сразу отражать последние выпуски Azure PowerShell и Azure CLI, так как расписание публикации для всех трех инструментов отличается. Однако, как правило, Azure Cloud Shell всегда содержит самые последние версии обоих инструментов.

Какую программу командной строки Azure следует выбрать?

При выборе правильного инструмента рассмотрите прошлый опыт и текущую рабочую среду.

Синтаксис Azure CLI аналогичен синтаксису скриптов Bash. Если вы работаете в первую очередь с системами Linux, Azure CLI чувствует себя более естественным.

Azure PowerShell — это модуль PowerShell. Если вы работаете в основном с системами Windows, Azure PowerShell является естественным подходом. Команды следуют схеме именования глаголов и возвращаются в виде объектов.

Следует выбирать инструмент, который соответствует вашему опыту и не потребует большого переобучения. Воспользуйтесь преимуществами обучения Майкрософт , чтобы стать опытным при управлении Azure в командной строке.

При этом, будучи открытым, вы только улучшите свои способности. Используйте другой инструмент, когда это имеет смысл.

Основные моменты:

  • Паритет функций для служб Azure не всегда достигается между Azure CLI и Azure PowerShell.

Azure CLI и Azure PowerShell: параллельное сравнение команд

Команды входа в систему, подписки и местоположения:

командование Azure CLI (интерфейс командной строки Azure) Azure PowerShell
Вход с помощью веб-браузера az login Connect-AzAccount
Получение доступных подписок az account list Get-AzSubscription
Выбор подписки az account set –-subscription SubscriptionId <> <идентификатор подписки Set-AzContext -Subscription>
Список расположений Azure az account list-locations Get-AzLocation

Поиск версий, получение справки и просмотр помощи по команде:

командование Azure CLI (интерфейс командной строки Azure) Azure PowerShell
Поиск версии az --version Get-InstalledModule -Name Az
Помощь az --help Получить-Помощь
Просмотр помощи по команде az vm --help Get-Help -Name New-AzVM

Создайте группу ресурсов, виртуальную машину и учетную запись хранения:

командование Azure CLI (интерфейс командной строки Azure) Azure PowerShell
Создание группы ресурсов az group create --name <ИмяГруппыРесурсов> --location eastus New-AzResourceGroup -Имя <ResourceGroupName> -Местоположение eastus
Создание виртуальной машины Azure Создание виртуальной машины с помощью команды AZ CLI: az vm create --resource-group myResourceGroup --name myVM --image UbuntuLTS --admin-username azureuser --admin-password '<Password>' <New-AzVM -ResourceGroupName ResourceGroupName> -Name myVM -Image UbuntuLTS -Credential (Get-Credential)
Создание учетной записи хранения Azure az storage account create --name <StorageAccountName> --resource-group <ResourceGroupName> --location eastus --sku Standard_LRS --kind StorageV2 New-AzStorageAccount -Name <StorageAccountName> -ResourceGroupName <ResourceGroupName> -Location eastus -SkuName Standard_LRS -Kind StorageV2

Управление виртуальными машинами Azure:

командование Azure CLI (интерфейс командной строки Azure) Azure PowerShell
Список виртуальных машин az vm list Get-AzVM
Перезапуск виртуальной машины az vm restart --name myVM --resource-group <ResourceGroupName> Restart-AzVM -Name myVM -ResourceGroupName <ResourceGroupName>
Остановка виртуальной машины az vm stop --name myVM --resource-group <ResourceGroupName> Stop-AzVM -Name myVM -ResourceGroupName <ResourceGroupName>
Остановка и освобождение виртуальной машины az vm deallocate --name myVM --resource-group <ResourceGroupName> Stop-AzVM -Name myVM -ResourceGroupName <ResourceGroupName>
Запустить ВМ az vm start --name myVM --resource-group <ResourceGroupName> Start-AzVM -Name myVM -ResourceGroupName <ResourceGroupName>
Удаление виртуальной машины az vm delete --name myVM --resource-group <ResourceGroupName> Remove-AzVM -Name myVM -ResourceGroupName <ResourceGroupName>

Выберите свойства и измените форматы выходных данных:

командование Azure CLI (интерфейс командной строки Azure) Azure PowerShell
Отображение всех сведений о подписке az account list --all Get-AzSubscription | Select-Object -Property *
Выходные данные в виде таблицы az account список -o table Get-AzSubscription | Format-Table
Выходные данные в формате JSON az account show Get-AzSubscription | ConvertTo-Json

Основные моменты:

Дальнейшие действия

Azure CLI:

Azure PowerShell: