Примеры Azure CLI для Azure DevTest Labs

В этой статье приведены примеры скриптов bash, созданных для Azure CLI для Azure DevTest Labs.

Скрипт Description
Создание и проверка виртуальной машины Создает виртуальную машину Windows с минимальной конфигурацией.
Запуск виртуальной машины Запускает виртуальную машину.
Остановка и удаление виртуальной машины Останавливает и удаляет виртуальную машину.

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

Чтобы выполнить этот пример, установите последнюю версию Azure CLI. Перед началом выполните команду az login, чтобы создать подключение к Azure.

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

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

Все эти скрипты имеют следующие предварительные требования.

  • Лаборатория. Этот сценарий требует наличия лаборатории.

Создание и проверка доступности виртуальной машины

Этот скрипт Azure CLI предназначен для создания виртуальной машины в лаборатории. Виртуальная машина создается на основе образа marketplace с использованием проверки подлинности SSH. Затем с помощью этого скрипта проверяется доступность VM для использования.

resourceGroupName='<Resource group in which lab exists>'
location='<Location in which the lab exists>'
labName="<Name of the lab>"
vmName="<Name for the VM>"
vmImageName="<Name of the image. For example: Ubuntu Server 16.04 LTS>"
vmSize="<Size of the image. For example: Standard_DS1_v2>"

# Create a resource group
az group create \
    --name $resourceGroupName \
    --location $location

# Create a VM from a marketplace image with ssh authentication
az lab vm create 
    --lab-name $labName 
    --resource-group $resourceGroupName
    --name $vmName 
    --image $vmImageName
    --image-type gallery 
    --size $vmSize
    --authentication-type  ssh 
    --generate-ssh-keys 
    --ip-configuration public

# Verify that the VM is available
az lab vm show 
    --lab-name sampleLabName 
    --name sampleVMName 
    --resource-group sampleResourceGroup 
    --expand 'properties($expand=ComputeVm,NetworkInterface)' 
    --query '{status: computeVm.statuses[0].displayStatus, fqdn: fqdn, ipAddress: networkInterface.publicIpAddress}'

Этот сценарий использует следующие команды:

Команда Примечания.
az group create Создает группу ресурсов, в которой хранятся все ресурсы.
az lab vm create Создает виртуальную машину в лаборатории.
az lab vm show Отображение сведений о состоянии VM в лаборатории.

Запуск виртуальной машины

Этот скрипт Azure CLI предназначен для запуска виртуальной машины в лаборатории.

resourceGroupName='<Resource group in which lab exists>'
labName="<Name of the lab>"
vmName="<Name for the VM>"

# Start the VM
az lab vm start 
    --lab-name $labName
    --name $vmName 
    --resource-group $resourceGroupName

Этот сценарий использует следующие команды:

Команда Примечания.
az lab vm start Запускает виртуальную машину в лаборатории. Эта операция может занять некоторое время.

Остановка и удаление виртуальной машины

Этот скрипт Azure CLI останавливает и удаляет виртуальную машину в лаборатории.

Внимание

Удаление виртуальных машин и лабораторий является постоянным и не может быть отменено.

resourceGroupName='<Resource group in which lab exists>'
labName="<Name of the lab>"
vmName="<Name for the VM>"

# Stop the VM
az lab vm stop 
    --lab-name $labName
    --name $vmName 
    --resource-group $resourceGroupName

# Delete the VM
az lab vm delete 
    --lab-name $labName 
    --name $vmName
    --resource-group $resourceGroupName

Этот сценарий использует следующие команды:

Команда Примечания.
az lab vm stop Останавливает виртуальную машину в лаборатории. Эта операция может занять некоторое время.
az lab vm delete Удаляет виртуальную машину в лаборатории. Эта операция может занять некоторое время.

Очистка развертывания

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

Внимание

Удаление группы ресурсов для лаборатории является постоянным и не может быть отменено. Это приведет к удалению всех ресурсов в группе и не может быть восстановлено.

az group delete --name $resourceGroupName