Создание ресурса Azure в интерактивном режиме с помощью Azure PowerShell
В интерактивном режиме PowerShell позволяет сразу вводить и выполнять команды.
В примере управления отношениями клиентов (CRM) цель состоит в создании трех тестовых сред, каждая из которых содержит виртуальные машины. Используйте группы ресурсов, чтобы убедиться, что виртуальные машины организованы в отдельных средах:
- Модульное тестирование
- Тестирование интеграции
- Тестирование принятия
Так как вам нужно создать группы ресурсов один раз, использование PowerShell в интерактивном режиме для этой задачи является разумным выбором.
При выполнении команды в PowerShell она соответствует командлету и выполняет запрошенное действие.
Пример создания группы ресурсов с помощью Azure PowerShell
Давайте создадим общую задачу: создадим группу ресурсов. Группы ресурсов помогают совместно управлять связанными ресурсами, а создание новой группы ресурсов часто является одной из первых задач, выполняемых при запуске нового решения Azure.
Ниже приведены три шага, которые необходимо выполнить.
Подключение к подписке Azure.
Создайте группу ресурсов.
Убедитесь, что группа ресурсов успешно создана.
Каждый шаг соответствует другой команде Azure PowerShell.
Подключение к Azure
При использовании локальной установки Azure PowerShell необходимо пройти проверку подлинности перед выполнением любых команд Azure PowerShell. Командлет Connect-AzAccount
запрашивает учетные данные Azure, а затем подключается к подписке Azure.
Для интерактивного подключения вам не нужно указывать параметры:
Connect-AzAccount
Эта команда открывает запрос учетных данных Azure и устанавливает подключение к подписке Azure.
Использование подписок
Если вы не знакомы с Azure, у вас есть только одна подписка. Тем не менее, если вы использовали Azure в течение некоторого времени, у вас может быть несколько подписок. Azure PowerShell позволяет настроить подписку, для которой выполняются команды.
Одновременно вы можете быть активными только в одной подписке. Get-AzContext
Используйте командлет, чтобы определить, какая подписка сейчас активна. Если это не правильно, вы можете переключить подписки с помощью командлета Set-AzContext
.
Получите список всех подписок:
Get-AzSubscription
Проверьте текущую подписку, в которую вы вошли:
Get-AzContext
Измените активную подписку:
Set-AzContext -Subscription '00000000-0000-0000-0000-000000000000'
Если вам нужно найти идентификатор подписки, его можно найти в выходных данных командлета
Get-AzSubscription
.
Создание или изменение группы ресурсов
При создании ресурсов в Azure их следует поместить в группу ресурсов для целей управления.
Чтобы создать группу New-AzResourceGroup
ресурсов, используйте командлет. Необходимо указать имя и расположение, а имя должно быть уникальным в вашей подписке. Расположение определяет, где хранятся метаданные для группы ресурсов, которые могут быть важными по соображениям соответствия требованиям. Get-AzLocation
Используйте командлет для определения доступных расположений.
Примечание.
Если вы работаете в песочнице Azure, она создает группу ресурсов для вас. Если вы предпочитаете работать в собственной подписке, используйте следующую команду.
Синтаксис создания группы ресурсов:
New-AzResourceGroup -Name <resource-group-name> -Location <location>
Список всех групп ресурсов
Чтобы получить список всех групп ресурсов в активной подписке, используйте Get-AzResourceGroup
командлет.
Get-AzResourceGroup
Для более краткого представления можно передать выходные данные командлету Format-Table
:
Get-AzResourceGroup | Format-Table
Вы также можете отфильтровать выходные данные, чтобы отобразить только определенную группу ресурсов:
Get-AzResourceGroup -Name <resource-group-name>
Создайте виртуальную машину Azure
Создание виртуальных машин (виртуальных машин) — это общая задача, с помощью Azure PowerShell.
Командлет New-AzVM
используется для создания виртуальной машины. Этот командлет имеет несколько параметров для обработки обширных параметров конфигурации для виртуальной машины. Большинство параметров имеют разумные значения по умолчанию, поэтому обычно необходимо указать только пять ключевых элементов:
- ResourceGroupName: группа ресурсов, в которой размещается новая виртуальная машина.
- Имя: имя виртуальной машины.
- Расположение: географический регион, в котором подготовлена виртуальная машина.
- Учетные данные: объект, содержащий имя пользователя и пароль для учетной записи администратора виртуальной машины.
Get-Credential
Используйте командлет, чтобы запрашивать имя пользователя и пароль и хранить их в качестве объекта учетных данных. - Образ: образ операционной системы, используемый для виртуальной машины, обычно дистрибутив Linux или Windows Server.
Приведем пример:
$azVmParams = @{
ResourceGroupName = '<resource-group-name>'
Name = '<machine-name>'
Credential = '<credentials-object>'
Location = '<location>'
Image = '<image-name>'
}
New-AzVM @azVmParams
Эти параметры можно указать как хэш-таблицу с различанием для командлета New-AzVM
, как показано в предыдущем примере. Кроме того, можно указать параметры непосредственно командлету New-AzVM
или использовать другие командлеты для настройки виртуальной машины, например Set-AzVMOperatingSystem
, Set-AzVMSourceImage
и Add-AzVMNetworkInterface
.Set-AzVMOSDisk
Например, чтобы предоставить параметры непосредственно командлету New-AzVM
, используйте следующий синтаксис:
New-AzVM -Name <vm-name> -ResourceGroupName <resource-group-name> -Credential (Get-Credential) ...
Пример получения сведений о виртуальной машине
Вы можете получить список виртуальных машин, созданных в подписке, с помощью команды Get-AzVM
. Эта команда также поддерживает получение определенной виртуальной машины, указав параметр Name .
Сохраните результаты Get-AzVM
в переменной:
$vm = Get-AzVM -Name <vm-name> -ResourceGroupName <resource-group-name>
Содержимое переменной $vm
— это объект, с которым можно взаимодействовать. Например, можно внести изменения в этот объект, а затем отправить изменения в Azure с помощью Update-AzVM
команды:
$resourceGroupName = '<resource-group-name>'
$vm = Get-AzVM -Name <vm-name> -ResourceGroupName $resourceGroupName
$vm.HardwareProfile.vmSize = 'Standard_DS3_v2'
Update-AzVM -ResourceGroupName $resourceGroupName -VM $vm
Использование PowerShell в интерактивном режиме подходит для одноуровневых задач. Например, можно создавать группы ресурсов и управлять ими в интерактивном режиме, если они создаются только один раз во время существования проекта. Интерактивный режим часто быстрее и проще, чем писать скрипт для задач, выполняемых только один раз.