Краткое руководство. Создание виртуальной машины Linux с помощью Azure CLI
Область применения: ✔️ виртуальные машины Linux
В этом кратком руководстве показано, как с помощью Azure CLI развернуть в Azure виртуальную машину Linux. Azure CLI используется для создания ресурсов Azure и управления ими с помощью командной строки или скриптов.
В этом учебнике мы установим образ Debian последней версии. Чтобы проверить работу виртуальной машины, вы подключитесь к ней по протоколу SSH и установите веб-сервер NGINX.
Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начинать работу.
Запуск Azure Cloud Shell
Azure Cloud Shell — это бесплатная интерактивная оболочка, с помощью которой можно выполнять действия, описанные в этой статье. Она включает предварительно установленные общие инструменты Azure и настроена для использования с вашей учетной записью.
Чтобы открыть Cloud Shell, просто выберите Попробовать в правом верхнем углу блока кода. Кроме того, Cloud Shell можно открыть в отдельной вкладке браузера. Для этого перейдите на страницу https://shell.azure.com/bash. Нажмите кнопку Копировать, чтобы скопировать блоки кода. Вставьте код в Cloud Shell и нажмите клавишу ВВОД, чтобы выполнить его.
Если вы решили установить и использовать CLI локально, для выполнения инструкций из этого руководства вам потребуется Azure CLI 2.0.30 или более поздней версии. Чтобы узнать версию, выполните команду az --version
. Если вам необходимо выполнить установку или обновление, см. статью Установка Azure CLI 2.0.
Определение переменных среды
Переменные среды обычно используются в Linux для централизации данных конфигурации для повышения согласованности и удобства обслуживания системы. Создайте следующие переменные среды, чтобы указать имена ресурсов, которые будут созданы далее в этом руководстве:
export RESOURCE_GROUP_NAME=myResourceGroup
export LOCATION=eastus
export VM_NAME=myVM
export VM_IMAGE=debian
export ADMIN_USERNAME=azureuser
Создание группы ресурсов
Создайте группу ресурсов с помощью команды az group create. Группа ресурсов Azure является логическим контейнером, в котором происходит развертывание ресурсов Azure и управление ими.
az group create --name $RESOURCE_GROUP_NAME --location $LOCATION
Создание виртуальной машины
Создайте виртуальную машину с помощью команды az vm create.
В следующем примере создается виртуальная машина и добавляется учетная запись пользователя. Параметр --generate-ssh-keys
автоматически создает ключ SSH и сохраняет его в стандартное расположение ( ~/.ssh). Чтобы использовать определенный набор ключей, примените параметр --ssh-key-values
.
az vm create \
--resource-group $RESOURCE_GROUP_NAME \
--name $VM_NAME \
--image $VM_IMAGE \
--admin-username $ADMIN_USERNAME \
--generate-ssh-keys \
--public-ip-sku Standard
Создание виртуальной машины и вспомогательных ресурсов занимает несколько минут. В следующем примере выходных данных показано, что виртуальная машина успешно создана.
{
"fqdns": "",
"id": "/subscriptions/<guid>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
"location": "eastus",
"macAddress": "00-0D-3A-23-9A-49",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "40.68.254.142",
"resourceGroup": "myResourceGroup"
}
Запишите publicIpAddress
для последующего использования.
Вы можете получить и сохранить IP-адрес в переменной IP_ADDRESS с помощью следующей команды:
export IP_ADDRESS=$(az vm show --show-details --resource-group $RESOURCE_GROUP_NAME --name $VM_NAME --query publicIps --output tsv)
Установка веб-сервера
Чтобы проверить работу виртуальной машины, установите веб-сервер NGINX. Обновите источники пакетов, а затем установите последнюю версию пакета NGINX. Следующая команда использует run-command для запуска sudo apt-get update && sudo apt-get install -y nginx
на виртуальной машине:
az vm run-command invoke \
--resource-group $RESOURCE_GROUP_NAME \
--name $VM_NAME \
--command-id RunShellScript \
--scripts "sudo apt-get update && sudo apt-get install -y nginx"
Открытие порта 80 для веб-трафика
По умолчанию при создании виртуальной машины Linux в Azure открыты только SSH-подключения. Откройте TCP-порт 80, который понадобится для веб-сервера NGINX, с помощью команды az vm open-port.
az vm open-port --port 80 --resource-group $RESOURCE_GROUP_NAME --name $VM_NAME
Проверка работы веб-сервера
Страницу приветствия NGINX по умолчанию можно просмотреть в любом веб-браузере. Укажите общедоступный IP-адрес виртуальной машины как веб-адрес. В следующем примере показан сайт NGINX по умолчанию:
Кроме того, выполните следующую команду, чтобы увидеть страницу приветствия NGINX в терминале
curl $IP_ADDRESS
В следующем примере показан веб-сайт NGINX по умолчанию в терминале как успешный результат:
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>
<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>
<p><em>Thank you for using nginx.</em></p>
</body>
</html>
Очистка ресурсов
Вы можете удалить ставшие ненужными группу ресурсов, виртуальную машину и все связанные с ней ресурсы, выполнив команду az group delete.
az group delete --name $RESOURCE_GROUP_NAME --no-wait --yes --verbose
Дальнейшие действия
При работе с этим кратким руководством вы развернули простую виртуальную машину, открыли сетевой порт для веб-трафика и установили базовый веб-сервер. Дополнительные сведения о виртуальных машинах Azure см. в руководстве для виртуальных машин Linux.